You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Allow exchange source continue on failure (#117410)
Currently, when an exchange request fails, we stop fetching pages and
abort the ExchangeSource. However, to support partial_results, we need
to continue fetching pages from other remote sinks despite failures.
This change introduces a failFast flag in ExchangeSource, which enables
the process to continue in case of failures. By default, this flag is
set to true but switches to false when allow_partial_results is enabled.
Copy file name to clipboardExpand all lines: x-pack/plugin/esql/compute/src/main/java/org/elasticsearch/compute/operator/exchange/ExchangeSinkHandler.java
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -93,7 +93,7 @@ public IsBlockedResult waitForWriting() {
93
93
* @param sourceFinished if true, then this handler can finish as sources have enough pages.
94
94
* @param listener the listener that will be notified when pages are ready or this handler is finished
Copy file name to clipboardExpand all lines: x-pack/plugin/esql/compute/src/main/java/org/elasticsearch/compute/operator/exchange/ExchangeSourceHandler.java
+67-27Lines changed: 67 additions & 27 deletions
Original file line number
Diff line number
Diff line change
@@ -24,24 +24,54 @@
24
24
/**
25
25
* An {@link ExchangeSourceHandler} asynchronously fetches pages and status from multiple {@link RemoteSink}s
26
26
* and feeds them to its {@link ExchangeSource}, which are created using the {@link #createExchangeSource()}) method.
27
-
* {@link RemoteSink}s are added using the {@link #addRemoteSink(RemoteSink, int)}) method.
27
+
* {@link RemoteSink}s are added using the {@link #addRemoteSink(RemoteSink, boolean, int, ActionListener)}) method.
0 commit comments