junkaixue commented on code in PR #2972: URL: https://github.com/apache/helix/pull/2972#discussion_r1868303075
########## helix-core/src/main/java/org/apache/helix/model/InstanceConfig.java: ########## @@ -656,6 +656,17 @@ public InstanceOperation getInstanceOperation() { .build(); } + // if instance operation is DISABLE, we override it to ENABLE if HELIX_ENABLED set to true + if (activeInstanceOperation.getOperation() == InstanceConstants.InstanceOperation.DISABLE) { + // it is not likely that HELIX_ENABLED is unset, because when we set operation to disable, + // we always set HELIX_ENABLED to false + // If instance is enabled by old version helix (not having instance operation), the instance config + // will have HELIX_ENABLED set to true. In this case, we should override the instance operation to ENABLE + if ("true".equals(_record.getSimpleField(InstanceConfigProperty.HELIX_ENABLED.name()))) { + return new InstanceOperation.Builder().setOperation(InstanceConstants.InstanceOperation.ENABLE).build(); Review Comment: Shall we write it back? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: reviews-unsubscr...@helix.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@helix.apache.org For additional commands, e-mail: reviews-h...@helix.apache.org