Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
diff --git a/framework/cluster/src/main/java/com/cloud/cluster/ClusterManagerImpl.java b/framework/cluster/src/main/java/com/cloud/cluster/ClusterManagerImpl.java
index 2856b0a..bb11258 100644
--- a/framework/cluster/src/main/java/com/cloud/cluster/ClusterManagerImpl.java
+++ b/framework/cluster/src/main/java/com/cloud/cluster/ClusterManagerImpl.java
@@ -1048,8 +1048,9 @@
ManagementServerHostVO mshost = _mshostDao.findByMsid(_msId);
- // Look for duplicate hostname in the case of kubernetes setup where ip/mac changes but hostname is constant.
- if (mshost == null && StringUtils.isNotBlank(currentHostname)) {
+ // Look for duplicate hostname in Kubernetes setups where IP/MAC changes but hostname is constant.
+ // Skip the default "localhost" hostname fallback to avoid removing other active nodes when hostname resolution fails.
+ if (mshost == null && StringUtils.isNotBlank(currentHostname) && !StringUtils.equalsIgnoreCase(currentHostname, "localhost")) {
List<ManagementServerHostVO> activeEntries = _mshostDao.findAllByName(currentHostname);
for (ManagementServerHostVO activeEntry : activeEntries) {
// Found an active entry with this hostname but different MSID