Commit fc0f139
authored
By default, ES|QL uses all workers in the esql_worker threadpool to
execute drivers on data nodes. If a node is both data and coordinator,
and all drivers are blocked by the allowEmitting latch, there are no
workers left to execute the final driver or fetch pages from remote
clusters. This can prevent remote clusters from being marked as
successful on the coordinator, even if they have completed. To avoid
this, we reserve at least one worker for the final driver and page
fetching. A single worker is enough, as these two tasks can be paused
and yielded.
Closes #121672
1 parent 82aaa70 commit fc0f139
File tree
3 files changed
+16
-8
lines changed- x-pack/plugin/esql/src
- internalClusterTest/java/org/elasticsearch/xpack/esql/action
- main/java/org/elasticsearch/xpack/esql/plugin
3 files changed
+16
-8
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
374 | 374 | | |
375 | 375 | | |
376 | 376 | | |
377 | | - | |
378 | | - | |
379 | | - | |
380 | 377 | | |
381 | 378 | | |
382 | 379 | | |
| |||
Lines changed: 15 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| 16 | + | |
16 | 17 | | |
| 18 | + | |
| 19 | + | |
17 | 20 | | |
18 | 21 | | |
19 | 22 | | |
| |||
132 | 135 | | |
133 | 136 | | |
134 | 137 | | |
135 | | - | |
136 | | - | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
137 | 148 | | |
138 | 149 | | |
139 | | - | |
| 150 | + | |
| 151 | + | |
140 | 152 | | |
141 | | - | |
142 | 153 | | |
143 | 154 | | |
144 | 155 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
37 | | - | |
| 37 | + | |
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
| |||
0 commit comments