Skip to content

Commit 168ae77

Browse files
committed
Set assignment state to "started" in case of zero allocations
1 parent aa979b6 commit 168ae77

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/ml/inference/assignment/TrainedModelAssignment.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -533,6 +533,9 @@ public AssignmentState calculateAssignmentState() {
533533
if (assignmentState.equals(AssignmentState.STOPPING)) {
534534
return assignmentState;
535535
}
536+
if (taskParams.getNumberOfAllocations() == 0) {
537+
return AssignmentState.STARTED;
538+
}
536539
if (nodeRoutingTable.values().stream().anyMatch(r -> r.getState().equals(RoutingState.STARTED))) {
537540
return AssignmentState.STARTED;
538541
}

x-pack/plugin/core/src/test/java/org/elasticsearch/xpack/core/ml/inference/assignment/TrainedModelAssignmentTests.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,11 @@ public void testCalculateAssignmentState_GivenNoStartedAssignments() {
172172
assertThat(builder.calculateAssignmentState(), equalTo(AssignmentState.STARTING));
173173
}
174174

175+
public void testCalculateAssignmentState_GivenNumAllocationsIsZero() {
176+
TrainedModelAssignment.Builder builder = TrainedModelAssignment.Builder.empty(randomTaskParams(0), null);
177+
assertThat(builder.calculateAssignmentState(), equalTo(AssignmentState.STARTED));
178+
}
179+
175180
public void testCalculateAssignmentState_GivenOneStartedAssignment() {
176181
TrainedModelAssignment.Builder builder = TrainedModelAssignment.Builder.empty(randomTaskParams(5), null);
177182
builder.addRoutingEntry("node-1", new RoutingInfo(4, 4, RoutingState.STARTING, ""));

0 commit comments

Comments
 (0)