-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
アンテナTLの投稿が200件もあるように見えない #11404
Comments
一番最後に見えるのがリモートの古い投稿である場合が多いため、ストリームで流れてきた古いidの投稿をうまく比較できていない可能性がある? |
解決策がわからない XADD-XREVRANGEをやめる必要すらあるかもしれない |
200件しかないなら都度全部読み出してJavaScript側で並び替え・切り出ししてもいいかも |
投稿IDとは別にアンテナページング用IDを返すとか |
これっぽい |
うーーーーーーーーーーーーーむ |
これかなあ |
IDしか入ってないからメモリ的には全然大丈夫 |
ただstreamsを使うメリットが減る |
list使えないか検討する |
あー
したとしても、
|
tasukete |
古い投稿 X が来たときに、Redisにキャッシュされている最古のIDより新しい場合だけpushするようにすれば解決するけど、いちいち確認するのはパフォーマンス上のデメリットがある |
IDが1分以内に生成されたものでない場合はRedisに追加しないとかかなぁ |
少なくとも今よりはるかにマシ |
いや問題があるな |
いやないかも |
Redis streamsが途中にエントリ挿入できるようになってくれれば全てが解決するんだけど |
と
を組み合わせて、 IDが1分以内に生成されたものは特にチェックせずRedisに突っ込み、そうでないならRedisの最古のIDを調べてそれより新しかった場合だけ突っ込む ようにすればほぼ完璧かも |
来たものの99%は1分以内に投稿されたものだろうから最古IDをチェックしなければならないケースはほとんどないと思われるためパフォーマンスへの影響はほぼなくなる |
とりあえず
だけ実装 |
とりあえず #11984 のように遡りが止まるのは直った |
アンテナ、なんかlimit 30で31件かえってくることがあって、その31件目はめちゃくちゃ古いPostで、そうするとuntillIdがめっちゃ古いノートを指すからなにもとってこれてないかも |
beta15 on みすてむずで修正確認。もう大丈夫っぽい!(ユーザーTL確認、アンテナは追加修正が来たようなので後ほど検証が必要かも) |
sorted set使う(idをスコアとして扱う)手もありそう |
アンテナTLが保持するノートは200件までとハードコーディングされているが、実際に保持されているのは数十件のように見える
misskey/packages/backend/src/core/AntennaService.ts
Line 102 in 8b74d15
p1.a9z.dev, m.tkngh.jpなどで確認
The text was updated successfully, but these errors were encountered: