Skip to content

Commit

Permalink
[BACKPORT-2024.1.1][PLAT-14731] Nodes stuck in "VM image upgrade" sta…
Browse files Browse the repository at this point in the history
…te after upgrading the linux version

Summary:
Fixed node state reordering for VMImageUpgrade
Original diff: ecb68e5/D36776

Test Plan:
1) Run VMImage upgrade and fail at second node.
2) Retry upgrade -> verify node state is Live

Reviewers: nsingh

Reviewed By: nsingh

Subscribers: yugaware

Tags: #jenkins-ready

Differential Revision: https://phorge.dev.yugabyte.com/D36844
  • Loading branch information
yorq committed Jul 25, 2024
1 parent 2f211c3 commit 3160d6d
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,6 @@ private void createVMImageUpgradeTasks(Set<NodeDetails> nodes) {
Universe universe = getUniverse();
UUID imageBundleUUID;
for (NodeDetails node : nodes) {
createSetNodeStateTask(node, getNodeState());
UUID region = taskParams().nodeToRegion.get(node.nodeUuid);
String machineImage = "";
String sshUserOverride = "";
Expand Down Expand Up @@ -201,6 +200,8 @@ private void createVMImageUpgradeTasks(Set<NodeDetails> nodes) {
}
if (universe.isYbcEnabled()) processTypes.add(ServerType.CONTROLLER);

createSetNodeStateTask(node, getNodeState());

createCheckNodesAreSafeToTakeDownTask(masters, tservers, null);

// The node is going to be stopped. Ignore error because of previous error due to
Expand Down Expand Up @@ -291,9 +292,9 @@ private void createVMImageUpgradeTasks(Set<NodeDetails> nodes) {
clusterToImageBundleMap.put(node.placementUuid, imageBundleUUID);
}
}
createSetNodeStateTask(node, NodeState.Live);
createNodeDetailsUpdateTask(node, !taskParams().isSoftwareUpdateViaVm)
.setSubTaskGroupType(SubTaskGroupType.ConfigureUniverse);
createSetNodeStateTask(node, NodeState.Live);
}

// Update the imageBundleUUID in the cluster -> userIntent
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -99,8 +99,8 @@ public boolean matches(NodeTaskParams right) {
TaskType.WaitForServerReady,
TaskType.WaitStartingFromTime,
TaskType.WaitForEncryptionKeyInMemory,
TaskType.UpdateNodeDetails,
TaskType.SetNodeState);
TaskType.SetNodeState,
TaskType.UpdateNodeDetails);

private static final List<TaskType> NODE_VALIDATION_TASKS =
ImmutableList.of(TaskType.CheckLocale, TaskType.CheckGlibc);
Expand Down

0 comments on commit 3160d6d

Please sign in to comment.