helix-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From hu...@apache.org
Subject [helix] branch zooscalability updated (d750b09 -> c929cae)
Date Wed, 12 Feb 2020 02:52:20 GMT
This is an automated email from the ASF dual-hosted git repository.

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


    omit d750b09  Add REST read endpoints to Helix Rest to provide resource access to metadata store directory (#744)
    omit c436392  Add MetadataStoreRoutingDataWriter with DistributedLeaderElection (#727)
    omit 494f5a1  Add TrieRoutingData constructor (#731)
    omit ce14139  Add MetadataStoreDirectory and ZkMetadataStoreDirectory (#720)
    omit 14afdbe  Add MetadataStoreRoutingDataReader interface and ZkRoutingDataReader class to helix-rest (#714)
    omit bc033f1  Add MockMetadataStoreDirectoryServer (#719)
    omit 76d6260  Upgrade ZkTestBase with multi-ZK support in helix-core (#712)
    omit 2bd9a34  Upgrade AbstractTestClass with multi-ZK support in helix-rest (#717)
    omit 643f154  Enable two test runs with multiZk system property (#710)
    omit 8f44113  Integration test for controller connect and disconnect (#681)
    omit 3e10668  Bump jackson-databind from 2.9.5 to 2.9.10.1 in /helix-rest (#597)
    omit bba0142  Add MetadataStoreRoutingData interface and TrieRoutingData class to helix-rest
     add 48cabc5  Bump jackson-databind from 2.9.5 to 2.9.10.1 in /helix-rest (#597)
     add db2e373  Integration test for controller connect and disconnect (#681)
     add ecf6bb8  Add workflow garbage collector  (#705)
     add bee3ed2  Merge Waged rebalancer branch code to master. (#724)
     add 2676f13  Revert "Merge Waged rebalancer branch code to master. (#724)"
     add aed6d7e  Define the WAGED rebalancer interfaces.
     add 786d238  Adding the configuration items of the WAGED rebalancer. (#348)
     add 253851a  Implement the WAGED rebalancer cluster model (#362)
     add 41aee1b  Change the rebalancer assignment record to be ResourceAssignment instead of IdealState. (#398)
     add d4d4941  Convert all the internal assignment state objects to be ResourceAssignment. (#399)
     add 28b65aa  Implement Cluster Model Provider. (#392)
     add f93aeb5  Add cluster level default instance config. (#413)
     add 4372acf  Add ChangeDetector interface and ResourceChangeDetector implementation (#388)
     add bc6d6f0  Redefine the hard/soft constraints (#422)
     add 73e8336  Refine the WAGED rebalancer related interfaces for integration (#431)
     add 3995879  Revert "Refine the WAGED rebalancer related interfaces for integration (#431)" (#437)
     add b273df4  Resubmit the change: Refine the WAGED rebalancer related interfaces for integration (#431)
     add 8cbfdce  Modify the expected change type from CONFIG to CLUSTER_CONFIG in the WAGED rebalancer. (#438)
     add ff82c34  Add special treatment for ClusterConfig
     add 27630a9  Record the replica objects in the AssignableNode in addition to the partition name (#440)
     add eb437c9  Add BucketDataAccessor for large writes
     add cf8520a  Implement the basic constraint based algorithm (#381)
     add 0895c0d  Validate the instance capacity/partition weight configuration while constructing the assignable instances (#451)
     add 34a2cf8  Implement the WAGED rebalancer with the limited functionality. (#443)
     add dd80b9e  HardConstraints Implementation and unit tests (#433)
     add a4010e2  Implement AssignmentMetadataStore (#453)
     add 63b45ff  Fix TestWagedRebalancer and add constructor in AssignmentMetadataStore
     add cf7b7a5  Implement one of the soft constraints (#450)
     add e49d26b  Add soft constraint: ResourcetopStateAntiAffinityConstraint (#465)
     add 536062d  Implement MaxCapacityUsageInstanceConstraint soft constraint (#463)
     add a07296a  Add soft constraint: ResourcePartitionAntiAffinityConstraint (#464)
     add de800d7  Improve ResourceTopStateAntiAffinityConstraint (#475)
     add 7a34f2c  Adjust the expected replica count according to fault zone count. (#476)
     add d2ffd00  PartitionMovementSoftConstraint Implementation (#474)
     add dcc4862  Add the remaining implementation of ConstraintBasedAlgorithmFactory (#478)
     add 3e0554b  Integrate the WAGED rebalancer with all the related components. (#466)
     add 7bb7f57  Separate AssignableNode properties by Immutable and Mutable (#485)
     add 71948ec  Add delayed rebalance and user-defined preference list features to the WAGED rebalancer. (#456)
     add 95a55d6  Enable maintenance mode for the WAGED rebalancer.
     add 43a9bce  Adjust the topology processing logic for instance to ensure backward compatibility.
     add 081b3f2  Load soft constraint weight from resources/properties file (#492)
     add 359d6de  Add latency metric components for WAGED rebalancer (#490)
     add b287fb5  Fixing rebalance cache issue and stablize the tests. (#510)
     add a318890  More strict partition weight validation while creating the cluster model. (#511)
     add 08bc164  Increase parallelism for ZkBucketDataAccessor (#506)
     add bc2d0cf  The WAGED rebalancer returns the previously calculated assignment on calculation failure (#514)
     add 2d1e8cf  Make log clearer after finishing calculateAssignment. (#531)
     add 285318a  Implement monitoring mbeans for the WAGED rebalancer. (#525)
     add afb19a1  Refine the rebalance scope calculating logic in the WAGED rebalancer. (#519)
     add b63a895  Make WagedRebalancer static by creating a ThreadLocal (#540)
     add f48f4d2  Change change detector to a regular field in the WAGED rebalancer instead of static threadlocal. (#543)
     add 3f237df  Refactor soft constraints to simply the algorithm and fix potential issues. (#520)
     add cd3de5a  Minor fix for the constraints related tests. (#545)
     add dcda863  Adjust the replica rebalance calculating ordering to avoid static order. (#535)
     add e27c6fa  Implement increment() method in CountMetric class. (#537)
     add f7df84c  Modify the ivy file to add the new math3 lib dependency. (#546)
     add 6e37673  Fix a missing parameter when the WAGED rebalancer init the change detector. (#547)
     add 76e0fc0  Add the new Rebalancer monitor domain to the active domain list. (#550)
     add dc40825  Refine ivy file config. The org were not configured correctly. (#551)
     add e5e3689  Use a deep copy of the new best possible assignment for measuring baseline divergence. (#542)
     add 2b3f9fa  Add max capacity usage metric for instance monitor. (#548)
     add c2b7ac7  Fix formula incorrection in the comment for measuring baseline divergence. (#559)
     add ae22186  Avoid redundant writes in AssignmentMetadataStore (#564)
     add 5691d3a  Filter resource map with ideal states for instance capacity metrics. (#574)
     add 0b1b337  Introduce Dry-run Waged Rebalancer for the verifiers and tests. (#573)
     add e93e050  Change ClusterConfig.setDefaultCapacityMap to be private. (#590)
     add 8a8478a  Add Java API for adding and validating resources for WAGED rebalancer (#570)
     add edc8a86  Change calculation for baseline divergence. (#598)
     add 435360f  Improve the WAGED rebalancer performance. (#586)
     add f4b67ae  Fix the unstable test TestZeroReplicaAvoidance. (#603)
     add 37fd496  Add REST API endpoints for WAGED Rebalancer (#611)
     add 6dbc725  Fix a potential issue in the ResourceChangeSnapshot. (#635)
     add 4c48d02  Simply and enhance the RebalanceLatencyGauge so it can be used in multi-threads. (#636)
     add 30695f0  Add new WAGED rebalancer config item "GLOBAL_REBALANCE_ASYNC_MODE". (#637)
     add a2771cb  Decouple the event type and the scheduled rebalance cache refresh option. (#638)
     add 75904ef  Improve the algorithm so it prioritizes the assignment to the idle nodes when the constraint evaluation results are the same (#651)
     add 39f3959  Refine the WAGED rebalancer to minimize the partial rebalance workload. (#639)
     add adfaf4e  Refine methods name and comments. (#664)
     add 6b73653  Asynchronously calculating the Baseline (#632)
     add fe4ecb8  Reorgnize the test case so the new WAGED expand cluster tests are not skipped. (#670)
     add a1557df  Fix the Helix rest tests by cleaning up the environment before testing. (#679)
     add feb2562  Add instance capacity gauge (#557)
     add eb40e15  Add resource partition weight gauge (#686)
     add 71c79fd  Add WAGED rebalancer reset method to clean up cached status. (#696)
     add ec3568d  Reset the WAGED rebalancer once the controller newly acquires leadership. (#690)
     add 85f246a  Fix the watcher leakage issue (#688)
     add 637e943  Fix the unstable test TestWagedRebalance.testRebalancerReset. (#735)
     add 2ba469d  Change the WAGED rebalancer missing error log to warning. (#740)
     add b227b3b  Add metrics-common, zookeeper-api, helix-common modules (#684)
     new 39692a6  Add MetadataStoreRoutingData interface and TrieRoutingData class to helix-rest
     new 9c14eeb  Enable two test runs with multiZk system property (#710)
     new 213d43d  Upgrade AbstractTestClass with multi-ZK support in helix-rest (#717)
     new 5b54328  Upgrade ZkTestBase with multi-ZK support in helix-core (#712)
     new 81dee2b  Add MockMetadataStoreDirectoryServer (#719)
     new 4caae64  Add MetadataStoreRoutingDataReader interface and ZkRoutingDataReader class to helix-rest (#714)
     new a1be1b3  Add MetadataStoreDirectory and ZkMetadataStoreDirectory (#720)
     new 6b62f0d  Add TrieRoutingData constructor (#731)
     new bba1990  Add MetadataStoreRoutingDataWriter with DistributedLeaderElection (#727)
     new dc8a496  Add REST read endpoints to Helix Rest to provide resource access to metadata store directory (#744)
     new c929cae  Rebase ZooScalability from upstream master

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   (d750b09)
            \
             N -- N -- N   refs/heads/zooscalability (c929cae)

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 11 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:
 bump-up.command                                    |   35 +
 helix-admin-webapp/pom.xml                         |    3 +
 .../org/apache/helix/webapp/HelixAdminWebApp.java  |    2 +-
 .../resources/ClusterRepresentationUtil.java       |    4 +-
 .../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  |    2 +-
 .../webapp/resources/CurrentStateResource.java     |    2 +-
 .../webapp/resources/CurrentStatesResource.java    |    2 +-
 .../helix/webapp/resources/ErrorResource.java      |    2 +-
 .../helix/webapp/resources/ErrorsResource.java     |    2 +-
 .../webapp/resources/ExternalViewResource.java     |    2 +-
 .../helix/webapp/resources/IdealStateResource.java |    4 +-
 .../helix/webapp/resources/InstanceResource.java   |    2 +-
 .../helix/webapp/resources/InstancesResource.java  |    4 +-
 .../helix/webapp/resources/JobQueueResource.java   |    4 +-
 .../helix/webapp/resources/JobQueuesResource.java  |    4 +-
 .../apache/helix/webapp/resources/JobResource.java |    4 +-
 .../helix/webapp/resources/JsonParameters.java     |    2 +-
 .../webapp/resources/ResourceGroupResource.java    |    2 +-
 .../webapp/resources/ResourceGroupsResource.java   |    4 +-
 .../helix/webapp/resources/ResourceUtil.java       |    2 +-
 .../webapp/resources/SchedulerTasksResource.java   |    2 +-
 .../helix/webapp/resources/StateModelResource.java |    4 +-
 .../webapp/resources/StateModelsResource.java      |    4 +-
 .../webapp/resources/StatusUpdateResource.java     |    2 +-
 .../webapp/resources/StatusUpdatesResource.java    |    2 +-
 .../helix/webapp/resources/WorkflowsResource.java  |    4 +-
 .../helix/webapp/resources/ZkChildResource.java    |    4 +-
 .../helix/webapp/resources/ZkPathResource.java     |    4 +-
 .../org/apache/helix/webapp/AdminTestBase.java     |    4 +-
 .../org/apache/helix/webapp/AdminTestHelper.java   |    2 +-
 .../helix/webapp/TestClusterManagementWebapp.java  |    2 +-
 .../apache/helix/webapp/TestDisableResource.java   |    2 +-
 .../helix/webapp/TestHelixAdminScenariosRest.java  |    2 +-
 .../helix/webapp/TestResetPartitionState.java      |    2 +-
 .../webapp/resources/TestJobQueuesResource.java    |    2 +-
 helix-common/LICENSE                               |  270 +++
 helix-common/NOTICE                                |   37 +
 .../helix-common-0.9.2-SNAPSHOT.ivy                |   37 +-
 {helix-admin-webapp => helix-common}/pom.xml       |   78 +-
 helix-common/src/assemble/assembly.xml             |   60 +
 .../main/java/org/apache/helix/HelixException.java |    0
 .../java/org/apache/helix/SystemPropertyKeys.java  |   19 +
 .../src/main/java/org/apache/helix/ZNRecord.java   |   30 +-
 .../main/java/org/apache/helix/ZNRecordDelta.java  |   11 +-
 .../zk/serializer/JacksonPayloadSerializer.java    |   15 +-
 .../manager/zk/serializer/PayloadSerializer.java   |   15 +-
 helix-common/src/test/conf/testng.xml              |   27 +
 .../src/test/resources/log4j.properties            |    0
 helix-core/helix-core-0.9.2-SNAPSHOT.ivy           |    2 +-
 helix-core/pom.xml                                 |   18 +-
 .../java/org/apache/helix/BaseDataAccessor.java    |    6 +-
 ...edZkSerializer.java => BucketDataAccessor.java} |   37 +-
 .../main/java/org/apache/helix/ConfigAccessor.java |    5 +-
 .../main/java/org/apache/helix/GroupCommit.java    |   14 +-
 .../src/main/java/org/apache/helix/HelixAdmin.java |   47 +
 .../java/org/apache/helix/HelixDataAccessor.java   |   11 +-
 .../main/java/org/apache/helix/HelixManager.java   |    2 +
 .../main/java/org/apache/helix/HelixProperty.java  |   20 +-
 ...Exception.java => HelixRebalanceException.java} |   29 +-
 .../main/java/org/apache/helix/InstanceType.java   |    6 +-
 .../org/apache/helix/LiveInstanceInfoProvider.java |    3 +
 .../java/org/apache/helix/SystemPropertyKeys.java  |   21 +
 .../java/org/apache/helix/ZNRecordAssembler.java   |   29 +-
 .../java/org/apache/helix/ZNRecordBucketizer.java  |   97 +-
 .../java/org/apache/helix/ZNRecordUpdater.java     |   20 +-
 .../apache/helix/api/config/RebalanceConfig.java   |    2 +-
 .../api/config/StateTransitionTimeoutConfig.java   |    2 +-
 .../org/apache/helix/api/listeners/PreFetch.java   |    5 +-
 .../apache/helix/common/DedupEventProcessor.java   |    2 +-
 .../apache/helix/common/caches/TaskDataCache.java  |    2 +-
 .../helix/controller/ExternalViewGenerator.java    |    2 +-
 .../helix/controller/GenericHelixController.java   |  131 +-
 .../helix/controller/HelixControllerMain.java      |    2 +-
 .../helix/controller/HierarchicalDataHolder.java   |    2 +-
 .../controller/changedetector/ChangeDetector.java  |   57 +
 .../changedetector/ResourceChangeDetector.java     |  199 ++
 .../changedetector/ResourceChangeSnapshot.java     |  157 ++
 .../ResourceControllerDataProvider.java            |   36 +-
 .../WorkflowControllerDataProvider.java            |    2 +-
 .../controller/rebalancer/AbstractRebalancer.java  |    2 +-
 .../controller/rebalancer/AutoRebalancer.java      |    2 +-
 .../rebalancer/DelayedAutoRebalancer.java          |  205 +-
 .../controller/rebalancer/StatefulRebalancer.java  |   37 +
 .../dataprovider/ZkBasedCapacityProvider.java      |    2 +-
 .../ZkBasedPartitionWeightProvider.java            |    2 +-
 .../AbstractEvenDistributionRebalanceStrategy.java |    2 +-
 .../rebalancer/strategy/AutoRebalanceStrategy.java |    2 +-
 .../strategy/ConstraintRebalanceStrategy.java      |    2 +-
 .../strategy/CrushRebalanceStrategy.java           |    2 +-
 .../strategy/MultiRoundCrushRebalanceStrategy.java |    2 +-
 .../rebalancer/strategy/RebalanceStrategy.java     |    2 +-
 .../rebalancer/util/DelayedRebalanceUtil.java      |  267 +++
 .../rebalancer/util/ResourceUsageCalculator.java   |  192 ++
 .../rebalancer/util/WagedValidationUtil.java       |   91 +
 .../rebalancer/waged/AssignmentMetadataStore.java  |  212 ++
 .../rebalancer/waged/RebalanceAlgorithm.java       |   43 +
 .../rebalancer/waged/WagedRebalancer.java          |  787 +++++++
 .../constraints/ConstraintBasedAlgorithm.java      |  228 +++
 .../ConstraintBasedAlgorithmFactory.java           |   82 +
 .../constraints/FaultZoneAwareConstraint.java}     |   25 +-
 .../waged/constraints/HardConstraint.java          |   47 +
 .../InstancePartitionsCountConstraint.java         |   41 +
 .../MaxCapacityUsageInstanceConstraint.java        |   42 +
 .../waged/constraints/NodeCapacityConstraint.java  |   50 +
 .../NodeMaxPartitionLimitConstraint.java           |   43 +
 .../constraints/PartitionMovementConstraint.java   |   96 +
 .../constraints/ReplicaActivateConstraint.java}    |   23 +-
 .../ResourcePartitionAntiAffinityConstraint.java   |   43 +
 .../ResourceTopStateAntiAffinityConstraint.java    |   44 +
 .../SamePartitionOnInstanceConstraint.java}        |   24 +-
 .../waged/constraints/SoftConstraint.java          |   90 +
 .../waged/constraints/UsageSoftConstraint.java     |   85 +
 .../constraints/ValidGroupTagConstraint.java}      |   28 +-
 .../rebalancer/waged/model/AssignableNode.java     |  374 ++++
 .../rebalancer/waged/model/AssignableReplica.java  |  161 ++
 .../rebalancer/waged/model/ClusterContext.java     |  172 ++
 .../rebalancer/waged/model/ClusterModel.java       |  132 ++
 .../waged/model/ClusterModelProvider.java          |  532 +++++
 .../rebalancer/waged/model/OptimalAssignment.java  |   93 +
 .../helix/controller/stages/AttributeName.java     |    3 +-
 .../stages/BestPossibleStateCalcStage.java         |  180 +-
 .../helix/controller/stages/ClusterDataCache.java  |    2 +-
 .../stages/CurrentStateComputationStage.java       |   75 +
 .../controller/stages/CurrentStateOutput.java      |   23 +
 .../stages/ExternalViewComputeStage.java           |    7 +-
 .../controller/stages/PersistAssignmentStage.java  |    4 +-
 .../stages/TaskGarbageCollectionStage.java         |    2 +
 .../controller/strategy/AutoRebalanceStrategy.java |    2 +-
 .../org/apache/helix/examples/ExampleHelper.java   |    8 +-
 .../helix/examples/IdealStateBuilderExample.java   |    5 +-
 .../apache/helix/examples/IdealStateExample.java   |    5 +-
 .../java/org/apache/helix/examples/Quickstart.java |    7 +-
 .../examples/WeightAwareRebalanceUtilExample.java  |   22 +-
 .../ParticipantHealthReportCollector.java          |    2 +-
 .../ParticipantHealthReportCollectorImpl.java      |    2 +-
 .../apache/helix/manager/zk/BasicZkSerializer.java |   26 +-
 .../helix/manager/zk/ByteArraySerializer.java      |    5 +-
 .../apache/helix/manager/zk/CallbackHandler.java   |   10 +-
 .../helix/manager/zk/ChainedPathZkSerializer.java  |    5 +-
 .../helix/manager/zk/ControllerManagerHelper.java  |    2 +-
 .../helix/manager/zk/CurStateCarryOverUpdater.java |    4 +-
 .../zk/DefaultSchedulerMessageHandlerFactory.java  |    2 +-
 .../manager/zk/DistributedLeaderElection.java      |    2 +-
 .../apache/helix/manager/zk/HelixGroupCommit.java  |    6 +-
 .../helix/manager/zk/ParticipantManager.java       |   11 +-
 .../helix/manager/zk/PathBasedZkSerializer.java    |   28 +-
 .../apache/helix/manager/zk/WriteThroughCache.java |    2 +-
 .../helix/manager/zk/ZKExceptionHandler.java       |    2 +-
 .../org/apache/helix/manager/zk/ZKHelixAdmin.java  |  312 ++-
 .../helix/manager/zk/ZKHelixDataAccessor.java      |   12 +-
 .../apache/helix/manager/zk/ZKHelixManager.java    |   14 +-
 .../java/org/apache/helix/manager/zk/ZKUtil.java   |    8 +-
 ...ializer.java => ZNRecordJacksonSerializer.java} |   22 +-
 .../helix/manager/zk/ZNRecordSerializer.java       |  116 +-
 .../manager/zk/ZNRecordStreamingSerializer.java    |  293 +--
 .../apache/helix/manager/zk/ZkAsyncCallbacks.java  |  176 +-
 .../helix/manager/zk/ZkBaseDataAccessor.java       |   93 +-
 .../helix/manager/zk/ZkBucketDataAccessor.java     |  380 ++++
 .../helix/manager/zk/ZkCacheBaseDataAccessor.java  |   22 +-
 .../helix/manager/zk/ZkCacheEventThread.java       |    2 +-
 .../apache/helix/manager/zk/ZkCallbackCache.java   |    6 +-
 .../java/org/apache/helix/manager/zk/ZkClient.java |   15 +-
 .../manager/zk/ZkSessionMismatchedException.java   |   18 -
 .../zk/client/DedicatedZkClientFactory.java        |   50 +-
 .../helix/manager/zk/client/HelixZkClient.java     |  441 +---
 .../manager/zk/client/HelixZkClientFactory.java    |   46 -
 .../helix/manager/zk/client/SharedZkClient.java    |  109 +-
 .../manager/zk/client/SharedZkClientFactory.java   |  102 +-
 .../manager/zk/client/ZkConnectionManager.java     |  120 +-
 .../manager/zk/zookeeper/IZkStateListener.java     |   43 +-
 .../helix/manager/zk/zookeeper/ZkClient.java       | 2145 +-------------------
 .../helix/manager/zk/zookeeper/ZkConnection.java   |  174 +-
 .../org/apache/helix/messaging/ZNRecordRow.java    |    2 +-
 .../handling/HelixStateTransitionHandler.java      |    8 +-
 .../java/org/apache/helix/model/AlertHistory.java  |    2 +-
 .../java/org/apache/helix/model/AlertStatus.java   |    2 +-
 .../main/java/org/apache/helix/model/Alerts.java   |    2 +-
 .../java/org/apache/helix/model/ClusterConfig.java |  230 ++-
 .../org/apache/helix/model/ClusterConstraints.java |    2 +-
 .../org/apache/helix/model/ControllerHistory.java  |    2 +-
 .../java/org/apache/helix/model/CurrentState.java  |    2 +-
 .../main/java/org/apache/helix/model/Error.java    |    2 +-
 .../java/org/apache/helix/model/ExternalView.java  |    2 +-
 .../java/org/apache/helix/model/HealthStat.java    |    2 +-
 .../java/org/apache/helix/model/IdealState.java    |    2 +-
 .../org/apache/helix/model/InstanceConfig.java     |   54 +-
 .../org/apache/helix/model/LeaderStandbySMD.java   |    2 +-
 .../java/org/apache/helix/model/LiveInstance.java  |    2 +-
 .../org/apache/helix/model/MaintenanceSignal.java  |    2 +-
 .../org/apache/helix/model/MasterSlaveSMD.java     |    2 +-
 .../main/java/org/apache/helix/model/Message.java  |    2 +-
 .../org/apache/helix/model/OnlineOfflineSMD.java   |    2 +-
 .../org/apache/helix/model/ParticipantHistory.java |    2 +-
 .../java/org/apache/helix/model/PauseSignal.java   |    2 +-
 .../org/apache/helix/model/PersistentStats.java    |    2 +-
 .../java/org/apache/helix/model/RESTConfig.java    |    2 +-
 .../org/apache/helix/model/ResourceAssignment.java |    2 +-
 .../org/apache/helix/model/ResourceConfig.java     |  131 +-
 .../org/apache/helix/model/ScheduledTaskSMD.java   |    2 +-
 .../apache/helix/model/StateModelDefinition.java   |    7 +-
 .../java/org/apache/helix/model/StatusUpdate.java  |    2 +-
 .../org/apache/helix/model/StorageSchemataSMD.java |    2 +-
 .../main/java/org/apache/helix/model/TaskSMD.java  |    2 +-
 .../helix/model/builder/IdealStateBuilder.java     |    2 +-
 .../helix/monitoring/ZKPathDataDumpTask.java       |    2 +-
 .../monitoring/mbeans/ClusterStatusMonitor.java    |   92 +-
 .../helix/monitoring/mbeans/InstanceMonitor.java   |  192 +-
 .../monitoring/mbeans/InstanceMonitorMBean.java    |   51 -
 .../monitoring/mbeans/MonitorDomainNames.java      |    3 +-
 .../helix/monitoring/mbeans/ResourceMonitor.java   |   99 +-
 .../helix/monitoring/mbeans/ZkClientMonitor.java   |  231 +--
 .../monitoring/mbeans/ZkClientPathMonitor.java     |  228 +--
 .../mbeans/dynamicMBeans/DynamicMBeanProvider.java |   78 +-
 .../mbeans/dynamicMBeans/SimpleDynamicMetric.java  |    2 +-
 .../helix/monitoring/metrics/MetricCollector.java  |   99 +
 .../metrics/WagedRebalancerMetricCollector.java    |  125 ++
 .../implementation/BaselineDivergenceGauge.java    |   68 +
 .../metrics/implementation/RebalanceCounter.java}  |   21 +-
 .../implementation/RebalanceFailureCount.java}     |   23 +-
 .../implementation/RebalanceLatencyGauge.java      |   89 +
 .../monitoring/metrics/model/CountMetric.java      |   69 +
 .../monitoring/metrics/model/LatencyMetric.java    |   67 +
 .../metrics/model/Metric.java}                     |   36 +-
 .../model/RatioMetric.java}                        |   46 +-
 .../helix/participant/HelixCustomCodeRunner.java   |   26 +-
 .../statemachine/ScheduledTaskStateModel.java      |    2 +-
 .../apache/helix/store/PropertyJsonSerializer.java |    2 +-
 .../apache/helix/store/ZNRecordJsonSerializer.java |    2 +-
 .../helix/store/zk/AutoFallbackPropertyStore.java  |    2 +-
 .../helix/store/zk/ZkHelixPropertyStore.java       |    3 +-
 .../helix/task/DeprecatedTaskRebalancer.java       |    4 +-
 .../java/org/apache/helix/task/JobContext.java     |    2 +-
 .../java/org/apache/helix/task/JobDispatcher.java  |    2 +-
 .../java/org/apache/helix/task/TaskDriver.java     |    6 +-
 .../main/java/org/apache/helix/task/TaskUtil.java  |   48 +-
 .../org/apache/helix/task/WorkflowContext.java     |    2 +-
 .../org/apache/helix/task/WorkflowDispatcher.java  |    2 +-
 .../helix/tools/ClusterExternalViewVerifier.java   |    2 +-
 .../helix/tools/ClusterLiveNodesVerifier.java      |    2 +-
 .../java/org/apache/helix/tools/ClusterSetup.java  |    8 +-
 .../apache/helix/tools/ClusterStateVerifier.java   |   14 +-
 .../org/apache/helix/tools/ClusterVerifier.java    |    8 +-
 .../BestPossibleExternalViewVerifier.java          |   77 +-
 .../ClusterVerifiers/ClusterLiveNodesVerifier.java |    2 +-
 .../StrictMatchExternalViewVerifier.java           |   59 +-
 .../ClusterVerifiers/ZkHelixClusterVerifier.java   |   27 +-
 .../helix/tools/DefaultIdealStateCalculator.java   |    2 +-
 .../tools/IdealCalculatorByConsistentHashing.java  |    2 +-
 .../helix/tools/IdealStateCalculatorByRush.java    |    2 +-
 .../tools/IdealStateCalculatorByShuffling.java     |    2 +-
 .../java/org/apache/helix/tools/MessagePoster.java |    6 +-
 .../helix/tools/StateModelConfigGenerator.java     |    2 +-
 .../java/org/apache/helix/tools/TestExecutor.java  |   10 +-
 .../java/org/apache/helix/tools/TestTrigger.java   |    2 +-
 .../java/org/apache/helix/tools/ZnodeOpArg.java    |    2 +-
 .../java/org/apache/helix/tools/ZnodeValue.java    |    2 +-
 .../tools/commandtools/CurrentStateCleanUp.java    |    4 +-
 .../tools/commandtools/IntegrationTestUtil.java    |    6 +-
 .../helix/tools/commandtools/LocalZKServer.java    |    7 +-
 .../apache/helix/tools/commandtools/ZKDumper.java  |    7 +-
 .../apache/helix/tools/commandtools/ZkCopy.java    |    4 +-
 .../tools/commandtools/ZkLogCSVFormatter.java      |    2 +-
 .../helix/util/ExponentialBackoffStrategy.java     |   52 +-
 .../org/apache/helix/util/GZipCompressionUtil.java |   56 +-
 .../main/java/org/apache/helix/util/HelixUtil.java |   25 +-
 .../java/org/apache/helix/util/RebalanceUtil.java  |    7 +-
 .../org/apache/helix/util/StatusUpdateUtil.java    |    2 +-
 .../helix/util/WeightAwareRebalanceUtil.java       |    2 +-
 .../java/org/apache/helix/util/ZKClientPool.java   |    2 +-
 .../java/org/apache/helix/util/ZNRecordUtil.java   |    5 +-
 .../resources/soft-constraint-weight.properties    |   26 +
 .../test/java/org/apache/helix/MockAccessor.java   |   37 +-
 .../TestEspressoStorageClusterIdealState.java      |   16 +-
 .../java/org/apache/helix/TestGroupCommit.java     |    4 +-
 .../src/test/java/org/apache/helix/TestHelper.java |   94 +-
 .../apache/helix/TestHierarchicalDataStore.java    |    4 +-
 .../org/apache/helix/TestShuffledIdealState.java   |   49 +-
 .../apache/helix/TestZKRoutingInfoProvider.java    |    2 +
 .../test/java/org/apache/helix/TestZkBasis.java    |    8 +-
 .../test/java/org/apache/helix/ZkTestHelper.java   |   28 +-
 .../java/org/apache/helix/common/ZkTestBase.java   |   30 +-
 .../common/caches/TestCurrentStateSnapshot.java    |    2 +-
 .../changedetector/TestResourceChangeDetector.java |  446 ++++
 .../rebalancer/TestAutoRebalanceStrategy.java      |    2 +-
 ...stAutoRebalanceStrategyImbalanceAssignment.java |    2 +-
 .../rebalancer/TestZeroReplicaAvoidance.java       |    2 +-
 .../util/TestResourceUsageCalculator.java          |  103 +
 .../waged/MockAssignmentMetadataStore.java         |   60 +
 .../waged/TestAssignmentMetadataStore.java         |  186 ++
 .../rebalancer/waged/TestWagedRebalancer.java      |  524 +++++
 .../waged/TestWagedRebalancerMetrics.java          |  190 ++
 .../waged/constraints/MockRebalanceAlgorithm.java  |   84 +
 .../constraints/TestConstraintBasedAlgorithm.java  |   72 +
 .../constraints/TestFaultZoneAwareConstraint.java  |   79 +
 .../TestInstancePartitionsCountConstraint.java     |   63 +
 .../TestMaxCapacityUsageInstanceConstraint.java    |   57 +
 .../constraints/TestNodeCapacityConstraint.java    |   54 +
 .../TestNodeMaxPartitionLimitConstraint.java       |   56 +
 .../TestPartitionActivateConstraint.java           |   64 +
 .../TestPartitionMovementConstraint.java           |  127 ++
 ...estResourcePartitionAntiAffinityConstraint.java |   67 +
 ...TestResourceTopStateAntiAffinityConstraint.java |   82 +
 .../TestSamePartitionOnInstanceConstraint.java     |   59 +
 .../TestSoftConstraintNormalizeFunction.java       |   47 +
 .../constraints/TestValidGroupTagConstraint.java   |   66 +
 .../waged/model/AbstractTestClusterModel.java      |  204 ++
 .../waged/model/ClusterModelTestHelper.java        |   40 +
 .../rebalancer/waged/model/TestAssignableNode.java |  280 +++
 .../waged/model/TestAssignableReplica.java         |  167 ++
 .../rebalancer/waged/model/TestClusterContext.java |   93 +
 .../rebalancer/waged/model/TestClusterModel.java   |  101 +
 .../waged/model/TestClusterModelProvider.java      |  376 ++++
 .../waged/model/TestOptimalAssignment.java         |   91 +
 .../helix/controller/stages/BaseStageTest.java     |    2 +-
 .../controller/stages/DummyClusterManager.java     |    2 +-
 .../TestBestPossibleCalcStageCompatibility.java    |    2 +-
 .../stages/TestCompatibilityCheckStage.java        |    2 +-
 .../stages/TestCurrentStateComputationStage.java   |    2 +-
 .../stages/TestMessageThrottleStage.java           |    2 +-
 .../stages/TestResourceComputationStage.java       |    2 +-
 .../helix/controller/stages/TestTaskStage.java     |    2 +-
 .../TestAddStateModelFactoryAfterConnect.java      |    2 +-
 .../helix/integration/TestBucketizedResource.java  |    2 +-
 .../integration/TestCarryOverBadCurState.java      |    2 +-
 .../helix/integration/TestCleanupExternalView.java |    2 +-
 .../TestCorrectnessOnConnectivityLoss.java         |    2 +-
 .../org/apache/helix/integration/TestDisable.java  |    2 +-
 .../integration/TestDisableCustomCodeRunner.java   |    2 +-
 .../helix/integration/TestDisableExternalView.java |    2 +-
 .../helix/integration/TestDisableResource.java     |    2 +-
 .../helix/integration/TestDistributedCMMain.java   |    2 +-
 .../TestDistributedClusterController.java          |    2 +-
 .../org/apache/helix/integration/TestDriver.java   |    6 +-
 .../helix/integration/TestEnableCompression.java   |    6 +-
 .../integration/TestEntropyFreeNodeBounce.java     |    4 +-
 .../helix/integration/TestExternalViewUpdates.java |    2 +-
 .../TestNoThrottleDisabledPartitions.java          |    2 +-
 .../apache/helix/integration/TestNullReplica.java  |    2 +-
 .../TestPartitionLevelTransitionConstraint.java    |    2 +-
 .../integration/TestPersistAssignmentStage.java    |    2 +-
 .../integration/TestPreferenceListAsQueue.java     |    4 +-
 .../helix/integration/TestRenamePartition.java     |    2 +-
 .../helix/integration/TestResetPartitionState.java |    2 +-
 .../integration/TestResourceGroupEndtoEnd.java     |    2 +-
 .../TestResourceWithSamePartitionKey.java          |    2 +-
 .../integration/TestSyncSessionToController.java   |    2 +-
 .../integration/TestWeightBasedRebalanceUtil.java  |    2 +-
 .../integration/TestZkCallbackHandlerLeak.java     |    6 +-
 .../helix/integration/TestZkConnectionLost.java    |    6 +-
 .../TestControllerDataProviderSelectiveUpdate.java |    2 +-
 .../controller/TestControllerLeadershipChange.java |    2 +-
 .../controller/TestControllerLiveLock.java         |    2 +-
 .../controller/TestWatcherLeakageOnController.java |  102 +
 .../manager/ClusterControllerManager.java          |    2 +-
 .../manager/ClusterDistributedController.java      |    2 +-
 .../manager/MockParticipantManager.java            |    2 +-
 .../manager/TestConsecutiveZkSessionExpiry.java    |    2 +-
 .../integration/manager/TestHelixDataAccessor.java |    2 +-
 .../manager/TestParticipantManager.java            |    2 +-
 .../helix/integration/manager/ZkTestManager.java   |    2 +-
 .../integration/messaging/TestBatchMessage.java    |    4 +-
 .../messaging/TestBatchMessageWrapper.java         |    2 +-
 .../integration/messaging/TestMessageThrottle.java |    4 +-
 .../messaging/TestMessageThrottle2.java            |    2 +-
 .../messaging/TestSchedulerMessage.java            |    2 +-
 .../messaging/TestSchedulerMessage2.java           |    2 +-
 .../messaging/TestSchedulerMsgContraints.java      |    2 +-
 .../messaging/TestSchedulerMsgUsingQueue.java      |    2 +-
 .../TestStateTransitionTimeoutWithResource.java    |    2 +-
 .../TestCrushAutoRebalanceNonRack.java             |    8 +-
 .../rebalancer/CrushRebalancers/TestNodeSwap.java  |    4 +-
 .../TestDelayedAutoRebalance.java                  |   49 +-
 ...stDelayedAutoRebalanceWithDisabledInstance.java |   32 +-
 .../TestDelayedAutoRebalanceWithRackaware.java     |    2 +-
 .../PartitionMigration/TestExpandCluster.java      |    4 +-
 .../TestPartitionMigrationBase.java                |   26 +-
 .../TestWagedRebalancerMigration.java              |  111 +
 .../rebalancer/TestAutoIsWithEmptyMap.java         |    2 +-
 .../integration/rebalancer/TestAutoRebalance.java  |    6 +-
 .../TestAutoRebalancePartitionLimit.java           |    6 +-
 .../TestCustomizedIdealStateRebalancer.java        |    6 +-
 .../rebalancer/TestFullAutoNodeTagging.java        |    8 +-
 .../rebalancer/TestMixedModeAutoRebalance.java     |  181 +-
 .../rebalancer/TestZeroReplicaAvoidance.java       |   62 +-
 .../WagedRebalancer/TestDelayedWagedRebalance.java |   89 +
 ...tDelayedWagedRebalanceWithDisabledInstance.java |   96 +
 .../TestDelayedWagedRebalanceWithRackaware.java    |   96 +
 .../TestMixedModeWagedRebalance.java               |   58 +
 .../TestWagedExpandCluster.java}                   |   47 +-
 .../WagedRebalancer/TestWagedNodeSwap.java         |  294 +++
 .../WagedRebalancer/TestWagedRebalance.java        |  593 ++++++
 .../TestWagedRebalanceFaultZone.java               |  372 ++++
 .../TestWagedRebalanceTopologyAware.java           |  114 ++
 .../helix/integration/task/TaskTestUtil.java       |    2 +-
 .../helix/integration/task/TestTaskStopQueue.java  |    2 +-
 .../task/TestWorkflowContextWithoutConfig.java     |  140 +-
 .../manager/zk/TestAddBuiltInStateModelDef.java    |    2 +-
 .../helix/manager/zk/TestHandleNewSession.java     |   40 +-
 .../apache/helix/manager/zk/TestRawZkClient.java   |  159 +-
 .../manager/zk/TestWtCacheAsyncOpMultiThread.java  |    6 +-
 .../manager/zk/TestWtCacheAsyncOpSingleThread.java |    6 +-
 .../manager/zk/TestWtCacheSyncOpSingleThread.java  |    4 +-
 .../org/apache/helix/manager/zk/TestZKUtil.java    |    4 +-
 .../org/apache/helix/manager/zk/TestZKWatch.java   |  153 ++
 .../helix/manager/zk/TestZNRecordSerializer.java   |    4 +-
 .../helix/manager/zk/TestZNRecordSizeLimit.java    |    6 +-
 .../zk/TestZNRecordStreamingSerializer.java        |    2 +-
 .../helix/manager/zk/TestZkBaseDataAccessor.java   |   10 +-
 .../helix/manager/zk/TestZkBucketDataAccessor.java |  189 ++
 .../manager/zk/TestZkCacheAsyncOpSingleThread.java |   10 +-
 .../manager/zk/TestZkCacheSyncOpSingleThread.java  |    8 +-
 .../helix/manager/zk/TestZkClusterManager.java     |    2 +-
 .../apache/helix/manager/zk/TestZkFlapping.java    |    2 +
 .../apache/helix/manager/zk/TestZkHelixAdmin.java  |  110 +-
 .../apache/helix/manager/zk/TestZkReconnect.java   |    4 +-
 .../helix/manager/zk/client/TestHelixZkClient.java |   29 +-
 .../serializer/TestJacksonPayloadSerializer.java   |    2 +-
 .../messaging/TestDefaultMessagingService.java     |    2 +-
 .../apache/helix/mock/MockBaseDataAccessor.java    |    8 +-
 .../java/org/apache/helix/mock/MockHelixAdmin.java |   24 +-
 .../java/org/apache/helix/mock/MockManager.java    |    2 +-
 .../java/org/apache/helix/mock/MockZkClient.java   |    4 +-
 .../apache/helix/mock/MockZkHelixDataAccessor.java |    2 +-
 .../helix/mock/controller/MockController.java      |    6 +-
 .../participant/StoreAccessDiffNodeTransition.java |    7 +-
 .../participant/StoreAccessOneNodeTransition.java  |    7 +-
 .../helix/mock/spectator/MockSpectatorProcess.java |    9 +-
 .../org/apache/helix/model/TestClusterConfig.java  |  259 +++
 .../org/apache/helix/model/TestConstraint.java     |    2 +-
 .../org/apache/helix/model/TestInstanceConfig.java |   73 +-
 .../org/apache/helix/model/TestResourceConfig.java |  186 ++
 .../apache/helix/model/TestStateModelValidity.java |    2 +-
 .../helix/model/TestStateTransitionProperty.java   |    2 +-
 .../helix/monitoring/TestZKPathDataDumpTask.java   |    2 +-
 .../mbeans/TestClusterStatusMonitor.java           |  194 +-
 .../monitoring/mbeans/TestInstanceMonitor.java     |   75 +
 .../monitoring/mbeans/TestResourceMonitor.java     |  373 ++--
 .../mbeans/TestRoutingTableProviderMonitor.java    |   10 +-
 .../monitoring/mbeans/TestZkClientMonitor.java     |    9 +-
 .../helix/participant/MockZKHelixManager.java      |    4 +-
 .../participant/TestDistControllerStateModel.java  |    2 +-
 .../TestDistControllerStateModelFactory.java       |    2 +-
 .../helix/spectator/TestRoutingDataCache.java      |    2 +-
 .../org/apache/helix/store/TestJsonComparator.java |    2 +-
 .../store/zk/TestAutoFallbackPropertyStore.java    |    4 +-
 .../helix/store/zk/TestZkHelixPropertyStore.java   |    8 +-
 .../zk/TestZkManagerWithAutoFallbackStore.java     |    2 +-
 .../helix/task/TestAssignableInstanceManager.java  |    2 +-
 .../org/apache/helix/tools/TestClusterSetup.java   |    2 +-
 .../apache/helix/tools/TestClusterVerifier.java    |   76 +-
 .../org/apache/helix/tools/TestHelixAdminCli.java  |    2 +-
 .../java/org/apache/helix/tools/TestZkCopy.java    |    2 +-
 .../apache/helix/util/TestPropertyKeyGetPath.java  |    2 +-
 .../org/apache/helix/util/TestZKClientPool.java    |    8 +-
 ...eUsageCalculator.MeasureBaselineDivergence.json |   37 +
 ...chExternalViewVerifier.ComputeIdealMapping.json |   14 +-
 helix-rest/pom.xml                                 |    2 +
 .../rest/common/HelixDataAccessorWrapper.java      |    2 +-
 .../accessor/ZkRoutingDataReader.java              |   18 +-
 .../accessor/ZkRoutingDataWriter.java              |   15 +-
 .../concurrency/ZkDistributedLeaderElection.java   |   12 +-
 .../apache/helix/rest/server/ServerContext.java    |   12 +-
 .../rest/server/json/instance/InstanceInfo.java    |    2 +-
 .../rest/server/resources/AbstractResource.java    |   10 +-
 .../resources/helix/AbstractHelixResource.java     |    6 +-
 .../server/resources/helix/ClusterAccessor.java    |   14 +-
 .../server/resources/helix/InstancesAccessor.java  |   88 +-
 .../rest/server/resources/helix/JobAccessor.java   |    4 +-
 .../resources/helix/PerInstanceAccessor.java       |   51 +-
 .../resources/helix/PropertyStoreAccessor.java     |    2 +-
 .../server/resources/helix/ResourceAccessor.java   |  156 +-
 .../rest/server/resources/helix/TaskAccessor.java  |    2 +-
 .../server/resources/helix/WorkflowAccessor.java   |    4 +-
 .../resources/zookeeper/ZooKeeperAccessor.java     |    6 +-
 .../rest/common/TestHelixDataAccessorWrapper.java  |    2 +-
 .../TestZkMetadataStoreDirectory.java              |    4 +-
 .../accessor/TestZkRoutingDataReader.java          |    2 +-
 .../accessor/TestZkRoutingDataWriter.java          |    2 +-
 .../helix/rest/server/AbstractTestClass.java       |   13 +-
 .../helix/rest/server/TestClusterAccessor.java     |   15 +-
 .../helix/rest/server/TestInstancesAccessor.java   |   77 +
 .../helix/rest/server/TestPerInstanceAccessor.java |   68 +-
 .../rest/server/TestPropertyStoreAccessor.java     |    6 +-
 .../helix/rest/server/TestResourceAccessor.java    |  119 +-
 .../helix/rest/server/TestZooKeeperAccessor.java   |    4 +-
 .../rest/server/util/JerseyUriRequestBuilder.java  |    3 +-
 metrics-common/LICENSE                             |  270 +++
 metrics-common/NOTICE                              |   37 +
 .../metrics-common-0.9.2-SNAPSHOT.ivy              |   35 +-
 {helix-admin-webapp => metrics-common}/pom.xml     |   74 +-
 metrics-common/src/assemble/assembly.xml           |   60 +
 .../helix/monitoring/SensorNameProvider.java       |    0
 .../helix/monitoring/mbeans/MBeanRegistrar.java    |    1 +
 .../monitoring/mbeans/MonitorDomainNames.java      |    0
 .../mbeans/dynamicMBeans/DynamicMBeanProvider.java |   41 +-
 .../mbeans/dynamicMBeans/DynamicMetric.java        |    5 +-
 .../dynamicMBeans/HistogramDynamicMetric.java      |    1 +
 .../mbeans/dynamicMBeans/SimpleDynamicMetric.java  |    0
 .../mbeans/exception/MetricException.java          |   18 +-
 metrics-common/src/test/conf/testng.xml            |   27 +
 .../src/test/resources/log4j.properties            |    0
 pom.xml                                            |    9 +
 .../apache/helix/lockmanager/LockManagerDemo.java  |    7 +-
 .../apache/helix/recipes/rabbitmq/Consumer.java    |    2 +-
 .../recipes/rabbitmq/SetupConsumerCluster.java     |    2 +-
 recipes/rsync-replicated-file-system/pom.xml       |    5 -
 .../java/org/apache/helix/filestore/FileStore.java |    2 +-
 .../helix/filestore/FileStoreStateModel.java       |    4 +-
 .../apache/helix/filestore/IntegrationTest.java    |    8 +-
 .../org/apache/helix/filestore/Replicator.java     |    2 +-
 .../org/apache/helix/filestore/SetupCluster.java   |    2 +-
 .../helix/servicediscovery/ServiceDiscovery.java   |    2 +-
 .../apache/helix/taskexecution/TaskCluster.java    |    2 +-
 .../helix/taskexecution/TaskExecutionDemo.java     |    7 +-
 .../org/apache/helix/taskexecution/Worker.java     |    2 +-
 zookeeper-api/LICENSE                              |  270 +++
 zookeeper-api/NOTICE                               |   37 +
 {helix-admin-webapp => zookeeper-api}/pom.xml      |   89 +-
 zookeeper-api/src/assemble/assembly.xml            |   60 +
 .../src/main/config/log4j.properties               |    0
 .../helix/zookeeper/api/client/HelixZkClient.java  |    8 +-
 .../zookeeper/api/client/RealmAwareZkClient.java   |  123 +-
 .../api/factory/RealmAwareZkClientFactory.java     |    5 +-
 .../helix/zookeeper/datamodel}/ZNRecord.java       |   14 +-
 .../zookeeper/datamodel}/ZNRecordAssembler.java    |    3 +-
 .../zookeeper/datamodel}/ZNRecordBucketizer.java   |    3 +-
 .../helix/zookeeper/datamodel}/ZNRecordDelta.java  |    2 +-
 .../zookeeper/datamodel}/ZNRecordUpdater.java      |    5 +-
 .../serializer/JacksonPayloadSerializer.java       |    8 +-
 .../datamodel}/serializer/PayloadSerializer.java   |    2 +-
 .../serializer/ZNRecordJacksonSerializer.java      |   69 +
 .../datamodel/serializer}/ZNRecordSerializer.java  |   17 +-
 .../serializer}/ZNRecordStreamingSerializer.java   |   27 +-
 .../zookeeper/exception/ZkClientException.java     |   14 +-
 .../zookeeper/impl/client/FederatedZkClient.java   |  363 ++++
 .../zookeeper/impl}/client/SharedZkClient.java     |   57 +-
 .../helix/zookeeper/impl/client}/ZkClient.java     |   59 +-
 .../impl/factory/DedicatedZkClientFactory.java     |   57 +
 .../impl/factory/HelixZkClientFactory.java         |   68 +
 .../impl/factory}/SharedZkClientFactory.java       |   46 +-
 .../impl/factory}/ZkConnectionManager.java         |   55 +-
 .../helix/zookeeper}/util/GZipCompressionUtil.java |    5 +-
 .../helix/zookeeper/zkclient/DataUpdater.java      |   34 +
 .../helix/zookeeper/zkclient/ExceptionUtil.java    |   52 +
 .../zookeeper/zkclient/IDefaultNameSpace.java      |   27 +
 .../helix/zookeeper/zkclient/IZkChildListener.java |   41 +
 .../helix/zookeeper/zkclient/IZkConnection.java    |   60 +
 .../helix/zookeeper/zkclient/IZkDataListener.java  |   30 +
 .../zookeeper/zkclient}/IZkStateListener.java      |    2 +-
 .../helix/zookeeper/zkclient/NetworkUtil.java      |  122 ++
 .../apache/helix/zookeeper/zkclient}/ZkClient.java |  205 +-
 .../helix/zookeeper/zkclient}/ZkConnection.java    |    6 +-
 .../helix/zookeeper/zkclient}/ZkEventThread.java   |    5 +-
 .../apache/helix/zookeeper/zkclient/ZkLock.java    |   56 +
 .../apache/helix/zookeeper/zkclient/ZkServer.java  |  175 ++
 .../zookeeper/zkclient/annotation}/PreFetch.java   |    2 +-
 .../zkclient/callback}/ZkAsyncCallbacks.java       |   11 +-
 .../zkclient/deprecated/IZkStateListener.java      |   53 +
 .../zkclient/exception/ZkBadVersionException.java  |   39 +
 .../zookeeper/zkclient/exception/ZkException.java  |   71 +
 .../zkclient/exception/ZkInterruptedException.java |   26 +
 .../zkclient/exception/ZkMarshallingError.java     |   37 +
 .../zkclient/exception/ZkNoNodeException.java      |   39 +
 .../zkclient/exception/ZkNodeExistsException.java  |   39 +
 .../exception/ZkSessionMismatchedException.java    |   19 +-
 .../zkclient/exception/ZkTimeoutException.java     |   37 +
 .../zkclient/metric}/ZkClientMonitor.java          |   15 +-
 .../zkclient/metric}/ZkClientPathMonitor.java      |    4 +-
 .../zkclient/serialize}/BasicZkSerializer.java     |    4 +-
 .../serialize/BytesPushThroughSerializer.java      |   36 +
 .../zkclient/serialize}/PathBasedZkSerializer.java |    5 +-
 .../zkclient/serialize/SerializableSerializer.java |   55 +
 .../serialize/TcclAwareObjectIputStream.java       |   82 +
 .../zookeeper/zkclient/serialize/ZkSerializer.java |   33 +
 .../zkclient}/util/ExponentialBackoffStrategy.java |   22 +-
 zookeeper-api/src/test/conf/testng.xml             |   27 +
 .../src/test/resources/log4j.properties            |    0
 .../zookeeper-api-0.9.2-SNAPSHOT.ivy               |   38 +-
 583 files changed, 20108 insertions(+), 7003 deletions(-)
 create mode 100644 helix-common/LICENSE
 create mode 100644 helix-common/NOTICE
 copy helix-core/helix-core-0.9.2-SNAPSHOT.ivy => helix-common/helix-common-0.9.2-SNAPSHOT.ivy (56%)
 copy {helix-admin-webapp => helix-common}/pom.xml (58%)
 create mode 100644 helix-common/src/assemble/assembly.xml
 copy {helix-core => helix-common}/src/main/java/org/apache/helix/HelixException.java (100%)
 copy {helix-core => helix-common}/src/main/java/org/apache/helix/SystemPropertyKeys.java (67%)
 copy helix-core/src/main/java/org/apache/helix/HelixException.java => helix-common/src/main/java/org/apache/helix/ZNRecord.java (52%)
 copy helix-core/src/main/java/org/apache/helix/monitoring/SensorNameProvider.java => helix-common/src/main/java/org/apache/helix/ZNRecordDelta.java (78%)
 copy helix-core/src/main/java/org/apache/helix/monitoring/mbeans/MonitorDomainNames.java => helix-common/src/main/java/org/apache/helix/manager/zk/serializer/JacksonPayloadSerializer.java (71%)
 copy helix-core/src/main/java/org/apache/helix/monitoring/mbeans/MonitorDomainNames.java => helix-common/src/main/java/org/apache/helix/manager/zk/serializer/PayloadSerializer.java (71%)
 create mode 100644 helix-common/src/test/conf/testng.xml
 copy {helix-rest => helix-common}/src/test/resources/log4j.properties (100%)
 copy helix-core/src/main/java/org/apache/helix/{manager/zk/PathBasedZkSerializer.java => BucketDataAccessor.java} (50%)
 copy helix-core/src/main/java/org/apache/helix/{HelixException.java => HelixRebalanceException.java} (50%)
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/changedetector/ChangeDetector.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/changedetector/ResourceChangeDetector.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/changedetector/ResourceChangeSnapshot.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/StatefulRebalancer.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/util/DelayedRebalanceUtil.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/util/WagedValidationUtil.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/AssignmentMetadataStore.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/RebalanceAlgorithm.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/WagedRebalancer.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/constraints/ConstraintBasedAlgorithm.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/constraints/ConstraintBasedAlgorithmFactory.java
 copy helix-core/src/main/java/org/apache/helix/{manager/zk/ByteArraySerializer.java => controller/rebalancer/waged/constraints/FaultZoneAwareConstraint.java} (51%)
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/constraints/HardConstraint.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/constraints/InstancePartitionsCountConstraint.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/constraints/MaxCapacityUsageInstanceConstraint.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/constraints/NodeCapacityConstraint.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/constraints/NodeMaxPartitionLimitConstraint.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/constraints/PartitionMovementConstraint.java
 copy helix-core/src/main/java/org/apache/helix/{manager/zk/ByteArraySerializer.java => controller/rebalancer/waged/constraints/ReplicaActivateConstraint.java} (52%)
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/constraints/ResourcePartitionAntiAffinityConstraint.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/constraints/ResourceTopStateAntiAffinityConstraint.java
 copy helix-core/src/main/java/org/apache/helix/{store/ZNRecordJsonSerializer.java => controller/rebalancer/waged/constraints/SamePartitionOnInstanceConstraint.java} (54%)
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/constraints/SoftConstraint.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/constraints/UsageSoftConstraint.java
 copy helix-core/src/main/java/org/apache/helix/{store/ZNRecordJsonSerializer.java => controller/rebalancer/waged/constraints/ValidGroupTagConstraint.java} (54%)
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/model/AssignableNode.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/model/AssignableReplica.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/model/ClusterContext.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/model/ClusterModel.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/model/ClusterModelProvider.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/model/OptimalAssignment.java
 copy helix-core/src/main/java/org/apache/helix/manager/zk/{ByteArraySerializer.java => ZNRecordJacksonSerializer.java} (68%)
 create mode 100644 helix-core/src/main/java/org/apache/helix/manager/zk/ZkBucketDataAccessor.java
 delete mode 100644 helix-core/src/main/java/org/apache/helix/manager/zk/ZkSessionMismatchedException.java
 delete mode 100644 helix-core/src/main/java/org/apache/helix/manager/zk/client/HelixZkClientFactory.java
 delete mode 100644 helix-core/src/main/java/org/apache/helix/monitoring/mbeans/InstanceMonitorMBean.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/monitoring/metrics/MetricCollector.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/monitoring/metrics/WagedRebalancerMetricCollector.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/monitoring/metrics/implementation/BaselineDivergenceGauge.java
 copy helix-core/src/main/java/org/apache/helix/{LiveInstanceInfoProvider.java => monitoring/metrics/implementation/RebalanceCounter.java} (60%)
 copy helix-core/src/{test/java/org/apache/helix/integration/manager/ZkTestManager.java => main/java/org/apache/helix/monitoring/metrics/implementation/RebalanceFailureCount.java} (69%)
 create mode 100644 helix-core/src/main/java/org/apache/helix/monitoring/metrics/implementation/RebalanceLatencyGauge.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/monitoring/metrics/model/CountMetric.java
 create mode 100644 helix-core/src/main/java/org/apache/helix/monitoring/metrics/model/LatencyMetric.java
 copy helix-core/src/main/java/org/apache/helix/{manager/zk/PathBasedZkSerializer.java => monitoring/metrics/model/Metric.java} (57%)
 copy helix-core/src/main/java/org/apache/helix/monitoring/{mbeans/dynamicMBeans/SimpleDynamicMetric.java => metrics/model/RatioMetric.java} (52%)
 create mode 100644 helix-core/src/main/resources/soft-constraint-weight.properties
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/changedetector/TestResourceChangeDetector.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/util/TestResourceUsageCalculator.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/MockAssignmentMetadataStore.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/TestAssignmentMetadataStore.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/TestWagedRebalancer.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/TestWagedRebalancerMetrics.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/constraints/MockRebalanceAlgorithm.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/constraints/TestConstraintBasedAlgorithm.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/constraints/TestFaultZoneAwareConstraint.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/constraints/TestInstancePartitionsCountConstraint.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/constraints/TestMaxCapacityUsageInstanceConstraint.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/constraints/TestNodeCapacityConstraint.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/constraints/TestNodeMaxPartitionLimitConstraint.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/constraints/TestPartitionActivateConstraint.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/constraints/TestPartitionMovementConstraint.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/constraints/TestResourcePartitionAntiAffinityConstraint.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/constraints/TestResourceTopStateAntiAffinityConstraint.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/constraints/TestSamePartitionOnInstanceConstraint.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/constraints/TestSoftConstraintNormalizeFunction.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/constraints/TestValidGroupTagConstraint.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/model/AbstractTestClusterModel.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/model/ClusterModelTestHelper.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/model/TestAssignableNode.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/model/TestAssignableReplica.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/model/TestClusterContext.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/model/TestClusterModel.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/model/TestClusterModelProvider.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/controller/rebalancer/waged/model/TestOptimalAssignment.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/integration/controller/TestWatcherLeakageOnController.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/integration/rebalancer/PartitionMigration/TestWagedRebalancerMigration.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/integration/rebalancer/WagedRebalancer/TestDelayedWagedRebalance.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/integration/rebalancer/WagedRebalancer/TestDelayedWagedRebalanceWithDisabledInstance.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/integration/rebalancer/WagedRebalancer/TestDelayedWagedRebalanceWithRackaware.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/integration/rebalancer/WagedRebalancer/TestMixedModeWagedRebalance.java
 copy helix-core/src/test/java/org/apache/helix/integration/rebalancer/{PartitionMigration/TestExpandCluster.java => WagedRebalancer/TestWagedExpandCluster.java} (74%)
 create mode 100644 helix-core/src/test/java/org/apache/helix/integration/rebalancer/WagedRebalancer/TestWagedNodeSwap.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/integration/rebalancer/WagedRebalancer/TestWagedRebalance.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/integration/rebalancer/WagedRebalancer/TestWagedRebalanceFaultZone.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/integration/rebalancer/WagedRebalancer/TestWagedRebalanceTopologyAware.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/manager/zk/TestZKWatch.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/manager/zk/TestZkBucketDataAccessor.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/model/TestClusterConfig.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/model/TestResourceConfig.java
 create mode 100644 helix-core/src/test/java/org/apache/helix/monitoring/mbeans/TestInstanceMonitor.java
 create mode 100644 helix-core/src/test/resources/TestResourceUsageCalculator.MeasureBaselineDivergence.json
 create mode 100644 metrics-common/LICENSE
 create mode 100644 metrics-common/NOTICE
 copy helix-core/helix-core-0.9.2-SNAPSHOT.ivy => metrics-common/metrics-common-0.9.2-SNAPSHOT.ivy (53%)
 copy {helix-admin-webapp => metrics-common}/pom.xml (55%)
 create mode 100644 metrics-common/src/assemble/assembly.xml
 copy {helix-core => metrics-common}/src/main/java/org/apache/helix/monitoring/SensorNameProvider.java (100%)
 rename {helix-core => metrics-common}/src/main/java/org/apache/helix/monitoring/mbeans/MBeanRegistrar.java (99%)
 copy {helix-core => metrics-common}/src/main/java/org/apache/helix/monitoring/mbeans/MonitorDomainNames.java (100%)
 copy {helix-core => metrics-common}/src/main/java/org/apache/helix/monitoring/mbeans/dynamicMBeans/DynamicMBeanProvider.java (87%)
 rename {helix-core => metrics-common}/src/main/java/org/apache/helix/monitoring/mbeans/dynamicMBeans/DynamicMetric.java (95%)
 rename {helix-core => metrics-common}/src/main/java/org/apache/helix/monitoring/mbeans/dynamicMBeans/HistogramDynamicMetric.java (99%)
 copy {helix-core => metrics-common}/src/main/java/org/apache/helix/monitoring/mbeans/dynamicMBeans/SimpleDynamicMetric.java (100%)
 copy helix-core/src/main/java/org/apache/helix/api/listeners/PreFetch.java => metrics-common/src/main/java/org/apache/helix/monitoring/mbeans/exception/MetricException.java (70%)
 create mode 100644 metrics-common/src/test/conf/testng.xml
 copy {helix-rest => metrics-common}/src/test/resources/log4j.properties (100%)
 create mode 100644 zookeeper-api/LICENSE
 create mode 100644 zookeeper-api/NOTICE
 copy {helix-admin-webapp => zookeeper-api}/pom.xml (60%)
 create mode 100644 zookeeper-api/src/assemble/assembly.xml
 copy {helix-rest => zookeeper-api}/src/main/config/log4j.properties (100%)
 copy helix-core/src/main/java/org/apache/helix/monitoring/SensorNameProvider.java => zookeeper-api/src/main/java/org/apache/helix/zookeeper/api/client/HelixZkClient.java (79%)
 copy helix-core/src/main/java/org/apache/helix/manager/zk/client/HelixZkClient.java => zookeeper-api/src/main/java/org/apache/helix/zookeeper/api/client/RealmAwareZkClient.java (71%)
 rename helix-core/src/main/java/org/apache/helix/monitoring/SensorNameProvider.java => zookeeper-api/src/main/java/org/apache/helix/zookeeper/api/factory/RealmAwareZkClientFactory.java (88%)
 rename {helix-core/src/main/java/org/apache/helix => zookeeper-api/src/main/java/org/apache/helix/zookeeper/datamodel}/ZNRecord.java (97%)
 copy {helix-core/src/main/java/org/apache/helix => zookeeper-api/src/main/java/org/apache/helix/zookeeper/datamodel}/ZNRecordAssembler.java (96%)
 copy {helix-core/src/main/java/org/apache/helix => zookeeper-api/src/main/java/org/apache/helix/zookeeper/datamodel}/ZNRecordBucketizer.java (98%)
 rename {helix-core/src/main/java/org/apache/helix => zookeeper-api/src/main/java/org/apache/helix/zookeeper/datamodel}/ZNRecordDelta.java (97%)
 copy {helix-core/src/main/java/org/apache/helix => zookeeper-api/src/main/java/org/apache/helix/zookeeper/datamodel}/ZNRecordUpdater.java (92%)
 rename {helix-core/src/main/java/org/apache/helix/manager/zk => zookeeper-api/src/main/java/org/apache/helix/zookeeper/datamodel}/serializer/JacksonPayloadSerializer.java (94%)
 rename {helix-core/src/main/java/org/apache/helix/manager/zk => zookeeper-api/src/main/java/org/apache/helix/zookeeper/datamodel}/serializer/PayloadSerializer.java (96%)
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/datamodel/serializer/ZNRecordJacksonSerializer.java
 copy {helix-core/src/main/java/org/apache/helix/manager/zk => zookeeper-api/src/main/java/org/apache/helix/zookeeper/datamodel/serializer}/ZNRecordSerializer.java (90%)
 copy {helix-core/src/main/java/org/apache/helix/manager/zk => zookeeper-api/src/main/java/org/apache/helix/zookeeper/datamodel/serializer}/ZNRecordStreamingSerializer.java (92%)
 rename helix-core/src/main/java/org/apache/helix/HelixException.java => zookeeper-api/src/main/java/org/apache/helix/zookeeper/exception/ZkClientException.java (69%)
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/impl/client/FederatedZkClient.java
 copy {helix-core/src/main/java/org/apache/helix/manager/zk => zookeeper-api/src/main/java/org/apache/helix/zookeeper/impl}/client/SharedZkClient.java (54%)
 copy {helix-core/src/main/java/org/apache/helix/manager/zk => zookeeper-api/src/main/java/org/apache/helix/zookeeper/impl/client}/ZkClient.java (83%)
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/impl/factory/DedicatedZkClientFactory.java
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/impl/factory/HelixZkClientFactory.java
 copy {helix-core/src/main/java/org/apache/helix/manager/zk/client => zookeeper-api/src/main/java/org/apache/helix/zookeeper/impl/factory}/SharedZkClientFactory.java (62%)
 copy {helix-core/src/main/java/org/apache/helix/manager/zk/client => zookeeper-api/src/main/java/org/apache/helix/zookeeper/impl/factory}/ZkConnectionManager.java (62%)
 copy {helix-core/src/main/java/org/apache/helix => zookeeper-api/src/main/java/org/apache/helix/zookeeper}/util/GZipCompressionUtil.java (97%)
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/DataUpdater.java
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/ExceptionUtil.java
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/IDefaultNameSpace.java
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/IZkChildListener.java
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/IZkConnection.java
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/IZkDataListener.java
 copy {helix-core/src/main/java/org/apache/helix/manager/zk/zookeeper => zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient}/IZkStateListener.java (98%)
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/NetworkUtil.java
 copy {helix-core/src/main/java/org/apache/helix/manager/zk/zookeeper => zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient}/ZkClient.java (92%)
 copy {helix-core/src/main/java/org/apache/helix/manager/zk/zookeeper => zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient}/ZkConnection.java (97%)
 rename {helix-core/src/main/java/org/apache/helix/manager/zk/zookeeper => zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient}/ZkEventThread.java (97%)
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/ZkLock.java
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/ZkServer.java
 copy {helix-core/src/main/java/org/apache/helix/api/listeners => zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/annotation}/PreFetch.java (94%)
 copy {helix-core/src/main/java/org/apache/helix/manager/zk => zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/callback}/ZkAsyncCallbacks.java (96%)
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/deprecated/IZkStateListener.java
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/exception/ZkBadVersionException.java
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/exception/ZkException.java
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/exception/ZkInterruptedException.java
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/exception/ZkMarshallingError.java
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/exception/ZkNoNodeException.java
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/exception/ZkNodeExistsException.java
 copy helix-core/src/main/java/org/apache/helix/monitoring/mbeans/MonitorDomainNames.java => zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/exception/ZkSessionMismatchedException.java (68%)
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/exception/ZkTimeoutException.java
 copy {helix-core/src/main/java/org/apache/helix/monitoring/mbeans => zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/metric}/ZkClientMonitor.java (94%)
 copy {helix-core/src/main/java/org/apache/helix/monitoring/mbeans => zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/metric}/ZkClientPathMonitor.java (98%)
 copy {helix-core/src/main/java/org/apache/helix/manager/zk => zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/serialize}/BasicZkSerializer.java (93%)
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/serialize/BytesPushThroughSerializer.java
 copy {helix-core/src/main/java/org/apache/helix/manager/zk => zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/serialize}/PathBasedZkSerializer.java (91%)
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/serialize/SerializableSerializer.java
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/serialize/TcclAwareObjectIputStream.java
 create mode 100644 zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/serialize/ZkSerializer.java
 copy {helix-core/src/main/java/org/apache/helix => zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient}/util/ExponentialBackoffStrategy.java (54%)
 create mode 100644 zookeeper-api/src/test/conf/testng.xml
 copy {helix-rest => zookeeper-api}/src/test/resources/log4j.properties (100%)
 copy helix-core/helix-core-0.9.2-SNAPSHOT.ivy => zookeeper-api/zookeeper-api-0.9.2-SNAPSHOT.ivy (53%)


Mime
View raw message