1818 */
1919package org .elasticsearch .action .admin .cluster .node .tasks ;
2020
21+ import org .elasticsearch .action .Action ;
2122import org .elasticsearch .action .ActionFuture ;
2223import org .elasticsearch .action .ActionListener ;
2324import org .elasticsearch .action .FailedNodeException ;
2930import org .elasticsearch .action .admin .cluster .node .tasks .list .ListTasksResponse ;
3031import org .elasticsearch .action .admin .cluster .node .tasks .list .TaskGroup ;
3132import org .elasticsearch .action .support .ActionFilters ;
33+ import org .elasticsearch .action .support .ActionTestUtils ;
3234import org .elasticsearch .action .support .PlainActionFuture ;
3335import org .elasticsearch .action .support .nodes .BaseNodeRequest ;
3436import org .elasticsearch .action .support .nodes .BaseNodesRequest ;
@@ -363,7 +365,7 @@ public void onFailure(Exception e) {
363365 ListTasksRequest listTasksRequest = new ListTasksRequest ();
364366 listTasksRequest .setActions ("testAction*" ); // pick all test actions
365367 logger .info ("Listing currently running tasks using node [{}]" , testNodeNum );
366- ListTasksResponse response = testNode .transportListTasksAction . execute ( listTasksRequest ). get ( );
368+ ListTasksResponse response = ActionTestUtils . executeBlocking ( testNode .transportListTasksAction , listTasksRequest );
367369 logger .info ("Checking currently running tasks" );
368370 assertEquals (testNodes .length , response .getPerNodeTasks ().size ());
369371
@@ -382,7 +384,7 @@ public void onFailure(Exception e) {
382384 testNode = testNodes [randomIntBetween (0 , testNodes .length - 1 )];
383385 listTasksRequest = new ListTasksRequest ();
384386 listTasksRequest .setActions ("testAction[n]" ); // only pick node actions
385- response = testNode .transportListTasksAction . execute ( listTasksRequest ). get ( );
387+ response = ActionTestUtils . executeBlocking ( testNode .transportListTasksAction , listTasksRequest );
386388 assertEquals (testNodes .length , response .getPerNodeTasks ().size ());
387389 for (Map .Entry <String , List <TaskInfo >> entry : response .getPerNodeTasks ().entrySet ()) {
388390 assertEquals (1 , entry .getValue ().size ());
@@ -396,7 +398,7 @@ public void onFailure(Exception e) {
396398
397399 // Check task counts using transport with detailed description
398400 listTasksRequest .setDetailed (true ); // same request only with detailed description
399- response = testNode .transportListTasksAction . execute ( listTasksRequest ). get ( );
401+ response = ActionTestUtils . executeBlocking ( testNode .transportListTasksAction , listTasksRequest );
400402 assertEquals (testNodes .length , response .getPerNodeTasks ().size ());
401403 for (Map .Entry <String , List <TaskInfo >> entry : response .getPerNodeTasks ().entrySet ()) {
402404 assertEquals (1 , entry .getValue ().size ());
@@ -405,7 +407,7 @@ public void onFailure(Exception e) {
405407
406408 // Make sure that the main task on coordinating node is the task that was returned to us by execute()
407409 listTasksRequest .setActions ("testAction" ); // only pick the main task
408- response = testNode .transportListTasksAction . execute ( listTasksRequest ). get ( );
410+ response = ActionTestUtils . executeBlocking ( testNode .transportListTasksAction , listTasksRequest );
409411 assertEquals (1 , response .getTasks ().size ());
410412 assertEquals (mainTask .getId (), response .getTasks ().get (0 ).getId ());
411413
@@ -433,15 +435,15 @@ public void testFindChildTasks() throws Exception {
433435 // Get the parent task
434436 ListTasksRequest listTasksRequest = new ListTasksRequest ();
435437 listTasksRequest .setActions ("testAction" );
436- ListTasksResponse response = testNode .transportListTasksAction . execute ( listTasksRequest ). get ( );
438+ ListTasksResponse response = ActionTestUtils . executeBlocking ( testNode .transportListTasksAction , listTasksRequest );
437439 assertEquals (1 , response .getTasks ().size ());
438440 String parentNode = response .getTasks ().get (0 ).getTaskId ().getNodeId ();
439441 long parentTaskId = response .getTasks ().get (0 ).getId ();
440442
441443 // Find tasks with common parent
442444 listTasksRequest = new ListTasksRequest ();
443445 listTasksRequest .setParentTaskId (new TaskId (parentNode , parentTaskId ));
444- response = testNode .transportListTasksAction . execute ( listTasksRequest ). get ( );
446+ response = ActionTestUtils . executeBlocking ( testNode .transportListTasksAction , listTasksRequest );
445447 assertEquals (testNodes .length , response .getTasks ().size ());
446448 for (TaskInfo task : response .getTasks ()) {
447449 assertEquals ("testAction[n]" , task .getAction ());
@@ -467,7 +469,7 @@ public void testTaskManagementOptOut() throws Exception {
467469 // Get the parent task
468470 ListTasksRequest listTasksRequest = new ListTasksRequest ();
469471 listTasksRequest .setActions ("testAction*" );
470- ListTasksResponse response = testNode .transportListTasksAction . execute ( listTasksRequest ). get ( );
472+ ListTasksResponse response = ActionTestUtils . executeBlocking ( testNode .transportListTasksAction , listTasksRequest );
471473 assertEquals (0 , response .getTasks ().size ());
472474
473475 // Release all tasks and wait for response
@@ -488,7 +490,7 @@ public void testTasksDescriptions() throws Exception {
488490 TestNode testNode = testNodes [randomIntBetween (0 , testNodes .length - 1 )];
489491 ListTasksRequest listTasksRequest = new ListTasksRequest ();
490492 listTasksRequest .setActions ("testAction[n]" ); // only pick node actions
491- ListTasksResponse response = testNode .transportListTasksAction . execute ( listTasksRequest ). get ( );
493+ ListTasksResponse response = ActionTestUtils . executeBlocking ( testNode .transportListTasksAction , listTasksRequest );
492494 assertEquals (testNodes .length , response .getPerNodeTasks ().size ());
493495 for (Map .Entry <String , List <TaskInfo >> entry : response .getPerNodeTasks ().entrySet ()) {
494496 assertEquals (1 , entry .getValue ().size ());
@@ -498,7 +500,7 @@ public void testTasksDescriptions() throws Exception {
498500 // Check task counts using transport with detailed description
499501 long minimalDurationNanos = System .nanoTime () - maximumStartTimeNanos ;
500502 listTasksRequest .setDetailed (true ); // same request only with detailed description
501- response = testNode .transportListTasksAction . execute ( listTasksRequest ). get ( );
503+ response = ActionTestUtils . executeBlocking ( testNode .transportListTasksAction , listTasksRequest );
502504 assertEquals (testNodes .length , response .getPerNodeTasks ().size ());
503505 for (Map .Entry <String , List <TaskInfo >> entry : response .getPerNodeTasks ().entrySet ()) {
504506 assertEquals (1 , entry .getValue ().size ());
@@ -536,8 +538,8 @@ public void onFailure(Exception e) {
536538 request .setNodes (testNodes [0 ].getNodeId ());
537539 request .setReason ("Testing Cancellation" );
538540 request .setActions (actionName );
539- CancelTasksResponse response = testNodes [ randomIntBetween ( 0 , testNodes . length - 1 )]. transportCancelTasksAction . execute ( request )
540- . get ( );
541+ CancelTasksResponse response = ActionTestUtils . executeBlocking (
542+ testNodes [ randomIntBetween ( 0 , testNodes . length - 1 )]. transportCancelTasksAction , request );
541543
542544 // Shouldn't match any tasks since testAction doesn't support cancellation
543545 assertEquals (0 , response .getTasks ().size ());
@@ -549,7 +551,8 @@ public void onFailure(Exception e) {
549551 request = new CancelTasksRequest ();
550552 request .setReason ("Testing Cancellation" );
551553 request .setTaskId (new TaskId (testNodes [0 ].getNodeId (), task .getId ()));
552- response = testNodes [randomIntBetween (0 , testNodes .length - 1 )].transportCancelTasksAction .execute (request ).get ();
554+ response = ActionTestUtils .executeBlocking (
555+ testNodes [randomIntBetween (0 , testNodes .length - 1 )].transportCancelTasksAction , request );
553556
554557 // Shouldn't match any tasks since testAction doesn't support cancellation
555558 assertEquals (0 , response .getTasks ().size ());
@@ -560,8 +563,8 @@ public void onFailure(Exception e) {
560563 // Make sure that task is still running
561564 ListTasksRequest listTasksRequest = new ListTasksRequest ();
562565 listTasksRequest .setActions (actionName );
563- ListTasksResponse listResponse = testNodes [ randomIntBetween ( 0 , testNodes . length - 1 )]. transportListTasksAction . execute
564- ( listTasksRequest ). get ( );
566+ ListTasksResponse listResponse = ActionTestUtils . executeBlocking (
567+ testNodes [ randomIntBetween ( 0 , testNodes . length - 1 )]. transportListTasksAction , listTasksRequest );
565568 assertEquals (1 , listResponse .getPerNodeTasks ().size ());
566569 // Verify that tasks are marked as non-cancellable
567570 for (TaskInfo taskInfo : listResponse .getTasks ()) {
@@ -595,7 +598,7 @@ protected NodeResponse nodeOperation(NodeRequest request) {
595598 assertEquals (0 , testNode .transportService .getTaskManager ().getTasks ().size ());
596599 }
597600 NodesRequest request = new NodesRequest ("Test Request" );
598- NodesResponse responses = actions [0 ]. execute ( request ). get ( );
601+ NodesResponse responses = ActionTestUtils . executeBlocking ( actions [0 ], request );
599602 assertEquals (nodesCount , responses .failureCount ());
600603
601604 // Make sure that actions are still registered in the task manager on all nodes
@@ -660,7 +663,7 @@ protected void taskOperation(TestTasksRequest request, Task task, ActionListener
660663 // should be successful on all nodes except one
661664 TestTasksRequest testTasksRequest = new TestTasksRequest ();
662665 testTasksRequest .setActions ("testAction[n]" ); // pick all test actions
663- TestTasksResponse response = tasksActions [0 ]. execute ( testTasksRequest ). get ( );
666+ TestTasksResponse response = ActionTestUtils . executeBlocking ( tasksActions [0 ], testTasksRequest );
664667 assertThat (response .getTaskFailures (), hasSize (1 )); // one task failed
665668 assertThat (response .getTaskFailures ().get (0 ).getReason (), containsString ("Task level failure" ));
666669 // Get successful responses from all nodes except one
@@ -730,7 +733,7 @@ protected void taskOperation(TestTasksRequest request, Task task, ActionListener
730733 // should be successful on all nodes except nodes that we filtered out
731734 TestTasksRequest testTasksRequest = new TestTasksRequest ();
732735 testTasksRequest .setActions ("testAction[n]" ); // pick all test actions
733- TestTasksResponse response = tasksActions [randomIntBetween (0 , nodesCount - 1 )]. execute ( testTasksRequest ). get ( );
736+ TestTasksResponse response = ActionTestUtils . executeBlocking ( tasksActions [randomIntBetween (0 , nodesCount - 1 )], testTasksRequest );
734737
735738 // Get successful responses from all nodes except nodes that we filtered out
736739 assertEquals (testNodes .length - filterNodes .size (), response .tasks .size ());
@@ -757,7 +760,7 @@ public void testTasksToXContentGrouping() throws Exception {
757760 // Get the parent task
758761 ListTasksRequest listTasksRequest = new ListTasksRequest ();
759762 listTasksRequest .setActions (ListTasksAction .NAME + "*" );
760- ListTasksResponse response = testNodes [0 ].transportListTasksAction . execute ( listTasksRequest ). get ( );
763+ ListTasksResponse response = ActionTestUtils . executeBlocking ( testNodes [0 ].transportListTasksAction , listTasksRequest );
761764 assertEquals (testNodes .length + 1 , response .getTasks ().size ());
762765
763766 Map <String , Object > byNodes = serialize (response , true );
0 commit comments