mirror of
https://seed.radicle.dev/rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5.git
synced 2026-11-14 02:50:51 +08:00
A rescan can take tens of minutes on permissive seeds and blocked the event loop meanwhile. radicle-node drops a subscriber once 8192 events are queued, so every rescan disconnected us and the events emitted until the resubscribe were lost. Rescans and batch reindexes now run alongside the event loop, and the subscription reconnects on its own task. A repo that an event adds during a rescan only gets back into the seeded cache when its batch runs, so it can be missing for up to RADICLE_SEARCH_BATCH_SECS. Co-authored-by: Daniel Norman <daniel@norman.life>