rabashizade commented on code in PR #2106:
URL: https://github.com/apache/helix/pull/2106#discussion_r881150154
##########
helix-core/src/main/java/org/apache/helix/controller/dataproviders/BaseControllerDataProvider.java:
##########
@@ -241,13 +244,87 @@ private void refreshClusterConfig(final HelixDataAccessor
accessor,
if
(_propertyDataChangedMap.get(HelixConstants.ChangeType.CLUSTER_CONFIG).getAndSet(false))
{
_clusterConfig =
accessor.getProperty(accessor.keyBuilder().clusterConfig());
refreshedType.add(HelixConstants.ChangeType.CLUSTER_CONFIG);
+ // TODO: This is a temp function to clean up incompatible batched
disabled instances format.
+ // Remove in later version.
+ if (checkBatchedDisabledInstanceFormat(_clusterConfig) &&
updateBatchDisableFormat(
+ accessor)) {
+ // read from zkz one more time
+ LogUtil.logInfo(logger, getClusterEventId(), String
+ .format("Clean ClusterConfig change for cluster %s, pipeline %s",
_clusterName,
+ getPipelineName()));
+ _clusterConfig =
accessor.getProperty(accessor.keyBuilder().clusterConfig());
Review Comment:
I think what Junkai is suggesting is instead of writing corrected data to ZK
in `updateBatchDisableFormat()`, and then reading it back in `_clusterConfig`
here, directly update `_clusterConfig` in `updateBatchDisableFormat()` with the
same data that's being written to ZK and let the data written to ZK be picked
up in `_clusterConfig` the next time pipeline is triggered. This way, we won't
have the risk of pipeline failure due to incorrect disabled time format, or the
risk of inconsistent `_clusterConfig` between pipeline stages.
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]