Skip to content

Commit 5269fa3

Browse files
committed
Data frame task failure does not make a 500 response (#44058)
Data frame task responses had logic to return a HTTP 500 status code if there was any node or task failures even if other tasks in the same request reported correctly. This is different to how other task responses are handled where a 200 is always returned leaving the client should check for failures. Returning a 500 also breaks the high level rest client so always return a 200 Closes #44011
1 parent 1e367b6 commit 5269fa3

File tree

4 files changed

+6
-32
lines changed

4 files changed

+6
-32
lines changed

x-pack/plugin/data-frame/src/main/java/org/elasticsearch/xpack/dataframe/rest/action/BaseTasksResponseToXContentListener.java

-29
This file was deleted.

x-pack/plugin/data-frame/src/main/java/org/elasticsearch/xpack/dataframe/rest/action/RestGetDataFrameTransformsStatsAction.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import org.elasticsearch.rest.BaseRestHandler;
1212
import org.elasticsearch.rest.RestController;
1313
import org.elasticsearch.rest.RestRequest;
14+
import org.elasticsearch.rest.action.RestToXContentListener;
1415
import org.elasticsearch.xpack.core.action.util.PageParams;
1516
import org.elasticsearch.xpack.core.dataframe.DataFrameField;
1617
import org.elasticsearch.xpack.core.dataframe.action.GetDataFrameTransformsStatsAction;
@@ -36,7 +37,7 @@ protected RestChannelConsumer prepareRequest(RestRequest restRequest, NodeClient
3637
restRequest.paramAsInt(PageParams.SIZE.getPreferredName(), PageParams.DEFAULT_SIZE)));
3738
}
3839
return channel -> client.execute(GetDataFrameTransformsStatsAction.INSTANCE, request,
39-
new BaseTasksResponseToXContentListener<>(channel));
40+
new RestToXContentListener<>(channel));
4041
}
4142

4243
@Override

x-pack/plugin/data-frame/src/main/java/org/elasticsearch/xpack/dataframe/rest/action/RestStartDataFrameTransformAction.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import org.elasticsearch.rest.BaseRestHandler;
1313
import org.elasticsearch.rest.RestController;
1414
import org.elasticsearch.rest.RestRequest;
15+
import org.elasticsearch.rest.action.RestToXContentListener;
1516
import org.elasticsearch.xpack.core.dataframe.DataFrameField;
1617
import org.elasticsearch.xpack.core.dataframe.action.StartDataFrameTransformAction;
1718

@@ -31,7 +32,7 @@ protected RestChannelConsumer prepareRequest(RestRequest restRequest, NodeClient
3132
StartDataFrameTransformAction.Request request = new StartDataFrameTransformAction.Request(id, force);
3233
request.timeout(restRequest.paramAsTime(DataFrameField.TIMEOUT.getPreferredName(), AcknowledgedRequest.DEFAULT_ACK_TIMEOUT));
3334
return channel -> client.execute(StartDataFrameTransformAction.INSTANCE, request,
34-
new BaseTasksResponseToXContentListener<>(channel));
35+
new RestToXContentListener<>(channel));
3536
}
3637

3738
@Override

x-pack/plugin/data-frame/src/main/java/org/elasticsearch/xpack/dataframe/rest/action/RestStopDataFrameTransformAction.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import org.elasticsearch.rest.BaseRestHandler;
1212
import org.elasticsearch.rest.RestController;
1313
import org.elasticsearch.rest.RestRequest;
14+
import org.elasticsearch.rest.action.RestToXContentListener;
1415
import org.elasticsearch.xpack.core.dataframe.DataFrameField;
1516
import org.elasticsearch.xpack.core.dataframe.action.StopDataFrameTransformAction;
1617

@@ -40,7 +41,7 @@ protected RestChannelConsumer prepareRequest(RestRequest restRequest, NodeClient
4041
allowNoMatch);
4142

4243
return channel -> client.execute(StopDataFrameTransformAction.INSTANCE, request,
43-
new BaseTasksResponseToXContentListener<>(channel));
44+
new RestToXContentListener<>(channel));
4445
}
4546

4647
@Override

0 commit comments

Comments
 (0)