Repository navigation
Process indexing tasks from new RPC - #6896
nadav-govari wants to merge 1 commit into
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
https://github.com/quickwit-oss/quickwit/blob/c7975fb486537e008a86749ede701a4582fe4d3f/quickwit-control-plane/src/indexing_scheduler/mod.rs#L373-L375
Gate RPC task reads on all live indexers
During a mixed-version drain, indexers contains only the scheduling-selected subset: when an upgraded Ready node coexists with a legacy Retiring node, select_ready_or_retiring_indexers excludes the latter, so this condition switches to RPC data. However, IndexerStateReporter::wait_for_all_indexers_to_enable_shard_scaling_v2 checks all live indexers and therefore has not started reporting; the upgraded node is still publishing only through gossip. Its missing RPC entry is consequently interpreted as an empty task list, causing the control loop to repeatedly reapply the plan until the legacy node leaves. Base the migration gate on the complete live/indexer pool rather than this filtered scheduling set.
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Description
Adds support for the new RPC that reports indexing tasks in the control plane.
Indexers will continue gossiping indexing tasks until all indexers are migrated. Once they are, the reported tasks from the RPC will be used.
How was this PR tested?
Unit tests.