操作
バグ #430
完了特定のアカウントのアイコンが別のアカウントのアイコンになってることがある
プラグイン名:
ブランチ:
クラッシュする:
説明
別人のアイコンになってることが極希にある。
- ファイルキャッシュはされてなかった
- Userオブジェクトのprofile_image_urlは正しい
- Pixbufキャッシュは別のアイコン
- Rawキャッシュも別のアイコン
また、mikutterを再起動したら治ったが、このまま動かしていたら間違ったアイコンのままファイルキャッシュされる可能性があった。
toshi_a 初音 さんが12年以上前に更新
- ステータス を 新規 から 実装待ち に変更
- 担当者 を toshi_a 初音 にセット
今のところ、置き換わる元のアイコンも先のアイコンも同じホストにあるアイコン。ホストを基準に排他処理をしている部分が怪しいかもしれない。
Deferred化もしないとけないので、引き続き調査をする
toshi_a 初音 さんが12年以上前に更新
フォローしてる人(A)がキャッシュに乗ってない状態で別のキャッシュに乗ってない人(B)をリツイートしたらAのアイコンがBになった。
どちらもサーバはa0だったので、サーバ毎の排他処理とリツイートの描画処理あたりを見る
toshi_a 初音 さんが12年以上前に更新
- ステータス を 実装待ち から 様子見 に変更
0.1ブランチで修正。
リクエストを送るサーバごとにSerialThreadGroupを作り、それを通してリクエストを送るようにして、1つのサーバにつき同時に1リクエストしか送らないように制限していたが、カレントスレッドを使ってロードする方法も提供していたので、単一のサーバに複数のリクエストが同時に発生して、結果同じHTTPオブジェクトで同時に別のリクエストを処理していた。
この時運が悪いと、2つのリクエストのレスポンスがすり替わるようで、今回のようなアイコンのスワップが発生していた模様。
土日まで再現しなかったら治ったということにする。
操作