helix-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jiajunw...@apache.org
Subject [helix] branch wagedRebalancer updated (b0ba6e3 -> f6cd078)
Date Fri, 13 Dec 2019 00:34:24 GMT
This is an automated email from the ASF dual-hosted git repository.

jiajunwang pushed a change to branch wagedRebalancer
in repository https://gitbox.apache.org/repos/asf/helix.git.


    omit b0ba6e3  Improve the algorithm so it prioritizes the assignment to the idle nodes when the constraint evaluation results are the same (#651)
    omit 51f960e  Decouple the event type and the scheduled rebalance cache refresh option. (#638)
    omit fae5272  Add new WAGED rebalancer config item "GLOBAL_REBALANCE_ASYNC_MODE". (#637)
    omit 3ace9da  Simply and enhance the RebalanceLatencyGauge so it can be used in multi-threads. (#636)
    omit 1d19945  Fix a potential issue in the ResourceChangeSnapshot. (#635)
    omit 83efcfa  Add REST API endpoints for WAGED Rebalancer (#611)
    omit 4dc35c0  Fix the unstable test TestZeroReplicaAvoidance. (#603)
    omit 1f6ed2d  Improve the WAGED rebalancer performance. (#586)
    omit 916a9d0  Change calculation for baseline divergence. (#598)
    omit 043f445  Add Java API for adding and validating resources for WAGED rebalancer (#570)
    omit 22e6b87  Change ClusterConfig.setDefaultCapacityMap to be private. (#590)
    omit df661d3  Introduce Dry-run Waged Rebalancer for the verifiers and tests. (#573)
    omit ba20368  Filter resource map with ideal states for instance capacity metrics. (#574)
    omit 29a62c7  Avoid redundant writes in AssignmentMetadataStore (#564)
    omit 56d071a  Fix formula incorrection in the comment for measuring baseline divergence. (#559)
    omit 1d01466  Add max capacity usage metric for instance monitor. (#548)
    omit b4d7bf8  Use a deep copy of the new best possible assignment for measuring baseline divergence. (#542)
    omit 10fff67  Refine ivy file config. The org were not configured correctly. (#551)
    omit afc4103  Add the new Rebalancer monitor domain to the active domain list. (#550)
    omit c531a4b  Fix a missing parameter when the WAGED rebalancer init the change detector. (#547)
    omit eba870b  Modify the ivy file to add the new math3 lib dependency. (#546)
    omit f520398  Implement increment() method in CountMetric class. (#537)
    omit 04f7e04  Adjust the replica rebalance calculating ordering to avoid static order. (#535)
    omit 0f79266  Minor fix for the constraints related tests. (#545)
    omit ab1522c  Refactor soft constraints to simply the algorithm and fix potential issues. (#520)
    omit 9efaaec  Change change detector to a regular field in the WAGED rebalancer instead of static threadlocal. (#543)
    omit dce6552  Make WagedRebalancer static by creating a ThreadLocal (#540)
    omit f8ab342  Refine the rebalance scope calculating logic in the WAGED rebalancer. (#519)
    omit 9196bdd  Implement monitoring mbeans for the WAGED rebalancer. (#525)
    omit 5a727cc  Make log clearer after finishing calculateAssignment. (#531)
    omit ee7dcda  The WAGED rebalancer returns the previously calculated assignment on calculation failure (#514)
    omit 48d272c  Increase parallelism for ZkBucketDataAccessor (#506)
    omit 8859b0f  More strict partition weight validation while creating the cluster model. (#511)
    omit 102a1af  Fixing rebalance cache issue and stablize the tests. (#510)
    omit 5fb843f  Add latency metric components for WAGED rebalancer (#490)
    omit e2d3d35  Load soft constraint weight from resources/properties file (#492)
    omit ad202c6  Adjust the topology processing logic for instance to ensure backward compatibility.
    omit 6bc1586  Enable maintenance mode for the WAGED rebalancer.
    omit 2699b61  Add delayed rebalance and user-defined preference list features to the WAGED rebalancer. (#456)
    omit b755443  Separate AssignableNode properties by Immutable and Mutable (#485)
    omit c87526c  Integrate the WAGED rebalancer with all the related components. (#466)
    omit 8ddfc47  Add the remaining implementation of ConstraintBasedAlgorithmFactory (#478)
    omit 37b0731  PartitionMovementSoftConstraint Implementation (#474)
    omit e893a38  Adjust the expected replica count according to fault zone count. (#476)
    omit b6322a5  Improve ResourceTopStateAntiAffinityConstraint (#475)
    omit fa9237b  Add soft constraint: ResourcePartitionAntiAffinityConstraint (#464)
    omit a18503c  Implement MaxCapacityUsageInstanceConstraint soft constraint (#463)
    omit c3a46f9  Add soft constraint: ResourcetopStateAntiAffinityConstraint (#465)
    omit 7968596  Implement one of the soft constraints (#450)
    omit 80d340e  Fix TestWagedRebalancer and add constructor in AssignmentMetadataStore
    omit c8f386e  Implement AssignmentMetadataStore (#453)
    omit ccf253e  HardConstraints Implementation and unit tests (#433)
    omit ba15552  Implement the WAGED rebalancer with the limited functionality. (#443)
    omit f3ec635  Validate the instance capacity/partition weight configuration while constructing the assignable instances (#451)
    omit 2659f68  Implement the basic constraint based algorithm (#381)
    omit fdf20c9  Add BucketDataAccessor for large writes
    omit b47a835  Record the replica objects in the AssignableNode in addition to the partition name (#440)
    omit 6b800e6  Add special treatment for ClusterConfig
    omit 84eb689  Modify the expected change type from CONFIG to CLUSTER_CONFIG in the WAGED rebalancer. (#438)
    omit 146b9f2  Resubmit the change: Refine the WAGED rebalancer related interfaces for integration (#431)
    omit cd85e67  Revert "Refine the WAGED rebalancer related interfaces for integration (#431)" (#437)
    omit c01bda5  Refine the WAGED rebalancer related interfaces for integration (#431)
    omit 2e99b98  Redefine the hard/soft constraints (#422)
    omit afa297f  Add ChangeDetector interface and ResourceChangeDetector implementation (#388)
    omit 240772b  Add cluster level default instance config. (#413)
    omit 9f385bf  Implement Cluster Model Provider. (#392)
    omit 356a5aa  Convert all the internal assignment state objects to be ResourceAssignment. (#399)
    omit ba64365  Change the rebalancer assignment record to be ResourceAssignment instead of IdealState. (#398)
    omit af36cc8  Implement the WAGED rebalancer cluster model (#362)
    omit 8d377cc  Adding the configuration items of the WAGED rebalancer. (#348)
    omit 3a720ef  Define the WAGED rebalancer interfaces.
     add 2a335cf  Deep copy for mapFields and listFields in ZNRecord's copy constructor. (#552)
     add eb6ee21  Revert "Deep copy for mapFields and listFields in ZNRecord's copy constructor. (#552)"
     add 554dcd0  Fix partitions double charged for pending message
     add d49448a  Minor log optimization for easily investigating mastership handoff latency (#576)
     add f4ebd3b  Update ZkBaseDataAccessor with custom serializer support (#534)
     add 0d6a2e2  Avoid workflowContext creation without workflowConfig (#583)
     add 0405399  Remove the closing of ZkClient in afterClass() in TestZkBaseDataAccessor (#604)
     add 7f9b9b8  Fix unit test failure for TestTaskPerformanceMetrics. (#585)
     add 9d440c5  Suggested fixes by iCR, OpenRefactory, Inc. (#528)
     add 52cb222  Fix NullPointerException in TestBatchMessage. (#580)
     add 644a568  Fix NullPointerException for testCustomCodeRunner. (#581)
     add 9ebdaf7  Add a ZkAddress-based constructor for ConfigAccessor (#592)
     add 5d8f696  Add new constructors and close() to Helix API (#601)
     add bc46dad  Stabilize the TestAlertingRebalancerFailure test (#608)
     add 8e0ac76  Fix NullPointerException in TestDisableCustomCodeRunner_test. (#617)
     add 88296bc  Optimize imports for the whole project. (#577)
     add a264841  Fix NullPointerException and test failure for testDisablePartitionAndStopInstance. (#613)
     add 2dcff16  Replace jcommander Maps and Lists with google common's. (#579)
     add 66de313  Modify ZkUtil methods so that they accept ZkAddress as parameter (#606)
     add e3a7a0c  Add default implementation to new interface methods (#626)
     add 634484d  Fix RoutingDataCache always requiring full refresh for current state.
     add 1d1eae0  Remove unnecessary boxing for boolean values.
     add 9935fe5  Add unit test.
     add 25ccf97  Remove println.
     add b857af7  Format long lines.
     add 4d4cca9  Add close() to ClusterSetup to avoid ZkClient leak (#629)
     add 9280f22  Stabilize 5 unstable tests (#624)
     add 80a8cdb  Implement the propertyStore read endpoint (#516)
     add 751d746  Add support for PathBasedZkSerializer in ZkBaseDataAccessor (#648)
     new 1652bf0  Define the WAGED rebalancer interfaces.
     new 69296f9  Adding the configuration items of the WAGED rebalancer. (#348)
     new f5065be  Implement the WAGED rebalancer cluster model (#362)
     new a1ca120  Change the rebalancer assignment record to be ResourceAssignment instead of IdealState. (#398)
     new 3496a04  Convert all the internal assignment state objects to be ResourceAssignment. (#399)
     new b2bd287  Implement Cluster Model Provider. (#392)
     new f9c2b6f  Add cluster level default instance config. (#413)
     new f7c249d  Add ChangeDetector interface and ResourceChangeDetector implementation (#388)
     new dd3641c  Redefine the hard/soft constraints (#422)
     new b63dcde  Refine the WAGED rebalancer related interfaces for integration (#431)
     new 1a65289  Revert "Refine the WAGED rebalancer related interfaces for integration (#431)" (#437)
     new 675eadb  Resubmit the change: Refine the WAGED rebalancer related interfaces for integration (#431)
     new bef2f47  Modify the expected change type from CONFIG to CLUSTER_CONFIG in the WAGED rebalancer. (#438)
     new 8e599f8  Add special treatment for ClusterConfig
     new 2300d2b  Record the replica objects in the AssignableNode in addition to the partition name (#440)
     new a1c4b81  Add BucketDataAccessor for large writes
     new dc59a6e  Implement the basic constraint based algorithm (#381)
     new ec60cce  Validate the instance capacity/partition weight configuration while constructing the assignable instances (#451)
     new 723331d  Implement the WAGED rebalancer with the limited functionality. (#443)
     new ab5745c  HardConstraints Implementation and unit tests (#433)
     new baaabf2  Implement AssignmentMetadataStore (#453)
     new 5d8dbcd  Fix TestWagedRebalancer and add constructor in AssignmentMetadataStore
     new 313d23b  Implement one of the soft constraints (#450)
     new c7a303b  Add soft constraint: ResourcetopStateAntiAffinityConstraint (#465)
     new 6b29b72  Implement MaxCapacityUsageInstanceConstraint soft constraint (#463)
     new e858448  Add soft constraint: ResourcePartitionAntiAffinityConstraint (#464)
     new ca8a114  Improve ResourceTopStateAntiAffinityConstraint (#475)
     new 77ecdb9  Adjust the expected replica count according to fault zone count. (#476)
     new fbfb893  PartitionMovementSoftConstraint Implementation (#474)
     new 95a2e4e  Add the remaining implementation of ConstraintBasedAlgorithmFactory (#478)
     new 64ae736  Integrate the WAGED rebalancer with all the related components. (#466)
     new 06c9f96  Separate AssignableNode properties by Immutable and Mutable (#485)
     new 4ad6056  Add delayed rebalance and user-defined preference list features to the WAGED rebalancer. (#456)
     new 98778ed  Enable maintenance mode for the WAGED rebalancer.
     new d797b4c  Adjust the topology processing logic for instance to ensure backward compatibility.
     new 3f1c294  Load soft constraint weight from resources/properties file (#492)
     new dadc021  Add latency metric components for WAGED rebalancer (#490)
     new 0e698d8  Fixing rebalance cache issue and stablize the tests. (#510)
     new def2856  More strict partition weight validation while creating the cluster model. (#511)
     new 8f9b3e2  Increase parallelism for ZkBucketDataAccessor (#506)
     new eb78edc  The WAGED rebalancer returns the previously calculated assignment on calculation failure (#514)
     new 21bf399  Make log clearer after finishing calculateAssignment. (#531)
     new 02141ab  Implement monitoring mbeans for the WAGED rebalancer. (#525)
     new 1842990  Refine the rebalance scope calculating logic in the WAGED rebalancer. (#519)
     new cdc7109  Make WagedRebalancer static by creating a ThreadLocal (#540)
     new 788ffcf  Change change detector to a regular field in the WAGED rebalancer instead of static threadlocal. (#543)
     new f17fcdc  Refactor soft constraints to simply the algorithm and fix potential issues. (#520)
     new 9af4c4f  Minor fix for the constraints related tests. (#545)
     new 9f77982  Adjust the replica rebalance calculating ordering to avoid static order. (#535)
     new e002a31  Implement increment() method in CountMetric class. (#537)
     new 11fe5f1  Modify the ivy file to add the new math3 lib dependency. (#546)
     new ee212de  Fix a missing parameter when the WAGED rebalancer init the change detector. (#547)
     new 4d4418b  Add the new Rebalancer monitor domain to the active domain list. (#550)
     new 1631bae  Refine ivy file config. The org were not configured correctly. (#551)
     new 153a59b  Use a deep copy of the new best possible assignment for measuring baseline divergence. (#542)
     new 9bc8060  Add max capacity usage metric for instance monitor. (#548)
     new 19fa29c  Fix formula incorrection in the comment for measuring baseline divergence. (#559)
     new 5fcf0f8  Avoid redundant writes in AssignmentMetadataStore (#564)
     new 6b02162  Filter resource map with ideal states for instance capacity metrics. (#574)
     new be1a4f6  Introduce Dry-run Waged Rebalancer for the verifiers and tests. (#573)
     new 524c258  Change ClusterConfig.setDefaultCapacityMap to be private. (#590)
     new ca93db4  Add Java API for adding and validating resources for WAGED rebalancer (#570)
     new 0d7033a  Change calculation for baseline divergence. (#598)
     new 5f51ff4  Improve the WAGED rebalancer performance. (#586)
     new ac0256e  Fix the unstable test TestZeroReplicaAvoidance. (#603)
     new 03c0b30  Add REST API endpoints for WAGED Rebalancer (#611)
     new 6aa8184  Fix a potential issue in the ResourceChangeSnapshot. (#635)
     new 7bb4f2b  Simply and enhance the RebalanceLatencyGauge so it can be used in multi-threads. (#636)
     new 17b5c93  Add new WAGED rebalancer config item "GLOBAL_REBALANCE_ASYNC_MODE". (#637)
     new 95a7339  Decouple the event type and the scheduled rebalance cache refresh option. (#638)
     new f6cd078  Improve the algorithm so it prioritizes the assignment to the idle nodes when the constraint evaluation results are the same (#651)

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (b0ba6e3)
            \
             N -- N -- N   refs/heads/wagedRebalancer (f6cd078)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 71 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../org/apache/helix/webapp/HelixAdminWebApp.java  |   4 +-
 .../apache/helix/webapp/RestAdminApplication.java  |   2 +-
 .../helix/webapp/resources/ClusterResource.java    |   4 +-
 .../helix/webapp/resources/ClustersResource.java   |   4 +-
 .../helix/webapp/resources/ConfigResource.java     |   4 +-
 .../helix/webapp/resources/ConstraintResource.java |   4 +-
 .../helix/webapp/resources/ControllerResource.java |   4 +-
 .../resources/ControllerStatusUpdateResource.java  |   4 +-
 .../webapp/resources/CurrentStateResource.java     |   4 +-
 .../webapp/resources/CurrentStatesResource.java    |   4 +-
 .../helix/webapp/resources/ErrorResource.java      |   4 +-
 .../helix/webapp/resources/ErrorsResource.java     |   4 +-
 .../webapp/resources/ExternalViewResource.java     |   4 +-
 .../helix/webapp/resources/IdealStateResource.java |   4 +-
 .../helix/webapp/resources/InstanceResource.java   |   4 +-
 .../helix/webapp/resources/InstancesResource.java  |   7 +-
 .../helix/webapp/resources/JobQueueResource.java   |   8 +-
 .../helix/webapp/resources/JobQueuesResource.java  |  14 +-
 .../apache/helix/webapp/resources/JobResource.java |   4 +-
 .../webapp/resources/ResourceGroupResource.java    |   4 +-
 .../webapp/resources/ResourceGroupsResource.java   |   9 +-
 .../webapp/resources/SchedulerTasksResource.java   |   4 +-
 .../helix/webapp/resources/StateModelResource.java |   4 +-
 .../webapp/resources/StateModelsResource.java      |   4 +-
 .../webapp/resources/StatusUpdateResource.java     |   4 +-
 .../webapp/resources/StatusUpdatesResource.java    |   4 +-
 .../helix/webapp/resources/WorkflowsResource.java  |   7 +-
 .../helix/webapp/resources/ZkChildResource.java    |   4 +-
 .../helix/webapp/resources/ZkPathResource.java     |   4 +-
 .../org/apache/helix/webapp/AdminTestBase.java     |   4 +-
 .../webapp/resources/TestJobQueuesResource.java    |   2 -
 .../org/apache/helix/agent/AgentStateModel.java    |   2 +-
 .../java/org/apache/helix/BaseDataAccessor.java    |  11 +-
 .../main/java/org/apache/helix/ConfigAccessor.java | 101 ++++++----
 .../src/main/java/org/apache/helix/HelixAdmin.java |   7 +-
 .../main/java/org/apache/helix/HelixManager.java   |  20 +-
 .../main/java/org/apache/helix/InstanceType.java   |   2 +-
 .../main/java/org/apache/helix/PropertyKey.java    |  23 ++-
 .../java/org/apache/helix/PropertyPathBuilder.java |  15 +-
 .../helix/api/config/HelixConfigProperty.java      |   1 +
 .../apache/helix/api/config/RebalanceConfig.java   |   1 +
 .../api/config/StateTransitionThrottleConfig.java  |   1 +
 .../api/config/StateTransitionTimeoutConfig.java   |   1 +
 .../helix/api/listeners/ConfigChangeListener.java  |   1 +
 .../api/listeners/CurrentStateChangeListener.java  |   1 +
 .../api/listeners/ExternalViewChangeListener.java  |   1 +
 .../api/listeners/IdealStateChangeListener.java    |   1 +
 .../listeners/InstanceConfigChangeListener.java    |   1 +
 .../api/listeners/LiveInstanceChangeListener.java  |   1 +
 .../helix/api/listeners/MessageListener.java       |   1 +
 .../listeners/ResourceConfigChangeListener.java    |   1 +
 .../api/listeners/ScopedConfigChangeListener.java  |   1 +
 .../AbstractRebalanceHardConstraint.java           |   4 +-
 .../AbstractRebalanceSoftConstraint.java           |   4 +-
 .../helix/common/DedupEventBlockingQueue.java      |   5 +-
 .../helix/common/caches/AbstractDataCache.java     |   3 +-
 .../helix/common/caches/AbstractDataSnapshot.java  |   4 +-
 .../helix/common/caches/BasicClusterDataCache.java |  11 +-
 .../helix/common/caches/CurrentStateCache.java     |   3 +-
 .../helix/common/caches/CurrentStateSnapshot.java  |   6 +-
 .../helix/common/caches/ExternalViewCache.java     |   4 +-
 .../helix/common/caches/IdealStateCache.java       |   4 +-
 .../helix/common/caches/InstanceMessagesCache.java |   8 +-
 .../apache/helix/common/caches/PropertyCache.java  |   5 +-
 .../apache/helix/common/caches/TaskDataCache.java  |   1 +
 .../helix/controller/ExternalViewGenerator.java    |   2 +-
 .../helix/controller/common/PartitionStateMap.java |   4 +-
 .../helix/controller/common/ResourcesStateMap.java |   4 +-
 .../dataproviders/BaseControllerDataProvider.java  |  26 +--
 .../WorkflowControllerDataProvider.java            |  10 +-
 .../controller/pipeline/PipelineRegistry.java      |   1 +
 .../controller/rebalancer/AbstractRebalancer.java  |   1 +
 .../controller/rebalancer/CustomRebalancer.java    |   1 +
 .../rebalancer/DelayedAutoRebalancer.java          |   1 +
 .../rebalancer/MaintenanceRebalancer.java          |   1 +
 .../PartitionWeightAwareEvennessConstraint.java    |   6 +-
 .../constraint/TotalCapacityConstraint.java        |   6 +-
 .../dataprovider/ZkBasedCapacityProvider.java      |  12 +-
 .../ZkBasedPartitionWeightProvider.java            |  12 +-
 .../strategy/ConstraintRebalanceStrategy.java      |   3 +-
 .../rebalancer/strategy/RebalanceStrategy.java     |   1 +
 .../crushMapping/CRUSHPlacementAlgorithm.java      |   4 +-
 .../rebalancer/util/RebalanceScheduler.java        |  17 +-
 .../rebalancer/util/ResourceUsageCalculator.java   |   1 -
 .../rebalancer/waged/WagedRebalancer.java          |   1 -
 .../waged/constraints/UsageSoftConstraint.java     |   3 +-
 .../controller/stages/BestPossibleStateOutput.java |   1 -
 .../helix/controller/stages/ClusterDataCache.java  |   1 +
 .../helix/controller/stages/ClusterEvent.java      |   2 +-
 .../controller/stages/CompatibilityCheckStage.java |   2 +-
 .../stages/CurrentStateComputationStage.java       |  10 +-
 .../controller/stages/CurrentStateOutput.java      |   5 +-
 .../stages/IntermediateStateCalcStage.java         |  49 ++++-
 .../stages/MaintenanceRecoveryStage.java           |   1 +
 .../controller/stages/MessageDispatchStage.java    |   2 +-
 .../controller/stages/MessageGenerationPhase.java  |   4 +-
 .../controller/stages/MessageThrottleStage.java    |   8 +-
 .../controller/stages/PersistAssignmentStage.java  |   2 +-
 .../controller/stages/ReadClusterDataStage.java    |   7 +-
 .../stages/ResourceComputationStage.java           |   3 +-
 .../controller/stages/ResourceValidationStage.java |   2 +-
 .../stages/TargetExteralViewCalcStage.java         |   6 +-
 .../stages/TaskGarbageCollectionStage.java         |   1 +
 .../resource/ResourceMessageGenerationPhase.java   |   2 +-
 .../stages/task/TaskMessageGenerationPhase.java    |   2 +-
 .../stages/task/TaskSchedulingStage.java           |   3 +-
 .../controller/strategy/AutoRebalanceStrategy.java |  10 +-
 .../apache/helix/examples/BootstrapProcess.java    |   4 +-
 .../examples/WeightAwareRebalanceUtilExample.java  |   8 +-
 .../ParticipantHealthReportCollectorImpl.java      |   2 +-
 .../apache/helix/manager/zk/CallbackHandler.java   |  13 +-
 .../zk/DefaultControllerMessageHandlerFactory.java |   3 +-
 ...faultParticipantErrorMessageHandlerFactory.java |   3 +-
 .../manager/zk/DistributedLeaderElection.java      |  27 +--
 .../apache/helix/manager/zk/HelixGroupCommit.java  |   3 +-
 .../apache/helix/manager/zk/WriteThroughCache.java |   2 +-
 .../org/apache/helix/manager/zk/ZKHelixAdmin.java  |  11 +-
 .../helix/manager/zk/ZKHelixDataAccessor.java      |   2 +-
 .../apache/helix/manager/zk/ZKHelixManager.java    |   3 +-
 .../java/org/apache/helix/manager/zk/ZKUtil.java   | 216 ++++++++++++++++++++-
 .../helix/manager/zk/ZNRecordSerializer.java       |   4 +-
 .../manager/zk/ZNRecordStreamingSerializer.java    |   7 +-
 .../apache/helix/manager/zk/ZkAsyncCallbacks.java  |   4 +-
 .../helix/manager/zk/ZkBaseDataAccessor.java       |  50 +++++
 .../helix/manager/zk/ZkCacheBaseDataAccessor.java  |  21 +-
 .../apache/helix/manager/zk/ZkCallbackCache.java   |   4 +-
 .../zk/serializer/JacksonPayloadSerializer.java    |   4 +-
 .../helix/manager/zk/zookeeper/ZkClient.java       |   2 +-
 .../messaging/handling/AsyncCallbackService.java   |   3 +-
 .../handling/HelixStateTransitionHandler.java      |   2 +-
 .../messaging/handling/HelixTaskExecutor.java      |   1 +
 .../org/apache/helix/model/InstanceConfig.java     |  16 +-
 .../java/org/apache/helix/model/LiveInstance.java  |   1 +
 .../main/java/org/apache/helix/model/Message.java  |   2 +-
 .../org/apache/helix/model/ParticipantHistory.java |   6 +-
 .../org/apache/helix/model/ResourceConfig.java     |  14 +-
 .../helix/model/builder/AutoModeISBuilder.java     |   4 +-
 .../model/builder/AutoRebalanceModeISBuilder.java  |   4 +-
 .../helix/model/builder/ConstraintItemBuilder.java |   2 +-
 .../helix/model/builder/CustomModeISBuilder.java   |   4 +-
 .../helix/model/builder/FullAutoModeISBuilder.java |   4 +-
 .../helix/model/builder/SemiAutoModeISBuilder.java |   4 +-
 .../model/util/StateModelDefinitionValidator.java  |   5 +-
 .../helix/monitoring/ZKPathDataDumpTask.java       |   5 +-
 .../monitoring/mbeans/ClusterEventMonitor.java     |  10 +-
 .../monitoring/mbeans/ClusterMBeanObserver.java    |   1 -
 .../monitoring/mbeans/ClusterStatusMonitor.java    |   8 +-
 .../monitoring/mbeans/HelixCallbackMonitor.java    |  10 +-
 .../helix/monitoring/mbeans/InstanceMonitor.java   |   1 -
 .../apache/helix/monitoring/mbeans/JobMonitor.java |   5 +-
 .../helix/monitoring/mbeans/MBeanRegistrar.java    |  10 +-
 .../monitoring/mbeans/MessageLatencyMonitor.java   |  10 +-
 .../monitoring/mbeans/MessageQueueMonitor.java     |   1 -
 .../mbeans/ParticipantStatusMonitor.java           |  20 +-
 .../mbeans/PerInstanceResourceMonitor.java         |   7 +-
 .../helix/monitoring/mbeans/ResourceMonitor.java   |   5 +-
 .../mbeans/RoutingTableProviderMonitor.java        |  14 +-
 .../mbeans/StateTransitionStatMonitor.java         |   6 +-
 .../helix/monitoring/mbeans/ZkClientMonitor.java   |   8 +-
 .../monitoring/mbeans/ZkClientPathMonitor.java     |   4 +-
 .../mbeans/dynamicMBeans/DynamicMBeanProvider.java |  12 +-
 .../mbeans/dynamicMBeans/DynamicMetric.java        |   6 +-
 .../dynamicMBeans/HistogramDynamicMetric.java      |  12 +-
 .../DistClusterControllerStateModel.java           |   3 +-
 .../DistClusterControllerStateModelFactory.java    |   3 +-
 .../participant/GenericLeaderStandbyModel.java     |   2 +-
 .../helix/participant/HelixCustomCodeRunner.java   |   2 +-
 .../helix/participant/HelixStateMachineEngine.java |   3 +-
 .../apache/helix/spectator/RoutingDataCache.java   |   4 +-
 .../org/apache/helix/spectator/RoutingTable.java   |   1 +
 .../helix/spectator/RoutingTableProvider.java      |  33 ++--
 .../helix/spectator/RoutingTableSnapshot.java      |   1 +
 .../apache/helix/store/PropertyJsonSerializer.java |   4 +-
 .../helix/store/zk/AutoFallbackPropertyStore.java  |   2 +-
 .../apache/helix/task/AbstractTaskDispatcher.java  |   7 +-
 .../helix/task/AssignableInstanceManager.java      |   1 +
 .../helix/task/DeprecatedTaskRebalancer.java       |  15 +-
 .../task/FixedTargetTaskAssignmentCalculator.java  |   5 +-
 .../task/GenericTaskAssignmentCalculator.java      |   5 +-
 .../main/java/org/apache/helix/task/JobConfig.java |   9 +-
 .../java/org/apache/helix/task/JobContext.java     |   5 +-
 .../main/java/org/apache/helix/task/JobDag.java    |   8 +-
 .../java/org/apache/helix/task/JobDispatcher.java  |   3 +-
 .../main/java/org/apache/helix/task/JobQueue.java  |   4 +-
 .../java/org/apache/helix/task/RuntimeJobDag.java  |   2 +-
 .../helix/task/TaskAssignmentCalculator.java       |   8 +-
 .../java/org/apache/helix/task/TaskConfig.java     |   3 +-
 .../java/org/apache/helix/task/TaskDriver.java     |   1 +
 .../org/apache/helix/task/TaskExecutionInfo.java   |   1 +
 .../apache/helix/task/TaskStateModelFactory.java   |   2 +-
 .../main/java/org/apache/helix/task/TaskUtil.java  |   6 +-
 .../ThreadCountBasedTaskAssignmentCalculator.java  |   2 +
 .../org/apache/helix/task/WorkflowDispatcher.java  |  17 +-
 .../org/apache/helix/task/WorkflowRebalancer.java  |   3 +-
 .../helix/task/assigner/AssignableInstance.java    |   1 +
 .../apache/helix/task/assigner/TaskAssigner.java   |   1 +
 .../assigner/ThreadCountBasedTaskAssigner.java     |   1 +
 .../helix/tools/ClusterExternalViewVerifier.java   |   1 +
 .../java/org/apache/helix/tools/ClusterSetup.java  |  26 ++-
 .../apache/helix/tools/ClusterStateVerifier.java   |   3 +-
 .../org/apache/helix/tools/ClusterVerifier.java    |   8 +-
 .../ClusterVerifiers/HelixClusterVerifier.java     |   7 +
 .../StrictMatchExternalViewVerifier.java           |   5 +-
 .../ClusterVerifiers/ZkHelixClusterVerifier.java   |  20 +-
 .../java/org/apache/helix/tools/RUSHrHash.java     |   4 +-
 .../helix/tools/StateModelConfigGenerator.java     |   2 +-
 .../java/org/apache/helix/tools/TestExecutor.java  |   1 +
 .../tools/commandtools/CurrentStateCleanUp.java    |   1 +
 .../tools/commandtools/ExampleParticipant.java     |   1 +
 .../apache/helix/tools/commandtools/JmxDumper.java |   1 -
 .../apache/helix/tools/commandtools/TaskAdmin.java |   3 +-
 .../apache/helix/tools/commandtools/ToolsUtil.java |   2 +-
 .../helix/tools/commandtools/ZKLogFormatter.java   |   5 +-
 .../apache/helix/util/InstanceValidationUtil.java  |   3 +-
 .../org/apache/helix/util/StatusUpdateUtil.java    |   1 +
 .../helix/util/WeightAwareRebalanceUtil.java       |  18 +-
 .../scripts/integration-test/script/cm_driver.py   |   2 +-
 .../scripts/integration-test/script/dds_driver.py  | 214 ++++++++++----------
 .../scripts/integration-test/script/utility.py     | 101 +++++-----
 .../test/java/org/apache/helix/MockAccessor.java   |   1 +
 .../java/org/apache/helix/ScriptTestHelper.java    |   1 +
 .../java/org/apache/helix/TestConfigAccessor.java  |   1 +
 .../TestEspressoStorageClusterIdealState.java      |   1 +
 .../java/org/apache/helix/TestGetProperty.java     |   1 +
 .../java/org/apache/helix/TestGroupCommit.java     |   1 +
 .../org/apache/helix/TestHelixConfigAccessor.java  |   1 +
 .../org/apache/helix/TestHelixTaskHandler.java     |   1 +
 .../org/apache/helix/TestListenerCallback.java     |   1 +
 .../helix/TestListenerCallbackBatchMode.java       |   1 +
 .../apache/helix/TestListenerCallbackPrefetch.java |   1 +
 .../helix/TestRelayIdealStateCalculator.java       |   1 +
 .../java/org/apache/helix/TestRoutingTable.java    |   1 +
 .../org/apache/helix/TestShuffledIdealState.java   |   1 +
 .../test/java/org/apache/helix/TestZKCallback.java |   1 +
 .../apache/helix/TestZKRoutingInfoProvider.java    |   1 +
 .../test/java/org/apache/helix/TestZNRecord.java   |   1 +
 .../test/java/org/apache/helix/TestZkBasis.java    |   1 +
 .../java/org/apache/helix/TestZnodeModify.java     |   1 +
 .../test/java/org/apache/helix/ZkTestHelper.java   |   1 +
 .../common/caches/TestCurrentStateSnapshot.java    |   1 +
 .../helix/common/caches/TestPropertyCache.java     |   9 +-
 .../TestWorkflowControllerDataProvider.java        |  35 ++--
 .../rebalancer/TestAbstractRebalancer.java         |   1 +
 .../rebalancer/TestAutoRebalanceStrategy.java      |   9 +-
 ...stAutoRebalanceStrategyImbalanceAssignment.java |   1 +
 .../TestConstraintRebalanceStrategy.java           |   1 +
 .../rebalancer/TestZeroReplicaAvoidance.java       |   1 +
 .../dataprovider/MockCapacityProvider.java         |   1 +
 .../dataprovider/MockPartitionWeightProvider.java  |   1 +
 .../helix/controller/stages/BaseStageTest.java     |   1 +
 .../controller/stages/DummyClusterManager.java     |   1 +
 .../TestBestPossibleCalcStageCompatibility.java    |   1 +
 .../stages/TestBestPossibleStateCalcStage.java     |   1 +
 .../stages/TestClusterEventBlockingQueue.java      |   7 +-
 .../stages/TestCompatibilityCheckStage.java        |   1 +
 .../stages/TestCurrentStateComputationStage.java   |   1 +
 .../controller/stages/TestExternalViewStage.java   |   1 +
 .../stages/TestIntermediateStateCalcStage.java     |  79 ++++----
 .../stages/TestMessageThrottleStage.java           |   1 +
 .../controller/stages/TestMsgSelectionStage.java   |   1 +
 .../TestQuotaConstraintSkipWorkflowAssignment.java |   1 +
 .../controller/stages/TestRebalancePipeline.java   |   1 +
 .../controller/stages/TestRecoveryLoadBalance.java |   1 +
 .../stages/TestResourceComputationStage.java       |   1 +
 .../stages/TestResourceValidationStage.java        |   3 +-
 .../stages/TestStateTransitionPriority.java        |   3 +-
 .../TestStateTransitionThrottleController.java     |  11 +-
 .../TestCardDealingAdjustmentAlgorithmV2.java      |   9 +-
 .../TestParticipantHealthReportCollectorImpl.java  |   1 +
 .../SinglePartitionLeaderStandByTest.java          |   1 +
 .../apache/helix/integration/TestAddClusterV2.java |   1 +
 .../TestAddNodeAfterControllerStart.java           |   1 +
 .../TestAddStateModelFactoryAfterConnect.java      |   1 +
 .../integration/TestAlertingRebalancerFailure.java |   7 +-
 .../helix/integration/TestBasicSpectator.java      |   1 +
 .../integration/TestBatchEnableInstances.java      |   1 +
 .../integration/TestBatchMessageHandling.java      |   1 +
 .../helix/integration/TestBucketizedResource.java  |   1 +
 .../integration/TestCMWithFailParticipant.java     |   1 +
 .../integration/TestCarryOverBadCurState.java      |   1 +
 .../helix/integration/TestCleanupExternalView.java |   1 +
 .../helix/integration/TestClusterStartsup.java     |   1 +
 .../TestCorrectnessOnConnectivityLoss.java         |   4 +-
 .../org/apache/helix/integration/TestDisable.java  |   1 +
 .../integration/TestDisableCustomCodeRunner.java   |  17 +-
 .../helix/integration/TestDisableExternalView.java |   1 +
 .../helix/integration/TestDisablePartition.java    |   5 +-
 .../helix/integration/TestDisableResource.java     |   1 +
 .../helix/integration/TestDistributedCMMain.java   |   1 +
 .../TestDistributedClusterController.java          |   1 +
 .../org/apache/helix/integration/TestDrop.java     |  17 +-
 .../TestEnablePartitionDuringDisable.java          |   1 +
 .../integration/TestEntropyFreeNodeBounce.java     |   1 +
 .../helix/integration/TestErrorPartition.java      |   1 +
 .../helix/integration/TestErrorReplicaPersist.java |   1 +
 .../helix/integration/TestExpandCluster.java       |   1 +
 .../apache/helix/integration/TestExternalCmd.java  |   1 +
 .../helix/integration/TestExternalViewUpdates.java |   1 +
 .../helix/integration/TestFailOverPerf1kp.java     |   1 +
 .../integration/TestHelixCustomCodeRunner.java     |  24 +--
 .../helix/integration/TestHelixInstanceTag.java    |   1 +
 .../integration/TestHelixUsingDifferentParams.java |   1 +
 .../integration/TestInvalidResourceRebalance.java  |   3 +-
 .../TestMessagePartitionStateMismatch.java         |   1 +
 .../TestNoThrottleDisabledPartitions.java          |   1 +
 .../apache/helix/integration/TestNullReplica.java  |   1 +
 .../TestPartitionLevelTransitionConstraint.java    |   1 +
 .../integration/TestPartitionMovementThrottle.java |   5 +-
 .../apache/helix/integration/TestPauseSignal.java  |   1 +
 .../integration/TestPersistAssignmentStage.java    |   1 +
 .../integration/TestPreferenceListAsQueue.java     |   3 +-
 .../TestRebalancerPersistAssignments.java          |   1 +
 .../TestReelectedPipelineCorrectness.java          |   1 +
 .../helix/integration/TestRenamePartition.java     |   1 +
 .../helix/integration/TestResetInstance.java       |   1 +
 .../helix/integration/TestResetPartitionState.java |   1 +
 .../helix/integration/TestResetResource.java       |   1 +
 .../integration/TestResourceGroupEndtoEnd.java     |   1 +
 .../TestResourceWithSamePartitionKey.java          |   1 +
 .../apache/helix/integration/TestSchemataSM.java   |   1 +
 .../integration/TestSessionExpiryInTransition.java |   1 +
 .../helix/integration/TestStandAloneCMMain.java    |   1 +
 .../integration/TestStandAloneCMSessionExpiry.java |   1 +
 .../TestStartMultipleControllersWithSameName.java  |   1 +
 .../TestStateTransitionCancellation.java           |   1 +
 .../integration/TestStateTransitionThrottle.java   |   1 +
 .../apache/helix/integration/TestStatusUpdate.java |   1 +
 .../integration/TestWeightBasedRebalanceUtil.java  |   1 +
 .../integration/TestZkCallbackHandlerLeak.java     |   1 +
 .../helix/integration/TestZkSessionExpiry.java     |   3 +-
 .../integration/common/ZkStandAloneCMTestBase.java |   1 +
 .../controller/TestClusterMaintenanceMode.java     |   3 +-
 .../controller/TestControllerHistory.java          |   1 +
 .../controller/TestControllerLeadershipChange.java |   1 +
 .../controller/TestControllerLiveLock.java         |   1 +
 .../TestGenericHelixControllerThreading.java       |   1 +
 .../controller/TestRedundantDroppedMessage.java    |   1 +
 .../controller/TestTargetExternalView.java         |   1 +
 .../manager/ClusterControllerManager.java          |   1 +
 .../manager/ClusterDistributedController.java      |   1 +
 .../manager/MockParticipantManager.java            |   1 +
 .../manager/TestConsecutiveZkSessionExpiry.java    |   1 +
 .../integration/manager/TestControllerManager.java |   1 +
 .../manager/TestDistributedControllerManager.java  |   1 +
 .../integration/manager/TestHelixDataAccessor.java |   1 +
 .../manager/TestParticipantManager.java            |   1 +
 .../integration/manager/TestStateModelLeak.java    |   1 +
 .../integration/manager/TestZkHelixAdmin.java      |   1 +
 .../helix/integration/manager/ZkTestManager.java   |   1 +
 .../integration/messaging/TestBatchMessage.java    |  20 +-
 .../messaging/TestBatchMessageWrapper.java         |   1 +
 .../messaging/TestGroupCommitAddBackData.java      |   1 +
 .../integration/messaging/TestMessageThrottle.java |   1 +
 .../messaging/TestMessageThrottle2.java            |   1 +
 .../messaging/TestMessagingService.java            |   3 +-
 .../messaging/TestP2PMessageSemiAuto.java          |   1 +
 .../messaging/TestP2PNoDuplicatedMessage.java      |   1 +
 .../messaging/TestP2PSingleTopState.java           |   1 +
 .../messaging/TestSchedulerMessage.java            |   3 +-
 .../messaging/TestSchedulerMessage2.java           |   1 +
 .../messaging/TestSchedulerMsgContraints.java      |   1 +
 .../messaging/TestSchedulerMsgUsingQueue.java      |   1 +
 .../paticipant/TestInstanceHistory.java            |   1 +
 .../paticipant/TestNonOfflineInitState.java        |   1 +
 .../paticipant/TestParticipantErrorMessage.java    |   1 +
 .../paticipant/TestParticipantNameCollision.java   |   1 +
 .../paticipant/TestRestartParticipant.java         |   1 +
 .../paticipant/TestStateTransitionTimeout.java     |   1 +
 .../TestStateTransitionTimeoutWithResource.java    |   1 +
 .../CrushRebalancers/TestCrushAutoRebalance.java   |   1 +
 ...stCrushAutoRebalanceTopoplogyAwareDisabled.java |   1 +
 ...stDelayedAutoRebalanceWithDisabledInstance.java |   1 +
 .../PartitionMigration/TestExpandCluster.java      |   1 +
 .../PartitionMigration/TestFullAutoMigration.java  |   1 +
 .../rebalancer/TestAutoIsWithEmptyMap.java         |   1 +
 .../integration/rebalancer/TestAutoRebalance.java  |   1 +
 .../TestAutoRebalancePartitionLimit.java           |   1 +
 .../TestAutoRebalanceWithDisabledInstance.java     |   1 +
 ...rInMaintenanceModeWhenReachingMaxPartition.java |   1 +
 ...nanceModeWhenReachingOfflineInstancesLimit.java |   4 +-
 .../rebalancer/TestCustomIdealState.java           |   1 +
 .../rebalancer/TestCustomRebalancer.java           |   3 +-
 .../TestCustomizedIdealStateRebalancer.java        |   4 +-
 .../rebalancer/TestFullAutoNodeTagging.java        |   9 +-
 .../rebalancer/TestSemiAutoRebalance.java          |   1 +
 .../spectator/TestRoutingTableProvider.java        |   1 +
 .../TestRoutingTableProviderFromCurrentStates.java |   8 +-
 .../TestRoutingTableProviderPeriodicRefresh.java   |   1 +
 .../spectator/TestRoutingTableSnapshot.java        |   1 +
 .../apache/helix/integration/task/MockTask.java    |   1 +
 .../helix/integration/task/TaskTestUtil.java       |   1 +
 .../helix/integration/task/TestBatchAddJobs.java   |   1 +
 .../task/TestDisableJobExternalView.java           |   3 +-
 .../task/TestDropOnParticipantReset.java           |   1 +
 .../helix/integration/task/TestExecutionDelay.java |  11 --
 .../integration/task/TestForceDeleteWorkflow.java  |   5 +-
 .../helix/integration/task/TestGenericJobs.java    |   1 +
 .../task/TestIndependentTaskRebalancer.java        |   7 +-
 .../integration/task/TestJobAndWorkflowType.java   |   1 +
 .../helix/integration/task/TestJobFailure.java     |   5 +-
 .../integration/task/TestJobFailureDependence.java |   3 +-
 .../task/TestJobFailureTaskNotStarted.java         |   7 +-
 .../integration/task/TestJobQueueCleanUp.java      |   3 +-
 .../helix/integration/task/TestJobTimeout.java     |   3 +-
 .../task/TestJobTimeoutTaskNotStarted.java         |   3 +-
 .../helix/integration/task/TestNoDoubleAssign.java |   3 +-
 .../integration/task/TestQuotaBasedScheduling.java |   3 +-
 .../integration/task/TestRebalanceRunningTask.java |   5 +-
 .../integration/task/TestRecurringJobQueue.java    |   5 +-
 .../integration/task/TestRetrieveWorkflows.java    |   1 +
 .../task/TestRunJobsWithMissingTarget.java         |   3 +-
 .../helix/integration/task/TestRuntimeJobDag.java  |   1 +
 .../helix/integration/task/TestStopWorkflow.java   |  53 +++--
 .../task/TestStopWorkflowWithExecutionDelay.java   |   6 +-
 .../helix/integration/task/TestTaskAssignment.java |   1 +
 .../task/TestTaskAssignmentCalculator.java         |   5 +-
 .../integration/task/TestTaskConditionalRetry.java |   1 +
 .../integration/task/TestTaskErrorReporting.java   |   1 +
 .../helix/integration/task/TestTaskRebalancer.java |   5 +-
 .../task/TestTaskRebalancerFailover.java           |   3 +-
 .../task/TestTaskRebalancerParallel.java           |   1 +
 .../task/TestTaskRebalancerStopResume.java         |   9 +-
 .../helix/integration/task/TestTaskStopQueue.java  |   8 +-
 .../helix/integration/task/TestTaskThreadLeak.java |   1 +
 .../helix/integration/task/TestTaskThrottling.java |   3 +-
 .../helix/integration/task/TestUpdateWorkflow.java |   3 +-
 .../integration/task/TestUserContentStore.java     |   5 +-
 .../task/TestWorkflowContextWithoutConfig.java     | 132 +++++++++++++
 .../integration/task/TestWorkflowTermination.java  |   5 +-
 .../integration/task/TestWorkflowTimeout.java      |   3 +-
 .../helix/integration/task/WorkflowGenerator.java  |   1 +
 .../org/apache/helix/manager/MockListener.java     |   1 +
 .../manager/zk/TestAddBuiltInStateModelDef.java    |   1 +
 .../zk/TestDefaultControllerMsgHandlerFactory.java |   1 +
 .../apache/helix/manager/zk/TestRawZkClient.java   |   4 +-
 .../manager/zk/TestWtCacheAsyncOpMultiThread.java  |   1 +
 .../manager/zk/TestWtCacheAsyncOpSingleThread.java |   1 +
 .../manager/zk/TestWtCacheSyncOpSingleThread.java  |   1 +
 .../helix/manager/zk/TestZKLiveInstanceData.java   |   1 +
 .../org/apache/helix/manager/zk/TestZKUtil.java    |   6 +-
 .../helix/manager/zk/TestZNRecordSerializer.java   |   7 +-
 .../helix/manager/zk/TestZNRecordSizeLimit.java    |   1 +
 .../zk/TestZNRecordStreamingSerializer.java        |   5 +-
 .../helix/manager/zk/TestZkBaseDataAccessor.java   | 102 +++++++++-
 .../manager/zk/TestZkCacheAsyncOpSingleThread.java |   1 +
 .../helix/manager/zk/TestZkClusterManager.java     |   1 +
 .../apache/helix/manager/zk/TestZkFlapping.java    |   1 +
 .../apache/helix/manager/zk/TestZkReconnect.java   |   1 +
 .../serializer/TestJacksonPayloadSerializer.java   |   1 +
 .../apache/helix/messaging/TestAsyncCallback.java  |   1 +
 .../helix/messaging/TestAsyncCallbackSvc.java      |   1 +
 .../messaging/TestDefaultMessagingService.java     |   3 +-
 .../messaging/handling/MockHelixTaskExecutor.java  |   1 +
 .../handling/TestBatchMessageModeConfigs.java      |   1 +
 .../handling/TestConfigThreadpoolSize.java         |   3 +-
 .../messaging/handling/TestHelixTaskExecutor.java  |   3 +-
 .../handling/TestResourceThreadpoolSize.java       |   1 +
 .../messaging/p2pMessage/TestP2PMessages.java      |   1 +
 .../TestP2PMessagesAvoidDuplicatedMessage.java     |   3 +-
 .../p2pMessage/TestP2PStateTransitionMessages.java |   3 +-
 .../TestP2PWithStateCancellationMessage.java       |   4 +-
 .../apache/helix/mock/MockBaseDataAccessor.java    |   4 +
 .../helix/mock/MockClusterMessagingService.java    |   1 +
 .../java/org/apache/helix/mock/MockHelixAdmin.java |   1 +
 .../java/org/apache/helix/mock/MockManager.java    |   1 +
 .../java/org/apache/helix/mock/MockZkClient.java   |   1 +
 .../apache/helix/mock/MockZkHelixDataAccessor.java |   1 +
 .../mock/controller/MockControllerProcess.java     |   1 +
 .../helix/mock/participant/ErrTransition.java      |   1 +
 .../mock/participant/MockHelixTaskExecutor.java    |   1 +
 .../helix/mock/spectator/MockSpectatorProcess.java |   1 +
 .../helix/mock/statemodel/MockTaskStateModel.java  |   1 +
 .../mock/statemodel/MockTaskStateModelFactory.java |   1 +
 .../org/apache/helix/model/TestConstraint.java     |   1 +
 .../org/apache/helix/model/TestIdealState.java     |   1 +
 .../apache/helix/model/TestStateModelValidity.java |   3 +-
 .../monitoring/TestClusterEventStatusMonitor.java  |   1 +
 .../TestClusterStatusMonitorLifecycle.java         |   8 +-
 .../helix/monitoring/TestParticipantMonitor.java   |   8 +-
 .../helix/monitoring/TestWorkflowMonitor.java      |   1 +
 .../helix/monitoring/TestZKPathDataDumpTask.java   |   1 +
 .../mbeans/TestClusterAggregateMetrics.java        |   1 +
 .../mbeans/TestClusterStatusMonitor.java           |   1 -
 .../mbeans/TestDisableResourceMbean.java           |   1 +
 .../mbeans/TestDropResourceMetricsReset.java       |  18 +-
 .../mbeans/TestHelixCallbackMonitor.java           |   1 +
 .../monitoring/mbeans/TestInstanceMonitor.java     |   1 -
 .../monitoring/mbeans/TestRebalancerMetrics.java   |   3 +-
 .../monitoring/mbeans/TestResetClusterMetrics.java |   1 +
 .../monitoring/mbeans/TestResourceMonitor.java     |   1 +
 .../mbeans/TestRoutingTableProviderMonitor.java    |  14 +-
 .../mbeans/TestTaskPerformanceMetrics.java         |  26 ++-
 .../mbeans/TestTopStateHandoffMetrics.java         |   3 +-
 .../monitoring/mbeans/TestZkClientMonitor.java     |  17 +-
 .../helix/participant/MockZKHelixManager.java      |   1 +
 .../statemachine/TestStateModelParser.java         |   1 +
 .../helix/spectator/TestRoutingDataCache.java      |  45 +++++
 .../org/apache/helix/store/TestJsonComparator.java |   1 +
 .../store/zk/TestAutoFallbackPropertyStore.java    |   1 +
 .../helix/store/zk/TestZkHelixPropertyStore.java   |   1 +
 .../zk/TestZkManagerWithAutoFallbackStore.java     |   1 +
 .../helix/task/TaskSynchronizedTestBase.java       |   1 +
 .../helix/task/TestAssignableInstanceManager.java  |   1 +
 ...tAssignableInstanceManagerControllerSwitch.java |   3 +-
 .../apache/helix/task/TestCleanExpiredJobs.java    |   1 +
 .../helix/task/TestDropTerminalTasksUponReset.java |   4 +-
 .../task/TestGetLastScheduledTaskExecInfo.java     |  99 +++++++---
 .../helix/task/TestGetSetUserContentStore.java     |   1 +
 .../apache/helix/task/TestJobStateOnCreation.java  |   3 +-
 .../helix/task/TestSemiAutoStateTransition.java    |   1 +
 .../helix/task/TestTaskCreateThrottling.java       |   1 +
 .../helix/task/assigner/AssignerTestBase.java      |   1 +
 .../task/assigner/TestAssignableInstance.java      |   1 +
 .../assigner/TestThreadCountBasedTaskAssigner.java |   1 +
 .../TestStrictMatchExternalViewVerifier.java       |   1 +
 .../org/apache/helix/tools/TestClusterSetup.java   |   1 +
 .../helix/tools/TestClusterStateVerifier.java      |   3 +-
 .../apache/helix/tools/TestClusterVerifier.java    |  15 +-
 .../org/apache/helix/tools/TestHelixAdminCli.java  |   1 +
 .../java/org/apache/helix/tools/TestZkCopy.java    |   1 +
 .../helix/util/TestIdealStateAssignment.java       |   1 +
 .../org/apache/helix/util/TestInputLoader.java     |   1 +
 .../helix/util/TestInstanceValidationUtil.java     |  13 +-
 .../apache/helix/util/TestRebalanceScheduler.java  |   1 +
 .../org/apache/helix/util/TestZKClientPool.java    |   1 +
 .../helix/rest/client/CustomRestClientImpl.java    |   7 +-
 .../apache/helix/rest/server/HelixRestMain.java    |   1 +
 .../apache/helix/rest/server/HelixRestServer.java  |   1 +
 .../apache/helix/rest/server/ServerContext.java    |  38 +++-
 .../helix/rest/server/auditlog/AuditLog.java       |   1 +
 .../helix/rest/server/filters/AuditLogFilter.java  |   3 +-
 .../rest/server/json/cluster/ClusterInfo.java      |   3 +-
 .../rest/server/json/cluster/ClusterTopology.java  |   4 +-
 .../rest/server/json/instance/InstanceInfo.java    |   5 +-
 .../rest/server/resources/AbstractResource.java    |   1 +
 .../resources/helix/AbstractHelixResource.java     |  14 +-
 .../server/resources/helix/ClusterAccessor.java    |   6 +-
 .../server/resources/helix/InstancesAccessor.java  |   1 +
 .../rest/server/resources/helix/JobAccessor.java   |   1 +
 .../server/resources/helix/MetadataAccessor.java   |   1 +
 .../resources/helix/PerInstanceAccessor.java       |  27 ++-
 .../resources/helix/PropertyStoreAccessor.java     |  94 +++++++++
 .../server/resources/helix/ResourceAccessor.java   |   5 +-
 .../rest/server/resources/helix/TaskAccessor.java  |   1 +
 .../server/resources/helix/WorkflowAccessor.java   |   1 +
 .../resources/metadata/NamespacesAccessor.java     |   1 +
 .../rest/server/service/ClusterServiceImpl.java    |   2 +-
 .../helix/rest/server/service/InstanceService.java |   8 +-
 .../rest/server/service/InstanceServiceImpl.java   |   9 +-
 .../helix/rest/client/TestCustomRestClient.java    |  12 +-
 .../rest/common/TestHelixDataAccessorWrapper.java  |  29 ++-
 .../helix/rest/server/AbstractTestClass.java       |   4 +-
 .../helix/rest/server/TestClusterAccessor.java     |   6 +-
 .../rest/server/TestDefaultMonitoringMbeans.java   |   1 -
 .../helix/rest/server/TestHelixRestServer.java     |   1 +
 .../helix/rest/server/TestInstancesAccessor.java   |  10 +-
 .../apache/helix/rest/server/TestJobAccessor.java  |   4 +-
 .../helix/rest/server/TestNamespacedAPIAccess.java |   5 +-
 .../helix/rest/server/TestPerInstanceAccessor.java |   6 +-
 .../rest/server/TestPropertyStoreAccessor.java     | 117 +++++++++++
 .../helix/rest/server/TestResourceAccessor.java    |   4 +-
 .../apache/helix/rest/server/TestTaskAccessor.java |   3 +-
 .../helix/rest/server/TestWorkflowAccessor.java    |   4 +-
 .../rest/server/json/cluster/TestClusterInfo.java  |   5 +-
 .../server/json/cluster/TestClusterTopology.java   |   5 +-
 .../server/json/instance/TestStoppableCheck.java   |   5 +-
 .../rest/server/service/TestClusterService.java    |   7 +-
 .../rest/server/service/TestInstanceService.java   |  17 +-
 .../rest/server/util/JerseyUriRequestBuilder.java  |  10 +-
 .../server/util/TestInstanceValidationUtil.java    |   4 +-
 .../helix/recipes/rabbitmq/ConsumerStateModel.java |   5 +-
 .../helix/filestore/FileStoreStateModel.java       |   2 +-
 .../apache/helix/taskexecution/TaskCluster.java    |   2 +-
 .../helix/taskexecution/TaskExecutionDemo.java     |   4 +-
 .../apache/helix/taskexecution/TaskStateModel.java |   7 +-
 575 files changed, 2533 insertions(+), 1111 deletions(-)
 create mode 100644 helix-core/src/test/java/org/apache/helix/integration/task/TestWorkflowContextWithoutConfig.java
 create mode 100644 helix-rest/src/main/java/org/apache/helix/rest/server/resources/helix/PropertyStoreAccessor.java
 create mode 100644 helix-rest/src/test/java/org/apache/helix/rest/server/TestPropertyStoreAccessor.java


Mime
View raw message