File tree Expand file tree Collapse file tree 3 files changed +17
-6
lines changed 
x-pack/plugin/esql/src/main/java/org/elasticsearch/xpack/esql/plugin Expand file tree Collapse file tree 3 files changed +17
-6
lines changed Original file line number Diff line number Diff line change @@ -109,7 +109,12 @@ void startComputeOnRemoteCluster(
109109                    groupTask  = rootTask ;
110110                    onGroupFailure  = cancelQueryOnFailure ;
111111                } else  {
112-                     groupTask  = computeService .createGroupTask (rootTask , () -> "compute group: cluster ["  + clusterAlias  + "]" );
112+                     try  {
113+                         groupTask  = computeService .createGroupTask (rootTask , () -> "compute group: cluster ["  + clusterAlias  + "]" );
114+                     } catch  (TaskCancelledException  e ) {
115+                         l .onFailure (e );
116+                         return ;
117+                     }
113118                    onGroupFailure  = computeService .cancelQueryOnFailure (groupTask );
114119                    l  = ActionListener .runAfter (l , () -> transportService .getTaskManager ().unregister (groupTask ));
115120                }
Original file line number Diff line number Diff line change 3333import  org .elasticsearch .search .lookup .SourceProvider ;
3434import  org .elasticsearch .tasks .CancellableTask ;
3535import  org .elasticsearch .tasks .Task ;
36+ import  org .elasticsearch .tasks .TaskCancelledException ;
3637import  org .elasticsearch .tasks .TaskId ;
3738import  org .elasticsearch .tasks .TaskManager ;
3839import  org .elasticsearch .threadpool .ThreadPool ;
@@ -429,7 +430,7 @@ Runnable cancelQueryOnFailure(CancellableTask task) {
429430        });
430431    }
431432
432-     CancellableTask  createGroupTask (Task  parentTask , Supplier <String > description ) {
433+     CancellableTask  createGroupTask (Task  parentTask , Supplier <String > description ) throws   TaskCancelledException   {
433434        final  TaskManager  taskManager  = transportService .getTaskManager ();
434435        return  (CancellableTask ) taskManager .register (
435436            "transport" ,
Original file line number Diff line number Diff line change @@ -130,10 +130,15 @@ protected void sendRequest(
130130                        final  Runnable  onGroupFailure ;
131131                        final  CancellableTask  groupTask ;
132132                        if  (allowPartialResults ) {
133-                             groupTask  = computeService .createGroupTask (
134-                                 parentTask ,
135-                                 () -> "compute group: data-node ["  + node .getName () + "], "  + shardIds  + " ["  + shardIds  + "]" 
136-                             );
133+                             try  {
134+                                 groupTask  = computeService .createGroupTask (
135+                                     parentTask ,
136+                                     () -> "compute group: data-node ["  + node .getName () + "], "  + shardIds  + " ["  + shardIds  + "]" 
137+                                 );
138+                             } catch  (TaskCancelledException  e ) {
139+                                 l .onFailure (e );
140+                                 return ;
141+                             }
137142                            onGroupFailure  = computeService .cancelQueryOnFailure (groupTask );
138143                            l  = ActionListener .runAfter (l , () -> transportService .getTaskManager ().unregister (groupTask ));
139144                        } else  {
    
 
   
 
     
   
   
          
     
  
    
     
 
    
      
     
 
     
    You can’t perform that action at this time.
  
 
    
  
     
    
      
        
     
 
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments