Skip to content

Commit 1684ddd

Browse files
[7.7][ML] Use non-zero timeout when force stopping DF analytics (elastic#56423) (elastic#56431)
We have been using a zero timeout in the case that DF analytics is stopped. This may cause a timeout when we cancel, for example, the reindex task. This commit fixes this by using the default timeout instead. Backport of elastic#56423
1 parent 2800db5 commit 1684ddd

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed

x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/ml/action/StopDataFrameAnalyticsAction.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,15 @@
3333
import java.util.HashSet;
3434
import java.util.Objects;
3535
import java.util.Set;
36+
import java.util.concurrent.TimeUnit;
3637

3738
public class StopDataFrameAnalyticsAction extends ActionType<StopDataFrameAnalyticsAction.Response> {
3839

3940
public static final StopDataFrameAnalyticsAction INSTANCE = new StopDataFrameAnalyticsAction();
4041
public static final String NAME = "cluster:admin/xpack/ml/data_frame/analytics/stop";
4142

43+
public static final TimeValue DEFAULT_TIMEOUT = new TimeValue(30, TimeUnit.SECONDS);
44+
4245
private StopDataFrameAnalyticsAction() {
4346
super(NAME, StopDataFrameAnalyticsAction.Response::new);
4447
}
@@ -76,6 +79,7 @@ public static Request parseRequest(String id, XContentParser parser) {
7679

7780
public Request(String id) {
7881
setId(id);
82+
setTimeout(DEFAULT_TIMEOUT);
7983
}
8084

8185
public Request(StreamInput in) throws IOException {

x-pack/plugin/ml/src/main/java/org/elasticsearch/xpack/ml/dataframe/DataFrameAnalyticsTask.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
import org.elasticsearch.xpack.core.ml.MlTasks;
3838
import org.elasticsearch.xpack.core.ml.action.GetDataFrameAnalyticsStatsAction;
3939
import org.elasticsearch.xpack.core.ml.action.StartDataFrameAnalyticsAction;
40+
import org.elasticsearch.xpack.core.ml.action.StopDataFrameAnalyticsAction;
4041
import org.elasticsearch.xpack.core.ml.dataframe.DataFrameAnalyticsState;
4142
import org.elasticsearch.xpack.core.ml.dataframe.DataFrameAnalyticsTaskState;
4243
import org.elasticsearch.xpack.core.ml.job.messages.Messages;
@@ -105,7 +106,7 @@ public StatsHolder getStatsHolder() {
105106

106107
@Override
107108
protected void onCancelled() {
108-
stop(getReasonCancelled(), TimeValue.ZERO);
109+
stop(getReasonCancelled(), StopDataFrameAnalyticsAction.DEFAULT_TIMEOUT);
109110
markAsCompleted();
110111
}
111112

0 commit comments

Comments
 (0)