From 6464add55138c7e4be324b335ff1859356dc507b Mon Sep 17 00:00:00 2001 From: Chris Earle Date: Fri, 2 Jun 2017 10:01:42 -0400 Subject: Always Accumulate Transport Exceptions (#25017) This removes the `accumulateExceptions()` method (and its usage) from `TransportNodesAction` and `TransportTasksAction`, forcing both transport actions to always accumulate exceptions. Without this change, some transport actions, like `TransportNodesStatsAction` would respond in very unexpected ways by returning no response due to some failure, but instead of returning an error the response would simply be empty: no response and no error. This results in a very trappy response structure where users can check for an error, then attempt to blindly use the response when no error is returned. --- .../action/admin/cluster/node/tasks/TaskManagerTestCase.java | 4 ---- .../action/admin/cluster/node/tasks/TestTaskPlugin.java | 8 -------- .../admin/cluster/node/tasks/TransportTasksActionTests.java | 4 ---- 3 files changed, 16 deletions(-) (limited to 'core/src/test/java/org/elasticsearch/action/admin/cluster') diff --git a/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/TaskManagerTestCase.java b/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/TaskManagerTestCase.java index 0cece76425..fdd5091485 100644 --- a/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/TaskManagerTestCase.java +++ b/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/TaskManagerTestCase.java @@ -164,10 +164,6 @@ public abstract class TaskManagerTestCase extends ESTestCase { @Override protected abstract NodeResponse nodeOperation(NodeRequest request); - @Override - protected boolean accumulateExceptions() { - return true; - } } public static class TestNode implements Releasable { diff --git a/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/TestTaskPlugin.java b/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/TestTaskPlugin.java index b4ba0354ed..ec981442b5 100644 --- a/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/TestTaskPlugin.java +++ b/core/src/test/java/org/elasticsearch/action/admin/cluster/node/tasks/TestTaskPlugin.java @@ -313,10 +313,6 @@ public class TestTaskPlugin extends Plugin implements ActionPlugin { throw new UnsupportedOperationException("the task parameter is required"); } - @Override - protected boolean accumulateExceptions() { - return true; - } } public static class TestTaskAction extends Action { @@ -453,10 +449,6 @@ public class TestTaskPlugin extends Plugin implements ActionPlugin { listener.onResponse(new UnblockTestTaskResponse()); } - @Override - protected boolean accumulateExceptions() { - return true; - } } public static class UnblockTestTasksAction extends Action startBlockingTestNodesAction(CountDownLatch checkLatch) throws InterruptedException { -- cgit v1.2.3