Pull Request Overview
- Opened on September 18, 2026
- Status Open
- Commit count 6 with first commit September 18, 2026
Total Delta
633 Total Diff Delta
Open Days
Open 0 weekdays
Test Delta
208 Diff Delta in Test Files
Breakdown by Phase
How long has this pull request spent in each phase of its lifecycle?
| Fraction of total time | Business days | Phase |
|---|---|---|
|
|
0.4 days | Authoring 2 commits before pull request opened for review |
|
|
0.0 days | Awaiting first review |
|
|
0.6 days | Revising work with 4 commits in response to 0 reviews that left 3 comments |
Total time for pull request still awaiting merge: 1.0 business day
ES|QL|DS: Reassign splits when a data node is unreachable at dispatch
ES|QL|DS: Reassign splits when a data node is unreachable at dispatch
Problem
A query over an external dataset can succeed with is_partial: false and no warning when a worker assigned splits is already gone at dispatch (connection closed, or the node left cluster state between planning and send). The coordinator merges the surviving pages and reports a complete answer that omitted that worker's files.
Fix
- Resolve every assigned worker before sending work.
- Move unreachable workers' splits onto live workers (round-robin).
- Fail only when no worker resolves.
- If a skip remains and partial results are allowed, mark the answer partial and warn with the node and split count.
Tests
-
DataNodeComputeHandlerExternalDispatchTestscovers missing node, connection failure, two-survivor round-robin, all-unreachable, and all-reachable. -
ExternalDistributedNodeUnavailableITasserts a complete, non-partialCOUNT/SUMwhen one data node's connection throws at dispatch, with and withoutallow_partial_results.
Comments Threads Pending Resolution
Resolved Comment Threads
No resolved comments have been left on this PR.