@@ -113,13 +113,19 @@ protected void taskOperation(CancelTasksRequest request, CancellableTask cancell
113
113
}
114
114
115
115
void cancelTaskAndDescendants (CancellableTask task , String reason , boolean waitForCompletion , ActionListener <Void > listener ) {
116
+ final TaskId taskId = task .taskInfo (clusterService .localNode ().getId (), false ).getTaskId ();
116
117
if (task .shouldCancelChildrenOnCancellation ()) {
118
+ logger .trace ("cancelling task [{}] and its descendants" , taskId );
117
119
StepListener <Void > completedListener = new StepListener <>();
118
120
GroupedActionListener <Void > groupedListener = new GroupedActionListener <>(ActionListener .map (completedListener , r -> null ), 3 );
119
- Collection <DiscoveryNode > childrenNodes =
120
- taskManager .startBanOnChildrenNodes (task .getId (), () -> groupedListener .onResponse (null ));
121
- taskManager .cancel (task , reason , () -> groupedListener .onResponse (null ));
122
-
121
+ Collection <DiscoveryNode > childrenNodes = taskManager .startBanOnChildrenNodes (task .getId (), () -> {
122
+ logger .trace ("child tasks of parent [{}] are completed" , taskId );
123
+ groupedListener .onResponse (null );
124
+ });
125
+ taskManager .cancel (task , reason , () -> {
126
+ logger .trace ("task [{}] is cancelled" , taskId );
127
+ groupedListener .onResponse (null );
128
+ });
123
129
StepListener <Void > banOnNodesListener = new StepListener <>();
124
130
setBanOnNodes (reason , waitForCompletion , task , childrenNodes , banOnNodesListener );
125
131
banOnNodesListener .whenComplete (groupedListener ::onResponse , groupedListener ::onFailure );
@@ -137,7 +143,7 @@ void cancelTaskAndDescendants(CancellableTask task, String reason, boolean waitF
137
143
banOnNodesListener .whenComplete (r -> listener .onResponse (null ), listener ::onFailure );
138
144
}
139
145
} else {
140
- logger .trace ("task {} doesn't have any children that should be cancelled" , task . getId () );
146
+ logger .trace ("task [{}] doesn't have any children that should be cancelled" , taskId );
141
147
if (waitForCompletion ) {
142
148
taskManager .cancel (task , reason , () -> listener .onResponse (null ));
143
149
} else {
@@ -153,23 +159,24 @@ private void setBanOnNodes(String reason, boolean waitForCompletion, Cancellable
153
159
listener .onResponse (null );
154
160
return ;
155
161
}
156
- logger .trace ("cancelling task {} on child nodes {}" , task .getId (), childNodes );
162
+ final TaskId taskId = new TaskId (clusterService .localNode ().getId (), task .getId ());
163
+ logger .trace ("cancelling child tasks of [{}] on child nodes {}" , taskId , childNodes );
157
164
GroupedActionListener <Void > groupedListener =
158
165
new GroupedActionListener <>(ActionListener .map (listener , r -> null ), childNodes .size ());
159
- final BanParentTaskRequest banRequest = BanParentTaskRequest .createSetBanParentTaskRequest (
160
- new TaskId (clusterService .localNode ().getId (), task .getId ()), reason , waitForCompletion );
166
+ final BanParentTaskRequest banRequest = BanParentTaskRequest .createSetBanParentTaskRequest (taskId , reason , waitForCompletion );
161
167
for (DiscoveryNode node : childNodes ) {
162
168
transportService .sendRequest (node , BAN_PARENT_ACTION_NAME , banRequest ,
163
169
new EmptyTransportResponseHandler (ThreadPool .Names .SAME ) {
164
170
@ Override
165
171
public void handleResponse (TransportResponse .Empty response ) {
172
+ logger .trace ("sent ban for tasks with the parent [{}] to the node [{}]" , taskId , node );
166
173
groupedListener .onResponse (null );
167
174
}
168
175
169
176
@ Override
170
177
public void handleException (TransportException exp ) {
171
178
assert ExceptionsHelper .unwrapCause (exp ) instanceof ElasticsearchSecurityException == false ;
172
- logger .warn ("Cannot send ban for tasks with the parent [{}] to the node [{}]" , banRequest . parentTaskId , node );
179
+ logger .warn ("Cannot send ban for tasks with the parent [{}] to the node [{}]" , taskId , node );
173
180
groupedListener .onFailure (exp );
174
181
}
175
182
});
0 commit comments