You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@helix.apache.org by ki...@apache.org on 2013/11/20 22:13:06 UTC

[51/52] [abbrv] git commit: Merging with trunk

Merging with trunk


Project: http://git-wip-us.apache.org/repos/asf/incubator-helix/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-helix/commit/6dece848
Tree: http://git-wip-us.apache.org/repos/asf/incubator-helix/tree/6dece848
Diff: http://git-wip-us.apache.org/repos/asf/incubator-helix/diff/6dece848

Branch: refs/heads/helix-yarn
Commit: 6dece848c29b97b9140efedde4c7492322bd8966
Parents: 342d0e7 d09de23
Author: Kishore Gopalakrishna <kg...@lm-lsv39442.linkedin.biz>
Authored: Wed Nov 20 13:10:21 2013 -0800
Committer: Kishore Gopalakrishna <kg...@lm-lsv39442.linkedin.biz>
Committed: Wed Nov 20 13:10:21 2013 -0800

----------------------------------------------------------------------
 .gitignore                                      |   18 +
 deploySite.sh                                   |    2 +-
 helix-admin-webapp/pom.xml                      |   11 +-
 .../helix/webapp/RestAdminApplication.java      |   18 +-
 .../resources/ClusterRepresentationUtil.java    |    2 +-
 .../helix/webapp/resources/ClusterResource.java |   54 +-
 .../webapp/resources/ClustersResource.java      |   41 +-
 .../helix/webapp/resources/ConfigResource.java  |   32 +-
 .../webapp/resources/ConstraintResource.java    |   28 +-
 .../webapp/resources/ControllerResource.java    |   45 +-
 .../ControllerStatusUpdateResource.java         |   39 +-
 .../webapp/resources/CurrentStateResource.java  |   39 +-
 .../webapp/resources/CurrentStatesResource.java |   35 +-
 .../helix/webapp/resources/ErrorResource.java   |   39 +-
 .../helix/webapp/resources/ErrorsResource.java  |   36 +-
 .../webapp/resources/ExternalViewResource.java  |   39 +-
 .../webapp/resources/IdealStateResource.java    |   44 +-
 .../webapp/resources/InstanceResource.java      |   45 +-
 .../webapp/resources/InstancesResource.java     |   42 +-
 .../helix/webapp/resources/JsonParameters.java  |    2 +-
 .../webapp/resources/ResourceGroupResource.java |   45 +-
 .../resources/ResourceGroupsResource.java       |   42 +-
 .../resources/SchedulerTasksResource.java       |   58 +-
 .../webapp/resources/StateModelResource.java    |   44 +-
 .../webapp/resources/StateModelsResource.java   |   43 +-
 .../webapp/resources/StatusUpdateResource.java  |   39 +-
 .../webapp/resources/StatusUpdatesResource.java |   39 +-
 .../helix/webapp/resources/ZkChildResource.java |   42 +-
 .../helix/webapp/resources/ZkPathResource.java  |   47 +-
 .../tools/TestHelixAdminScenariosRest.java      |  897 ++++++++-----
 .../apache/helix/tools/TestResetInstance.java   |   21 +-
 .../helix/tools/TestResetPartitionState.java    |   35 +-
 .../apache/helix/tools/TestResetResource.java   |   22 +-
 .../webapp/TestClusterManagementWebapp.java     |    8 +-
 helix-agent/DISCLAIMER                          |   15 +
 helix-agent/LICENSE                             |  273 ++++
 helix-agent/NOTICE                              |   30 +
 helix-agent/pom.xml                             |   23 +-
 helix-agent/src/assemble/assembly.xml           |   60 +
 .../org/apache/helix/agent/AgentStateModel.java |   24 +-
 .../helix/agent/AgentStateModelFactory.java     |    7 +-
 .../org/apache/helix/agent/HelixAgentMain.java  |    4 +-
 .../helix/agent/ProcessMonitorThread.java       |    1 -
 .../org/apache/helix/agent/TestHelixAgent.java  |   29 +-
 helix-core/pom.xml                              |   20 +-
 .../java/org/apache/helix/ConfigAccessor.java   |    4 +-
 .../main/java/org/apache/helix/HelixAdmin.java  |    9 +-
 .../org/apache/helix/HelixAutoController.java   |   62 +
 .../java/org/apache/helix/HelixConnection.java  |  280 ++++
 .../helix/HelixConnectionStateListener.java     |   32 +
 .../java/org/apache/helix/HelixController.java  |   37 +
 .../org/apache/helix/HelixDataAccessor.java     |    2 +-
 .../java/org/apache/helix/HelixManager.java     |   13 +-
 .../apache/helix/HelixManagerProperties.java    |    9 +-
 .../java/org/apache/helix/HelixParticipant.java |   56 +
 .../java/org/apache/helix/HelixProperty.java    |   16 +-
 .../main/java/org/apache/helix/HelixRole.java   |   59 +
 .../java/org/apache/helix/HelixService.java     |   35 +
 .../main/java/org/apache/helix/PropertyKey.java |  113 +-
 .../org/apache/helix/PropertyPathConfig.java    |    8 +
 .../java/org/apache/helix/PropertyType.java     |    2 +
 .../main/java/org/apache/helix/ZNRecord.java    |    9 +
 .../org/apache/helix/alerts/AlertProcessor.java |    3 -
 .../org/apache/helix/alerts/AlertsHolder.java   |    3 -
 .../apache/helix/alerts/DecayAggregator.java    |    2 -
 .../apache/helix/alerts/ExpressionParser.java   |    2 -
 .../org/apache/helix/alerts/StatsHolder.java    |    4 -
 .../java/org/apache/helix/alerts/Tuple.java     |    3 -
 .../apache/helix/alerts/WindowAggregator.java   |    2 -
 .../main/java/org/apache/helix/api/Cluster.java |  307 +++++
 .../java/org/apache/helix/api/Controller.java   |   74 ++
 .../java/org/apache/helix/api/HelixVersion.java |   68 +
 .../java/org/apache/helix/api/Participant.java  |  174 +++
 .../java/org/apache/helix/api/Partition.java    |   54 +
 .../java/org/apache/helix/api/Resource.java     |  212 ++++
 .../org/apache/helix/api/RunningInstance.java   |   69 +
 .../main/java/org/apache/helix/api/Scope.java   |  125 ++
 .../java/org/apache/helix/api/Spectator.java    |   45 +
 .../main/java/org/apache/helix/api/State.java   |   85 ++
 .../api/accessor/AtomicClusterAccessor.java     |  260 ++++
 .../api/accessor/AtomicParticipantAccessor.java |  211 +++
 .../api/accessor/AtomicResourceAccessor.java    |  150 +++
 .../helix/api/accessor/ClusterAccessor.java     |  836 ++++++++++++
 .../helix/api/accessor/ControllerAccessor.java  |   49 +
 .../helix/api/accessor/ParticipantAccessor.java |  774 +++++++++++
 .../helix/api/accessor/ResourceAccessor.java    |  472 +++++++
 .../apache/helix/api/config/ClusterConfig.java  |  912 +++++++++++++
 .../helix/api/config/NamespacedConfig.java      |  228 ++++
 .../helix/api/config/ParticipantConfig.java     |  382 ++++++
 .../apache/helix/api/config/ResourceConfig.java |  373 ++++++
 .../helix/api/config/SchedulerTaskConfig.java   |   88 ++
 .../org/apache/helix/api/config/UserConfig.java |   53 +
 .../java/org/apache/helix/api/id/ClusterId.java |   57 +
 .../org/apache/helix/api/id/ConstraintId.java   |   80 ++
 .../org/apache/helix/api/id/ControllerId.java   |   54 +
 .../main/java/org/apache/helix/api/id/Id.java   |   55 +
 .../java/org/apache/helix/api/id/MessageId.java |   54 +
 .../org/apache/helix/api/id/ParticipantId.java  |   54 +
 .../org/apache/helix/api/id/PartitionId.java    |  112 ++
 .../java/org/apache/helix/api/id/ProcId.java    |   54 +
 .../org/apache/helix/api/id/ResourceId.java     |   57 +
 .../java/org/apache/helix/api/id/SessionId.java |   54 +
 .../org/apache/helix/api/id/SpectatorId.java    |   51 +
 .../apache/helix/api/id/StateModelDefId.java    |   66 +
 .../helix/api/id/StateModelFactoryId.java       |   57 +
 .../helix/controller/ExternalViewGenerator.java |    2 +-
 .../controller/GenericHelixController.java      |   28 +-
 .../helix/controller/HelixControllerMain.java   |    4 +
 .../controller/rebalancer/AutoRebalancer.java   |  182 ---
 .../controller/rebalancer/CustomRebalancer.java |  128 +-
 .../rebalancer/FallbackRebalancer.java          |  185 +++
 .../rebalancer/FullAutoRebalancer.java          |  211 +++
 .../controller/rebalancer/HelixRebalancer.java  |   64 +
 .../helix/controller/rebalancer/Rebalancer.java |    9 +-
 .../controller/rebalancer/RebalancerRef.java    |   94 ++
 .../rebalancer/SemiAutoRebalancer.java          |   92 +-
 .../context/BasicRebalancerContext.java         |  240 ++++
 .../rebalancer/context/ContextSerializer.java   |   37 +
 .../context/CustomRebalancerContext.java        |  164 +++
 .../context/DefaultContextSerializer.java       |   83 ++
 .../context/FullAutoRebalancerContext.java      |   64 +
 .../context/PartitionedRebalancerContext.java   |  393 ++++++
 .../rebalancer/context/RebalancerConfig.java    |  182 +++
 .../rebalancer/context/RebalancerContext.java   |   94 ++
 .../context/ReplicatedRebalancerContext.java    |   40 +
 .../context/SemiAutoRebalancerContext.java      |  178 +++
 .../util/ConstraintBasedAssignment.java         |  254 +++-
 .../restlet/ZKPropertyTransferServer.java       |    6 +-
 .../restlet/ZNRecordUpdateResource.java         |   47 +-
 .../restlet/ZkPropertyTransferApplication.java  |    4 +-
 .../restlet/ZkPropertyTransferClient.java       |    9 +-
 .../stages/BestPossibleStateCalcStage.java      |  203 ++-
 .../stages/BestPossibleStateOutput.java         |   59 +-
 .../controller/stages/ClusterDataCache.java     |    9 +-
 .../stages/CompatibilityCheckStage.java         |   21 +-
 .../stages/CurrentStateComputationStage.java    |  112 +-
 .../controller/stages/CurrentStateOutput.java   |    1 +
 .../stages/ExternalViewComputeStage.java        |  154 ++-
 .../controller/stages/HealthDataCache.java      |    2 -
 .../stages/MessageGenerationOutput.java         |   65 -
 .../stages/MessageGenerationPhase.java          |  207 ---
 .../stages/MessageGenerationStage.java          |  213 ++++
 .../helix/controller/stages/MessageOutput.java  |   79 ++
 .../stages/MessageSelectionStage.java           |  142 ++-
 .../stages/MessageSelectionStageOutput.java     |   59 -
 .../controller/stages/MessageThrottleStage.java |   49 +-
 .../stages/MessageThrottleStageOutput.java      |   52 -
 .../stages/PersistAssignmentStage.java          |   45 +
 .../controller/stages/ReadClusterDataStage.java |   49 +-
 .../controller/stages/ReadHealthDataStage.java  |    2 -
 .../stages/RebalanceIdealStateStage.java        |   80 --
 .../stages/ResourceComputationStage.java        |  163 +--
 .../controller/stages/ResourceCurrentState.java |  273 ++++
 .../stages/StatsAggregationStage.java           |    4 +-
 .../controller/stages/TaskAssignmentStage.java  |   83 +-
 .../strategy/AutoRebalanceStrategy.java         |  194 ++-
 .../strategy/EspressoRelayStrategy.java         |    3 +-
 .../helix/controller/strategy/RUSHrHash.java    |    6 +-
 .../helix/healthcheck/DecayAggregationType.java |    2 +-
 .../DefaultHealthReportProvider.java            |    1 -
 .../ParticipantHealthReportCollectorImpl.java   |    2 +-
 .../PerformanceHealthReportProvider.java        |    2 +-
 .../java/org/apache/helix/healthcheck/Stat.java |    4 +-
 .../healthcheck/StatHealthReportProvider.java   |    4 +-
 .../helix/josql/ClusterJosqlQueryProcessor.java |    2 +-
 .../java/org/apache/helix/lock/HelixLock.java   |   43 +
 .../org/apache/helix/lock/HelixLockable.java    |   36 +
 .../org/apache/helix/lock/zk/LockListener.java  |   39 +
 .../apache/helix/lock/zk/ProtocolSupport.java   |  191 +++
 .../org/apache/helix/lock/zk/WriteLock.java     |  294 +++++
 .../org/apache/helix/lock/zk/ZKHelixLock.java   |  154 +++
 .../org/apache/helix/lock/zk/ZNodeName.java     |  113 ++
 .../helix/lock/zk/ZooKeeperOperation.java       |   38 +
 .../helix/manager/zk/AbstractManager.java       |  693 ----------
 .../java/org/apache/helix/manager/zk/Cache.java |    1 -
 .../helix/manager/zk/CallbackHandler.java       |    2 -
 .../helix/manager/zk/ControllerManager.java     |  175 ---
 .../manager/zk/ControllerManagerHelper.java     |    6 +-
 .../manager/zk/CurStateCarryOverUpdater.java    |   11 +-
 .../DefaultControllerMessageHandlerFactory.java |    8 +-
 ...ltParticipantErrorMessageHandlerFactory.java |   12 +-
 .../DefaultSchedulerMessageHandlerFactory.java  |   74 +-
 .../zk/DistributedControllerManager.java        |  190 ---
 .../manager/zk/DistributedLeaderElection.java   |   20 +-
 .../manager/zk/HelixConnectionAdaptor.java      |  321 +++++
 .../helix/manager/zk/HelixGroupCommit.java      |    1 -
 .../manager/zk/HelixManagerShutdownHook.java    |   45 +
 .../helix/manager/zk/ParticipantManager.java    |  155 ---
 .../manager/zk/ParticipantManagerHelper.java    |   37 +-
 .../helix/manager/zk/WriteThroughCache.java     |    1 -
 .../apache/helix/manager/zk/ZKHelixAdmin.java   |   79 +-
 .../helix/manager/zk/ZKHelixDataAccessor.java   |   19 +-
 .../apache/helix/manager/zk/ZKHelixManager.java | 1041 ++++++++-------
 .../manager/zk/ZNRecordStreamingSerializer.java |   33 +-
 .../helix/manager/zk/ZkAsyncCallbacks.java      |    3 +-
 .../helix/manager/zk/ZkBaseDataAccessor.java    |  817 ++++++------
 .../manager/zk/ZkCacheBaseDataAccessor.java     |   55 +-
 .../helix/manager/zk/ZkCallbackCache.java       |    1 -
 .../helix/manager/zk/ZkCallbackHandler.java     |  460 +++++++
 .../org/apache/helix/manager/zk/ZkClient.java   |   52 +-
 .../helix/manager/zk/ZkHelixAutoController.java |  133 ++
 .../helix/manager/zk/ZkHelixConnection.java     |  629 +++++++++
 .../helix/manager/zk/ZkHelixController.java     |  255 ++++
 .../helix/manager/zk/ZkHelixLeaderElection.java |  179 +++
 .../helix/manager/zk/ZkHelixParticipant.java    |  498 ++++++++
 .../helix/manager/zk/ZkStateChangeListener.java |  127 --
 .../zk/serializer/JacksonPayloadSerializer.java |    1 -
 .../apache/helix/messaging/AsyncCallback.java   |    2 +-
 .../messaging/DefaultMessagingService.java      |   30 +-
 .../handling/AsyncCallbackService.java          |   21 +-
 .../messaging/handling/BatchMessageHandler.java |   13 +-
 .../messaging/handling/GroupMessageHandler.java |    3 +-
 .../handling/HelixStateTransitionHandler.java   |  163 +--
 .../helix/messaging/handling/HelixTask.java     |   43 +-
 .../messaging/handling/HelixTaskExecutor.java   |   48 +-
 .../messaging/handling/MessageHandler.java      |    2 -
 .../messaging/handling/MessageTimeoutTask.java  |    2 +-
 .../org/apache/helix/model/AlertStatus.java     |   19 +
 .../java/org/apache/helix/model/Alerts.java     |   19 +
 .../helix/model/ClusterConfiguration.java       |  109 ++
 .../apache/helix/model/ClusterConstraints.java  |   77 +-
 .../org/apache/helix/model/CurrentState.java    |  130 +-
 .../org/apache/helix/model/ExternalView.java    |   87 ++
 .../apache/helix/model/HelixConfigScope.java    |   17 +
 .../java/org/apache/helix/model/IdealState.java |  397 +++++-
 .../org/apache/helix/model/InstanceConfig.java  |   65 +-
 .../org/apache/helix/model/LiveInstance.java    |   52 +-
 .../java/org/apache/helix/model/Message.java    |  375 +++++-
 .../java/org/apache/helix/model/Partition.java  |    2 +
 .../helix/model/PartitionConfiguration.java     |   58 +
 .../java/org/apache/helix/model/Resource.java   |    4 +-
 .../apache/helix/model/ResourceAssignment.java  |  147 ++-
 .../helix/model/ResourceConfiguration.java      |  115 ++
 .../helix/model/StateModelDefinition.java       |  203 ++-
 .../java/org/apache/helix/model/Transition.java |   46 +-
 .../helix/model/builder/AutoModeISBuilder.java  |   66 +-
 .../builder/AutoRebalanceModeISBuilder.java     |   36 +-
 .../builder/ClusterConstraintsBuilder.java      |   19 +-
 .../model/builder/ConstraintItemBuilder.java    |    2 +-
 .../model/builder/CurrentStateBuilder.java      |  124 ++
 .../model/builder/CustomModeISBuilder.java      |   65 +-
 .../helix/model/builder/IdealStateBuilder.java  |   25 +-
 .../builder/MessageConstraintItemBuilder.java   |  107 ++
 .../builder/ResourceAssignmentBuilder.java      |   93 ++
 .../builder/StateConstraintItemBuilder.java     |   92 ++
 .../builder/StateTransitionTableBuilder.java    |   19 +-
 .../util/StateModelDefinitionValidator.java     |  290 +++++
 .../apache/helix/monitoring/StatusDumpTask.java |  185 +++
 .../helix/monitoring/ZKPathDataDumpTask.java    |    8 +-
 .../monitoring/mbeans/ClusterMBeanObserver.java |    7 -
 .../monitoring/mbeans/ResourceMonitor.java      |   20 +-
 .../mbeans/StateTransitionStatMonitor.java      |    1 -
 .../DistClusterControllerElection.java          |    2 +-
 .../DistClusterControllerStateModel.java        |    8 +-
 .../participant/GenericLeaderStandbyModel.java  |    2 +-
 .../participant/HelixCustomCodeRunner.java      |   14 +-
 .../participant/HelixStateMachineEngine.java    |  166 ++-
 .../helix/participant/StateMachineEngine.java   |   66 +-
 .../statemachine/HelixStateModelFactory.java    |  118 ++
 .../HelixStateModelFactoryAdaptor.java          |   36 +
 .../statemachine/ScheduledTaskStateModel.java   |    1 +
 .../statemachine/StateModelFactory.java         |    5 +-
 .../apache/helix/tools/CLMLogFileAppender.java  |    5 -
 .../tools/ClusterExternalViewVerifier.java      |  188 +++
 .../helix/tools/ClusterLiveNodesVerifier.java   |   45 +
 .../org/apache/helix/tools/ClusterSetup.java    |   10 +-
 .../helix/tools/ClusterStateVerifier.java       |   90 +-
 .../org/apache/helix/tools/ClusterVerifier.java |  147 +++
 .../apache/helix/tools/IntegrationTestUtil.java |  204 +++
 .../org/apache/helix/tools/MessagePoster.java   |   24 +-
 .../org/apache/helix/tools/NewClusterSetup.java | 1200 ++++++++++++++++++
 .../helix/tools/StateModelConfigGenerator.java  |   11 +-
 .../apache/helix/tools/YAMLClusterSetup.java    |   35 +
 .../org/apache/helix/tools/ZkLogAnalyzer.java   |    9 +-
 .../org/apache/helix/util/RebalanceUtil.java    |   25 +-
 .../org/apache/helix/util/StatusUpdateUtil.java |   61 +-
 .../org/apache/helix/util/ZKClientPool.java     |    1 -
 .../src/test/java/org/apache/helix/Mocks.java   |    9 +-
 .../org/apache/helix/TestConfigAccessor.java    |    1 -
 .../java/org/apache/helix/TestGroupCommit.java  |    4 -
 .../apache/helix/TestHelixConfigAccessor.java   |    2 +-
 .../org/apache/helix/TestHelixTaskExecutor.java |   24 +-
 .../org/apache/helix/TestHelixTaskHandler.java  |   47 +-
 .../apache/helix/TestHelixVersionCompare.java   |   74 ++
 .../test/java/org/apache/helix/TestHelper.java  |  120 +-
 .../apache/helix/TestHierarchicalDataStore.java |    7 +-
 .../java/org/apache/helix/TestPerfCounters.java |    1 +
 .../TestPerformanceHealthReportProvider.java    |    2 -
 .../java/org/apache/helix/TestZKCallback.java   |   37 +-
 .../apache/helix/TestZKRoutingInfoProvider.java |    3 +-
 .../java/org/apache/helix/TestZNRecord.java     |    1 -
 .../apache/helix/TestZNRecordBucketizer.java    |    1 -
 .../test/java/org/apache/helix/TestZkBasis.java |   17 +-
 .../org/apache/helix/TestZkClientWrapper.java   |   46 +-
 .../java/org/apache/helix/TestZnodeModify.java  |    8 +-
 .../org/apache/helix/ZkHelixTestManager.java    |   44 -
 .../java/org/apache/helix/ZkTestHelper.java     |   62 +-
 .../java/org/apache/helix/ZkUnitTestBase.java   |   41 +-
 .../org/apache/helix/alerts/TestAddAlerts.java  |    4 +-
 .../helix/alerts/TestAddPersistentStats.java    |    3 +-
 .../helix/alerts/TestAlertValidation.java       |    3 -
 .../alerts/TestArrivingParticipantStats.java    |    4 +-
 .../helix/alerts/TestBaseStatsValidation.java   |    4 -
 .../apache/helix/alerts/TestEvaluateAlerts.java |    5 -
 .../org/apache/helix/alerts/TestOperators.java  |    4 -
 .../org/apache/helix/alerts/TestStatsMatch.java |    4 -
 .../test/java/org/apache/helix/api/TestId.java  |  109 ++
 .../apache/helix/api/TestNamespacedConfig.java  |  177 +++
 .../org/apache/helix/api/TestNewStages.java     |  250 ++++
 .../org/apache/helix/api/TestUpdateConfig.java  |  158 +++
 .../api/accessor/TestAccessorRecreate.java      |  170 +++
 .../helix/api/accessor/TestAtomicAccessors.java |  200 +++
 .../context/TestSerializeRebalancerContext.java |  103 ++
 .../helix/controller/stages/BaseStageTest.java  |   76 +-
 .../controller/stages/DummyClusterManager.java  |    6 +
 .../TestBestPossibleCalcStageCompatibility.java |   75 +-
 .../stages/TestBestPossibleStateCalcStage.java  |   28 +-
 .../stages/TestCompatibilityCheckStage.java     |    6 +-
 .../TestCurrentStateComputationStage.java       |   82 +-
 .../stages/TestMessageThrottleStage.java        |  110 +-
 .../stages/TestMsgSelectionStage.java           |  117 +-
 .../stages/TestParseInfoFromAlert.java          |   22 +-
 .../stages/TestRebalancePipeline.java           |  134 +-
 .../stages/TestResourceComputationStage.java    |   91 +-
 .../strategy/TestAutoRebalanceStrategy.java     |  272 +++-
 .../strategy/TestNewAutoRebalanceStrategy.java  |  615 +++++++++
 .../strategy/TestShufflingTwoStateStrategy.java |   68 +-
 .../helix/healthcheck/TestAddDropAlert.java     |   46 +-
 .../healthcheck/TestAlertActionTriggering.java  |   27 +-
 .../helix/healthcheck/TestAlertFireHistory.java |   42 +-
 .../helix/healthcheck/TestDummyAlerts.java      |   16 +-
 .../helix/healthcheck/TestExpandAlert.java      |   51 +-
 .../helix/healthcheck/TestSimpleAlert.java      |   51 +-
 .../healthcheck/TestSimpleWildcardAlert.java    |   53 +-
 .../helix/healthcheck/TestStalenessAlert.java   |   47 +-
 .../helix/healthcheck/TestWildcardAlert.java    |   47 +-
 .../helix/integration/TestAddClusterV2.java     |   80 +-
 .../TestAddNodeAfterControllerStart.java        |   58 +-
 .../TestAddStateModelFactoryAfterConnect.java   |   22 +-
 .../integration/TestAutoIsWithEmptyMap.java     |   14 +-
 .../helix/integration/TestAutoRebalance.java    |  122 +-
 .../TestAutoRebalancePartitionLimit.java        |  130 +-
 .../helix/integration/TestBatchMessage.java     |   63 +-
 .../integration/TestBatchMessageWrapper.java    |   18 +-
 .../integration/TestBucketizedResource.java     |   17 +-
 .../integration/TestCarryOverBadCurState.java   |   19 +-
 .../integration/TestCleanupExternalView.java    |   38 +-
 .../helix/integration/TestClusterStartsup.java  |   15 +-
 .../helix/integration/TestCustomIdealState.java |   12 -
 .../TestCustomizedIdealStateRebalancer.java     |  101 +-
 .../apache/helix/integration/TestDisable.java   |   38 +-
 .../helix/integration/TestDisableNode.java      |    2 +-
 .../helix/integration/TestDisablePartition.java |    2 +-
 .../integration/TestDistributedCMMain.java      |   20 +-
 .../TestDistributedClusterController.java       |   20 +-
 .../apache/helix/integration/TestDriver.java    |   80 +-
 .../org/apache/helix/integration/TestDrop.java  |  158 ++-
 .../helix/integration/TestDropResource.java     |    9 +-
 .../TestEnablePartitionDuringDisable.java       |   35 +-
 .../helix/integration/TestErrorPartition.java   |   28 +-
 .../integration/TestExternalViewUpdates.java    |   23 +-
 .../helix/integration/TestFailOverPerf1kp.java  |    1 -
 .../integration/TestFullAutoNodeTagging.java    |  438 +++++++
 .../helix/integration/TestHelixConnection.java  |  173 +++
 .../integration/TestHelixCustomCodeRunner.java  |   46 +-
 .../helix/integration/TestHelixInstanceTag.java |    3 +-
 .../helix/integration/TestInstanceAutoJoin.java |   25 +-
 .../integration/TestInvalidAutoIdealState.java  |   21 +-
 .../TestMessagePartitionStateMismatch.java      |   46 +-
 .../helix/integration/TestMessageThrottle.java  |   24 +-
 .../helix/integration/TestMessageThrottle2.java |   29 +-
 .../helix/integration/TestMessagingService.java |  131 +-
 .../integration/TestNonOfflineInitState.java    |   28 +-
 .../helix/integration/TestNullReplica.java      |   15 +-
 .../TestParticipantErrorMessage.java            |   32 +-
 .../TestParticipantNameCollision.java           |    9 +-
 .../helix/integration/TestPauseSignal.java      |   15 +-
 .../integration/TestRedefineStateModelDef.java  |  161 +++
 .../helix/integration/TestRenamePartition.java  |   50 +-
 .../helix/integration/TestResetInstance.java    |   18 +-
 .../integration/TestResetPartitionState.java    |   30 +-
 .../helix/integration/TestResetResource.java    |   18 +-
 .../integration/TestRestartParticipant.java     |   41 +-
 .../helix/integration/TestSchedulerMessage.java |  168 ++-
 .../helix/integration/TestSchemataSM.java       |   14 +-
 .../TestSessionExpiryInTransition.java          |   37 +-
 .../helix/integration/TestStandAloneCMMain.java |   40 +-
 .../TestStandAloneCMSessionExpiry.java          |   22 +-
 ...estStartMultipleControllersWithSameName.java |    9 +-
 .../integration/TestStateTransitionTimeout.java |   57 +-
 .../helix/integration/TestSwapInstance.java     |   16 +-
 .../TestUserDefRebalancerCompatibility.java     |  104 ++
 .../integration/TestZkCallbackHandlerLeak.java  |   95 +-
 .../helix/integration/TestZkReconnect.java      |   10 +-
 .../integration/ZkIntegrationTestBase.java      |   55 +-
 .../integration/ZkStandAloneCMTestBase.java     |   63 +-
 ...dAloneCMTestBaseWithPropertyServerCheck.java |   25 +-
 .../manager/ClusterControllerManager.java       |   17 +-
 .../manager/ClusterDistributedController.java   |   20 +-
 .../manager/MockParticipantManager.java         |    8 +-
 .../manager/TestConsecutiveZkSessionExpiry.java |    1 -
 .../TestDistributedControllerManager.java       |    9 +-
 .../manager/TestParticipantManager.java         |   30 +-
 .../apache/helix/josql/TestJosqlProcessor.java  |    9 +-
 .../apache/helix/lock/zk/TestZKHelixLock.java   |  127 ++
 .../TestDefaultControllerMsgHandlerFactory.java |   19 +-
 .../helix/manager/zk/TestHandleNewSession.java  |   17 +-
 .../manager/zk/TestLiveInstanceBounce.java      |   22 +-
 .../zk/TestWtCacheAsyncOpMultiThread.java       |    2 -
 .../zk/TestWtCacheAsyncOpSingleThread.java      |    2 -
 .../zk/TestWtCacheSyncOpSingleThread.java       |    2 -
 .../manager/zk/TestZKLiveInstanceData.java      |    2 -
 .../zk/TestZKPropertyTransferServer.java        |   20 +-
 .../helix/manager/zk/TestZNRecordSizeLimit.java |   25 +-
 .../zk/TestZNRecordStreamingSerializer.java     |   92 ++
 .../manager/zk/TestZkBaseDataAccessor.java      |    3 -
 .../zk/TestZkCacheAsyncOpSingleThread.java      |    4 -
 .../zk/TestZkCacheSyncOpSingleThread.java       |    5 -
 .../helix/manager/zk/TestZkClusterManager.java  |   19 +-
 .../apache/helix/manager/zk/TestZkFlapping.java |  293 +++++
 .../helix/manager/zk/TestZkHelixAdmin.java      |   20 +-
 .../manager/zk/TestZkHelixAutoController.java   |  120 ++
 .../helix/manager/zk/TestZkHelixController.java |  160 +++
 .../manager/zk/TestZkHelixParticipant.java      |  103 ++
 .../zk/TestZkManagerFlappingDetection.java      |  117 +-
 .../manager/zk/TestZkStateChangeListener.java   |   56 +-
 .../helix/messaging/TestAsyncCallback.java      |   10 +-
 .../helix/messaging/TestAsyncCallbackSvc.java   |   50 +-
 .../messaging/TestDefaultMessagingService.java  |    4 +-
 .../handling/TestConfigThreadpoolSize.java      |   14 +-
 .../handling/TestHelixTaskExecutor.java         |   89 +-
 .../handling/TestResourceThreadpoolSize.java    |   12 +-
 .../mock/controller/ClusterController.java      |  129 --
 .../helix/mock/controller/MockController.java   |   22 +-
 .../mock/controller/MockControllerProcess.java  |   17 +-
 .../helix/mock/participant/DummyProcess.java    |    7 +-
 .../helix/mock/participant/ErrTransition.java   |   10 +-
 .../MockHealthReportParticipant.java            |   16 +-
 .../mock/participant/MockMSModelFactory.java    |    2 -
 .../mock/participant/MockMSStateModel.java      |   13 +
 .../helix/mock/participant/MockParticipant.java |  197 ---
 .../StoreAccessDiffNodeTransition.java          |    4 +-
 .../StoreAccessOneNodeTransition.java           |    5 +-
 .../org/apache/helix/model/TestConstraint.java  |   17 +-
 .../org/apache/helix/model/TestIdealState.java  |   34 +-
 .../helix/model/TestStateModelValidity.java     |  252 ++++
 .../monitoring/TestParticipantMonitor.java      |    3 -
 .../helix/monitoring/TestStatCollector.java     |    4 +-
 .../TestClusterAlertItemMBeanCollection.java    |    4 -
 .../monitoring/mbeans/TestResourceMonitor.java  |    3 +-
 .../helix/participant/MockZKHelixManager.java   |    6 +
 .../participant/TestDistControllerElection.java |    3 +-
 .../TestDistControllerStateModel.java           |   34 +-
 .../TestDistControllerStateModelFactory.java    |    3 -
 .../apache/helix/store/TestJsonComparator.java  |    1 -
 .../store/zk/TestZkHelixPropertyStore.java      |    1 -
 .../apache/helix/tools/TestClusterSetup.java    |    7 +-
 .../apache/helix/tools/TestHelixAdminCli.java   |  194 +--
 .../org/apache/helix/util/TestZKClientPool.java |    1 -
 helix-examples/pom.xml                          |    6 +-
 .../apache/helix/examples/BootstrapHandler.java |    7 +-
 .../apache/helix/examples/BootstrapProcess.java |    7 +-
 .../apache/helix/examples/DummyParticipant.java |   25 +-
 .../apache/helix/examples/ExampleProcess.java   |   14 +-
 .../helix/examples/IdealStateExample.java       |    5 +-
 .../helix/examples/LogicalModelExample.java     |  297 +++++
 .../examples/MasterSlaveStateModelFactory.java  |   17 +-
 .../org/apache/helix/examples/Quickstart.java   |   20 +-
 hpost-review.sh                                 |   15 +
 pom.xml                                         |  132 +-
 recipes/auto-scale/pom.xml                      |    2 +-
 .../autoscale/impl/yarn/YarnMasterProcess.java  |  194 ++-
 .../autoscale/impl/yarn/YarnMasterService.java  |  998 +++++++++------
 recipes/distributed-lock-manager/pom.xml        |    2 +-
 .../apache/helix/lockmanager/LockFactory.java   |    9 +-
 .../helix/lockmanager/LockManagerDemo.java      |    7 +-
 .../apache/helix/lockmanager/LockProcess.java   |    5 +-
 recipes/pom.xml                                 |    2 +-
 recipes/rabbitmq-consumer-group/pom.xml         |    2 +-
 .../apache/helix/recipes/rabbitmq/Consumer.java |    5 +-
 .../rabbitmq/ConsumerStateModelFactory.java     |   10 +-
 .../recipes/rabbitmq/SetupConsumerCluster.java  |    5 +-
 recipes/rsync-replicated-file-system/pom.xml    |    2 +-
 .../helix/filestore/ChangeLogGenerator.java     |    2 -
 .../helix/filestore/ChangeLogProcessor.java     |    6 -
 .../apache/helix/filestore/ChangeLogReader.java |    2 -
 .../org/apache/helix/filestore/FileStore.java   |    9 +-
 .../helix/filestore/FileStoreStateModel.java    |   38 +-
 .../filestore/FileStoreStateModelFactory.java   |   10 +-
 .../apache/helix/filestore/SetupCluster.java    |    5 +-
 .../java/org/apache/helix/filestore/Test.java   |    3 -
 recipes/service-discovery/pom.xml               |    2 +-
 .../servicediscovery/ServiceDiscovery.java      |    1 -
 recipes/task-execution/pom.xml                  |    4 +-
 .../helix/taskexecution/TaskStateModel.java     |   17 +-
 .../taskexecution/TaskStateModelFactory.java    |   10 +-
 .../org/apache/helix/taskexecution/Worker.java  |    4 +-
 recipes/user-defined-rebalancer/pom.xml         |    2 +-
 .../helix/userdefinedrebalancer/Lock.java       |    5 +
 .../userdefinedrebalancer/LockFactory.java      |   10 +-
 .../LockManagerRebalancer.java                  |   63 +-
 .../userdefinedrebalancer/LockProcess.java      |    5 +-
 site-releases/0.6.1-incubating/pom.xml          |   51 +
 .../src/site/apt/privacy-policy.apt             |   52 +
 .../releasenotes/release-0.6.1-incubating.apt   |  110 ++
 .../0.6.1-incubating/src/site/apt/releasing.apt |  107 ++
 .../src/site/markdown/Architecture.md           |  248 ++++
 .../src/site/markdown/Building.md               |   46 +
 .../src/site/markdown/Concepts.md               |  268 ++++
 .../src/site/markdown/Features.md               |  306 +++++
 .../src/site/markdown/Quickstart.md             |  622 +++++++++
 .../src/site/markdown/Tutorial.md               |  199 +++
 .../src/site/markdown/UseCases.md               |  109 ++
 .../0.6.1-incubating/src/site/markdown/index.md |   54 +
 .../src/site/markdown/recipes/lock_manager.md   |  253 ++++
 .../markdown/recipes/rabbitmq_consumer_group.md |  227 ++++
 .../recipes/rsync_replicated_file_store.md      |  165 +++
 .../site/markdown/recipes/service_discovery.md  |  191 +++
 .../site/markdown/recipes/task_dag_execution.md |  204 +++
 .../src/site/markdown/tutorial_admin.md         |  167 +++
 .../src/site/markdown/tutorial_controller.md    |   90 ++
 .../src/site/markdown/tutorial_health.md        |   42 +
 .../src/site/markdown/tutorial_messaging.md     |   67 +
 .../src/site/markdown/tutorial_participant.md   |  100 ++
 .../src/site/markdown/tutorial_propstore.md     |   30 +
 .../src/site/markdown/tutorial_rebalance.md     |  168 +++
 .../src/site/markdown/tutorial_spectator.md     |   72 ++
 .../src/site/markdown/tutorial_state.md         |   60 +
 .../src/site/markdown/tutorial_throttling.md    |   34 +
 .../src/site/resources/.htaccess                |   20 +
 .../src/site/resources/download.cgi             |   22 +
 .../site/resources/images/HELIX-components.png  |  Bin 0 -> 82112 bytes
 .../src/site/resources/images/PFS-Generic.png   |  Bin 0 -> 72435 bytes
 .../site/resources/images/RSYNC_BASED_PFS.png   |  Bin 0 -> 78007 bytes
 .../resources/images/bootstrap_statemodel.gif   |  Bin 0 -> 24919 bytes
 .../resources/images/helix-architecture.png     |  Bin 0 -> 282390 bytes
 .../src/site/resources/images/helix-logo.jpg    |  Bin 0 -> 13659 bytes
 .../resources/images/helix-znode-layout.png     |  Bin 0 -> 53074 bytes
 .../src/site/resources/images/statemachine.png  |  Bin 0 -> 41641 bytes
 .../src/site/resources/images/system.png        |  Bin 0 -> 79791 bytes
 .../0.6.1-incubating/src/site/site.xml          |  119 ++
 .../src/site/xdoc/download.xml.vm               |  193 +++
 .../0.6.1-incubating/src/test/conf/testng.xml   |   27 +
 site-releases/0.6.2-incubating/pom.xml          |   51 +
 .../src/site/apt/privacy-policy.apt             |   52 +
 .../releasenotes/release-0.6.2-incubating.apt   |  181 +++
 .../0.6.2-incubating/src/site/apt/releasing.apt |  107 ++
 .../src/site/markdown/Architecture.md           |  252 ++++
 .../src/site/markdown/Building.md               |   46 +
 .../src/site/markdown/Concepts.md               |  275 ++++
 .../src/site/markdown/Features.md               |  313 +++++
 .../src/site/markdown/Quickstart.md             |  626 +++++++++
 .../src/site/markdown/Tutorial.md               |  205 +++
 .../0.6.2-incubating/src/site/markdown/index.md |   58 +
 .../src/site/markdown/recipes/lock_manager.md   |  253 ++++
 .../markdown/recipes/rabbitmq_consumer_group.md |  227 ++++
 .../recipes/rsync_replicated_file_store.md      |  165 +++
 .../site/markdown/recipes/service_discovery.md  |  191 +++
 .../site/markdown/recipes/task_dag_execution.md |  204 +++
 .../src/site/markdown/tutorial_admin.md         |  407 ++++++
 .../src/site/markdown/tutorial_controller.md    |   94 ++
 .../src/site/markdown/tutorial_health.md        |   46 +
 .../src/site/markdown/tutorial_messaging.md     |   71 ++
 .../src/site/markdown/tutorial_participant.md   |  105 ++
 .../src/site/markdown/tutorial_propstore.md     |   34 +
 .../src/site/markdown/tutorial_rebalance.md     |  181 +++
 .../src/site/markdown/tutorial_spectator.md     |   76 ++
 .../src/site/markdown/tutorial_state.md         |  131 ++
 .../src/site/markdown/tutorial_throttling.md    |   38 +
 .../markdown/tutorial_user_def_rebalancer.md    |  172 +++
 .../src/site/markdown/tutorial_yaml.md          |  102 ++
 .../src/site/resources/.htaccess                |   20 +
 .../src/site/resources/download.cgi             |   22 +
 .../site/resources/images/HELIX-components.png  |  Bin 0 -> 82112 bytes
 .../src/site/resources/images/PFS-Generic.png   |  Bin 0 -> 72435 bytes
 .../site/resources/images/RSYNC_BASED_PFS.png   |  Bin 0 -> 78007 bytes
 .../resources/images/bootstrap_statemodel.gif   |  Bin 0 -> 24919 bytes
 .../resources/images/helix-architecture.png     |  Bin 0 -> 282390 bytes
 .../src/site/resources/images/helix-logo.jpg    |  Bin 0 -> 13659 bytes
 .../resources/images/helix-znode-layout.png     |  Bin 0 -> 53074 bytes
 .../src/site/resources/images/statemachine.png  |  Bin 0 -> 41641 bytes
 .../src/site/resources/images/system.png        |  Bin 0 -> 79791 bytes
 .../0.6.2-incubating/src/site/site.xml          |  119 ++
 .../src/site/xdoc/download.xml.vm               |  193 +++
 .../0.6.2-incubating/src/test/conf/testng.xml   |   27 +
 site-releases/0.7.0-incubating/pom.xml          |   51 +
 .../src/site/apt/privacy-policy.apt             |   52 +
 .../releasenotes/release-0.7.0-incubating.apt   |  174 +++
 .../0.7.0-incubating/src/site/apt/releasing.apt |  107 ++
 .../src/site/markdown/Architecture.md           |  252 ++++
 .../src/site/markdown/Building.md               |   46 +
 .../src/site/markdown/Concepts.md               |  275 ++++
 .../src/site/markdown/Features.md               |  313 +++++
 .../src/site/markdown/Quickstart.md             |  626 +++++++++
 .../src/site/markdown/Tutorial.md               |  284 +++++
 .../src/site/markdown/UseCases.md               |  113 ++
 .../0.7.0-incubating/src/site/markdown/index.md |   60 +
 .../src/site/markdown/recipes/lock_manager.md   |  253 ++++
 .../markdown/recipes/rabbitmq_consumer_group.md |  227 ++++
 .../recipes/rsync_replicated_file_store.md      |  165 +++
 .../site/markdown/recipes/service_discovery.md  |  191 +++
 .../site/markdown/recipes/task_dag_execution.md |  204 +++
 .../markdown/recipes/user_def_rebalancer.md     |  285 +++++
 .../src/site/markdown/tutorial_accessors.md     |  125 ++
 .../src/site/markdown/tutorial_admin.md         |  407 ++++++
 .../src/site/markdown/tutorial_controller.md    |   79 ++
 .../src/site/markdown/tutorial_health.md        |   46 +
 .../src/site/markdown/tutorial_messaging.md     |   71 ++
 .../src/site/markdown/tutorial_participant.md   |   97 ++
 .../src/site/markdown/tutorial_propstore.md     |   34 +
 .../src/site/markdown/tutorial_rebalance.md     |  181 +++
 .../src/site/markdown/tutorial_spectator.md     |   76 ++
 .../src/site/markdown/tutorial_state.md         |  131 ++
 .../src/site/markdown/tutorial_throttling.md    |   38 +
 .../markdown/tutorial_user_def_rebalancer.md    |  227 ++++
 .../src/site/markdown/tutorial_yaml.md          |  102 ++
 .../src/site/resources/.htaccess                |   20 +
 .../src/site/resources/download.cgi             |   22 +
 .../site/resources/images/HELIX-components.png  |  Bin 0 -> 82112 bytes
 .../src/site/resources/images/PFS-Generic.png   |  Bin 0 -> 72435 bytes
 .../site/resources/images/RSYNC_BASED_PFS.png   |  Bin 0 -> 78007 bytes
 .../resources/images/bootstrap_statemodel.gif   |  Bin 0 -> 24919 bytes
 .../resources/images/helix-architecture.png     |  Bin 0 -> 282390 bytes
 .../src/site/resources/images/helix-logo.jpg    |  Bin 0 -> 13659 bytes
 .../resources/images/helix-znode-layout.png     |  Bin 0 -> 53074 bytes
 .../src/site/resources/images/statemachine.png  |  Bin 0 -> 41641 bytes
 .../src/site/resources/images/system.png        |  Bin 0 -> 79791 bytes
 .../0.7.0-incubating/src/site/site.xml          |  120 ++
 .../src/site/xdoc/download.xml.vm               |  193 +++
 .../0.7.0-incubating/src/test/conf/testng.xml   |   27 +
 site-releases/pom.xml                           |   50 +
 site-releases/trunk/pom.xml                     |   51 +
 .../trunk/src/site/apt/privacy-policy.apt       |   52 +
 site-releases/trunk/src/site/apt/releasing.apt  |  107 ++
 .../trunk/src/site/markdown/Architecture.md     |  252 ++++
 .../trunk/src/site/markdown/Building.md         |   29 +
 .../trunk/src/site/markdown/Concepts.md         |  275 ++++
 .../trunk/src/site/markdown/Features.md         |  313 +++++
 .../trunk/src/site/markdown/Quickstart.md       |  621 +++++++++
 .../trunk/src/site/markdown/Tutorial.md         |  284 +++++
 .../trunk/src/site/markdown/UseCases.md         |  113 ++
 site-releases/trunk/src/site/markdown/index.md  |   56 +
 .../src/site/markdown/recipes/lock_manager.md   |  253 ++++
 .../markdown/recipes/rabbitmq_consumer_group.md |  227 ++++
 .../recipes/rsync_replicated_file_store.md      |  165 +++
 .../site/markdown/recipes/service_discovery.md  |  191 +++
 .../site/markdown/recipes/task_dag_execution.md |  204 +++
 .../markdown/recipes/user_def_rebalancer.md     |  285 +++++
 .../src/site/markdown/tutorial_accessors.md     |  125 ++
 .../trunk/src/site/markdown/tutorial_admin.md   |  407 ++++++
 .../src/site/markdown/tutorial_controller.md    |   79 ++
 .../trunk/src/site/markdown/tutorial_health.md  |   46 +
 .../src/site/markdown/tutorial_messaging.md     |   71 ++
 .../src/site/markdown/tutorial_participant.md   |   97 ++
 .../src/site/markdown/tutorial_propstore.md     |   34 +
 .../src/site/markdown/tutorial_rebalance.md     |  181 +++
 .../src/site/markdown/tutorial_spectator.md     |   76 ++
 .../trunk/src/site/markdown/tutorial_state.md   |  131 ++
 .../src/site/markdown/tutorial_throttling.md    |   38 +
 .../markdown/tutorial_user_def_rebalancer.md    |  227 ++++
 .../trunk/src/site/markdown/tutorial_yaml.md    |  102 ++
 .../trunk/src/site/resources/.htaccess          |   20 +
 .../trunk/src/site/resources/download.cgi       |   22 +
 .../site/resources/images/HELIX-components.png  |  Bin 0 -> 82112 bytes
 .../src/site/resources/images/PFS-Generic.png   |  Bin 0 -> 72435 bytes
 .../site/resources/images/RSYNC_BASED_PFS.png   |  Bin 0 -> 78007 bytes
 .../resources/images/bootstrap_statemodel.gif   |  Bin 0 -> 24919 bytes
 .../resources/images/helix-architecture.png     |  Bin 0 -> 282390 bytes
 .../src/site/resources/images/helix-logo.jpg    |  Bin 0 -> 13659 bytes
 .../resources/images/helix-znode-layout.png     |  Bin 0 -> 53074 bytes
 .../src/site/resources/images/statemachine.png  |  Bin 0 -> 41641 bytes
 .../trunk/src/site/resources/images/system.png  |  Bin 0 -> 79791 bytes
 site-releases/trunk/src/site/site.xml           |  118 ++
 .../trunk/src/site/xdoc/download.xml.vm         |  193 +++
 site-releases/trunk/src/test/conf/testng.xml    |   27 +
 .../releasenotes/release-0.6.2-incubating.apt   |  181 +++
 .../releasenotes/release-0.7.0-incubating.apt   |  174 +++
 src/site/apt/releasing.apt                      |   55 +-
 src/site/markdown/Architecture.md               |    5 +
 src/site/markdown/Concepts.md                   |    9 +-
 src/site/markdown/Features.md                   |  306 -----
 src/site/markdown/IRC.md                        |   33 +
 src/site/markdown/Publications.md               |   37 +
 src/site/markdown/Quickstart.md                 |  622 ---------
 src/site/markdown/Tutorial.md                   |  201 ---
 src/site/markdown/UseCases.md                   |    4 +
 src/site/markdown/index.md                      |   91 +-
 src/site/markdown/involved/building.md          |    6 +-
 src/site/markdown/recipes/lock_manager.md       |  253 ----
 .../markdown/recipes/rabbitmq_consumer_group.md |  227 ----
 .../recipes/rsync_replicated_file_store.md      |  165 ---
 src/site/markdown/recipes/service_discovery.md  |  191 ---
 src/site/markdown/recipes/task_dag_execution.md |  204 ---
 .../markdown/recipes/user_def_rebalancer.md     |  287 -----
 src/site/markdown/tutorial_admin.md             |  403 ------
 src/site/markdown/tutorial_controller.md        |   90 --
 src/site/markdown/tutorial_health.md            |   42 -
 src/site/markdown/tutorial_messaging.md         |   67 -
 src/site/markdown/tutorial_participant.md       |  101 --
 src/site/markdown/tutorial_propstore.md         |   30 -
 src/site/markdown/tutorial_rebalance.md         |  177 ---
 src/site/markdown/tutorial_spectator.md         |   72 --
 src/site/markdown/tutorial_state.md             |   60 -
 src/site/markdown/tutorial_throttling.md        |   34 -
 .../markdown/tutorial_user_def_rebalancer.md    |  196 ---
 src/site/markdown/tutorial_yaml.md              |   98 --
 src/site/resources/.htaccess                    |    3 +
 src/site/resources/images/PFS-Generic.png       |  Bin 72435 -> 0 bytes
 src/site/resources/images/RSYNC_BASED_PFS.png   |  Bin 78007 -> 0 bytes
 src/site/site.xml                               |   38 +-
 src/site/xdoc/download.xml.vm                   |    2 +-
 711 files changed, 51795 insertions(+), 12947 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/6dece848/helix-core/src/main/java/org/apache/helix/ZNRecord.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/6dece848/helix-core/src/main/java/org/apache/helix/controller/stages/CurrentStateOutput.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/6dece848/helix-core/src/main/java/org/apache/helix/model/CurrentState.java
----------------------------------------------------------------------
diff --cc helix-core/src/main/java/org/apache/helix/model/CurrentState.java
index 47bccb9,5c9bcbc..25af858
--- a/helix-core/src/main/java/org/apache/helix/model/CurrentState.java
+++ b/helix-core/src/main/java/org/apache/helix/model/CurrentState.java
@@@ -117,25 -169,16 +171,34 @@@ public class CurrentState extends Helix
      return null;
    }
  
 +  public String getInfo(String partitionName) {
 +    Map<String, Map<String, String>> mapFields = _record.getMapFields();
 +    Map<String, String> mapField = mapFields.get(partitionName);
 +    if (mapField != null) {
 +      return mapField.get(CurrentStateProperty.INFO.name());
 +    }
 +    return null;
 +  }
 +
 +  public String getRequestedState(String partitionName) {
 +    Map<String, Map<String, String>> mapFields = _record.getMapFields();
 +    Map<String, String> mapField = mapFields.get(partitionName);
 +    if (mapField != null) {
 +      return mapField.get(CurrentStateProperty.REQUESTED_STATE.name());
 +    }
 +    return null;
 +  }
 +
    /**
+    * Get the state of a partition on this instance
+    * @param partitionId partition id
+    * @return State
+    */
+   public State getState(PartitionId partitionId) {
+     return State.from(getState(partitionId.stringify()));
+   }
+ 
+   /**
     * Set the state model that the resource follows
     * @param stateModelName an identifier of the state model
     */

http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/6dece848/helix-core/src/main/java/org/apache/helix/tools/ClusterSetup.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/6dece848/helix-core/src/main/java/org/apache/helix/tools/StateModelConfigGenerator.java
----------------------------------------------------------------------
diff --cc helix-core/src/main/java/org/apache/helix/tools/StateModelConfigGenerator.java
index b8b3aeb,8127626..6324b80
--- a/helix-core/src/main/java/org/apache/helix/tools/StateModelConfigGenerator.java
+++ b/helix-core/src/main/java/org/apache/helix/tools/StateModelConfigGenerator.java
@@@ -23,7 -23,9 +23,8 @@@ import java.util.ArrayList
  import java.util.HashMap;
  import java.util.List;
  import java.util.Map;
 -
  import org.apache.helix.ZNRecord;
+ import org.apache.helix.api.State;
  import org.apache.helix.manager.zk.DefaultSchedulerMessageHandlerFactory;
  import org.apache.helix.manager.zk.ZNRecordSerializer;
  import org.apache.helix.model.StateModelDefinition.StateModelDefinitionProperty;

http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/6dece848/helix-core/src/test/java/org/apache/helix/integration/ZkIntegrationTestBase.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/6dece848/recipes/auto-scale/pom.xml
----------------------------------------------------------------------
diff --cc recipes/auto-scale/pom.xml
index 0482d3d,0000000..7da0adc
mode 100644,000000..100644
--- a/recipes/auto-scale/pom.xml
+++ b/recipes/auto-scale/pom.xml
@@@ -1,210 -1,0 +1,210 @@@
 +<?xml version="1.0" encoding="UTF-8" ?>
 +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 +  <modelVersion>4.0.0</modelVersion>
 +
 +  <parent>
 +    <groupId>org.apache.helix.recipes</groupId>
 +    <artifactId>recipes</artifactId>
-     <version>0.6.2-incubating-SNAPSHOT</version>
++    <version>0.7.1-incubating-SNAPSHOT</version>
 +  </parent>
 +
 +  <artifactId>auto-scale</artifactId>
 +  <packaging>jar</packaging>
 +  <name>Apache Helix :: Recipes :: Auto-Scale</name>
 +  
 +  <properties>
 +    <hadoop.version>2.2.0</hadoop.version>
 +
 +    <ut.groups>unit</ut.groups>
 +    <it.groups>local, shell</it.groups>
 +  </properties>
 +
 +  <dependencies>
 +    <dependency>
 +      <groupId>org.testng</groupId>
 +      <artifactId>testng</artifactId>
 +      <version>6.0.1</version>
 +      <scope>test</scope>
 +      <exclusions>
 +        <exclusion>
 +          <groupId>junit</groupId>
 +          <artifactId>junit</artifactId>
 +        </exclusion>
 +      </exclusions>
 +    </dependency>
 +    <dependency>
 +      <groupId>com.google.code.gson</groupId>
 +      <artifactId>gson</artifactId>
 +      <version>2.2.4</version>
 +    </dependency>
 +    <dependency>
 +      <groupId>org.apache.helix</groupId>
 +      <artifactId>helix-core</artifactId>
 +    </dependency>
 +    <dependency>
 +      <groupId>log4j</groupId>
 +      <artifactId>log4j</artifactId>
 +      <exclusions>
 +        <exclusion>
 +          <groupId>javax.mail</groupId>
 +          <artifactId>mail</artifactId>
 +        </exclusion>
 +        <exclusion>
 +          <groupId>javax.jms</groupId>
 +          <artifactId>jms</artifactId>
 +        </exclusion>
 +        <exclusion>
 +          <groupId>com.sun.jdmk</groupId>
 +          <artifactId>jmxtools</artifactId>
 +        </exclusion>
 +        <exclusion>
 +          <groupId>com.sun.jmx</groupId>
 +          <artifactId>jmxri</artifactId>
 +        </exclusion>
 +      </exclusions>
 +    </dependency>
 +    <dependency>
 +      <groupId>com.google.guava</groupId>
 +      <artifactId>guava</artifactId>
 +      <version>14.0.1</version>
 +    </dependency>
 +    <dependency>
 +      <groupId>org.apache.hadoop</groupId>
 +      <artifactId>hadoop-client</artifactId>
 +      <version>${hadoop.version}</version>
 +    </dependency>
 +    <dependency>
 +      <groupId>org.apache.hadoop</groupId>
 +      <artifactId>hadoop-yarn-api</artifactId>
 +      <version>${hadoop.version}</version>
 +    </dependency>
 +    <dependency>
 +      <groupId>org.apache.hadoop</groupId>
 +      <artifactId>hadoop-yarn-common</artifactId>
 +      <version>${hadoop.version}</version>
 +    </dependency>
 +  </dependencies>
 +  
 +  <build>
 +    <pluginManagement>
 +      <plugins>
 +        <plugin>
 +          <groupId>org.codehaus.mojo</groupId>
 +          <artifactId>appassembler-maven-plugin</artifactId>
 +          <configuration>
 +            <configurationDirectory>conf</configurationDirectory>
 +            <copyConfigurationDirectory>true</copyConfigurationDirectory>
 +            <includeConfigurationDirectoryInClasspath>true</includeConfigurationDirectoryInClasspath>
 +            <assembleDirectory>${project.build.directory}/metamanager-pkg</assembleDirectory>
 +            <extraJvmArguments>-Xms512m -Xmx512m</extraJvmArguments>
 +            <platforms>
 +              <platform>unix</platform>
 +            </platforms>
 +          </configuration>
 +          <executions>
 +            <execution>
 +              <phase>package</phase>
 +              <goals>
 +                <goal>assemble</goal>
 +              </goals>
 +            </execution>
 +          </executions>
 +        </plugin>
 +        <plugin>
 +          <groupId>org.apache.rat</groupId>
 +          <artifactId>apache-rat-plugin</artifactId>
 +            <configuration>
 +              <excludes combine.children="append">
 +              </excludes>
 +            </configuration>
 +        </plugin>
 +      </plugins>
 +    </pluginManagement>
 +    
 +    <plugins>
 +      <plugin>
 +        <groupId>org.codehaus.mojo</groupId>
 +        <artifactId>appassembler-maven-plugin</artifactId>
 +        <configuration>
 +          <programs>
 +            <program>
 +              <mainClass>org.apache.helix.autoscale.bootstrapper.Boot</mainClass>
 +              <name>boot</name>
 +            </program>
 +            <program>
 +              <mainClass>org.apache.helix.autoscale.impl.shell.ShellContainerProcess</mainClass>
 +              <name>shell-container-process</name>
 +            </program>
 +            <program>
 +              <mainClass>org.apache.helix.autoscale.impl.yarn.YarnMasterProcess</mainClass>
 +              <name>yarn-master-process</name>
 +            </program>
 +            <program>
 +              <mainClass>org.apache.helix.autoscale.impl.yarn.YarnContainerProcess</mainClass>
 +              <name>yarn-container-process</name>
 +            </program>
 +            <program>
 +              <mainClass>org.apache.helix.autoscale.ZookeeperSetter</mainClass>
 +              <name>zookeeper-setter</name>
 +            </program>
 +          </programs>
 +        </configuration>
 +      </plugin>
 +      <plugin>
 +        <groupId>org.apache.maven.plugins</groupId>
 +        <artifactId>maven-assembly-plugin</artifactId>
 +        <executions>
 +          <execution>
 +            <phase>package</phase>
 +            <goals>
 +              <goal>single</goal>
 +            </goals>
 +          </execution>
 +        </executions>
 +        <configuration>
 +          <finalName>metamanager</finalName>
 +          <descriptor>src/main/assembly/assembly.xml</descriptor>
 +        </configuration>
 +      </plugin>
 +      <plugin>
 +        <groupId>org.apache.maven.plugins</groupId>
 +        <artifactId>maven-surefire-plugin</artifactId>
 +        <configuration>
 +          <groups>${ut.groups}</groups>
 +          <excludedGroups>integration</excludedGroups>
 +          <suiteXmlFiles>
 +            <suiteXmlFile>src/test/config/testng.xml</suiteXmlFile>
 +          </suiteXmlFiles>
 +        </configuration>
 +      </plugin>
 +      <plugin>
 +        <groupId>org.apache.maven.plugins</groupId>
 +        <artifactId>maven-failsafe-plugin</artifactId>
 +        <configuration>
 +          <groups>${it.groups}</groups>
 +          <excludedGroups>unit</excludedGroups>
 +          <suiteXmlFiles>
 +            <suiteXmlFile>src/test/config/testng.xml</suiteXmlFile>
 +          </suiteXmlFiles>
 +        </configuration>
 +        <executions>
 +          <execution>
 +            <goals>
 +              <goal>integration-test</goal>
 +              <goal>verify</goal>
 +            </goals>
 +          </execution>
 +        </executions>
 +      </plugin>
 +    </plugins>
 +  </build>
 +  
 +  <profiles>
 +    <profile>
 +      <id>yarn</id>
 +      <properties>
 +        <it.groups>yarn</it.groups>
 +      </properties>
 +    </profile>
 +  </profiles>
 +</project>

http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/6dece848/recipes/auto-scale/src/main/java/org/apache/helix/autoscale/impl/yarn/YarnMasterProcess.java
----------------------------------------------------------------------
diff --cc recipes/auto-scale/src/main/java/org/apache/helix/autoscale/impl/yarn/YarnMasterProcess.java
index 25b73f5,0000000..deb4761
mode 100644,000000..100644
--- a/recipes/auto-scale/src/main/java/org/apache/helix/autoscale/impl/yarn/YarnMasterProcess.java
+++ b/recipes/auto-scale/src/main/java/org/apache/helix/autoscale/impl/yarn/YarnMasterProcess.java
@@@ -1,144 -1,0 +1,104 @@@
 +package org.apache.helix.autoscale.impl.yarn;
 +
- import java.net.InetSocketAddress;
++import java.io.IOException;
 +import java.util.Map;
 +
 +import org.apache.hadoop.conf.Configuration;
 +import org.apache.hadoop.fs.FileSystem;
 +import org.apache.hadoop.net.NetUtils;
- import org.apache.hadoop.yarn.api.AMRMProtocol;
- import org.apache.hadoop.yarn.api.ApplicationConstants;
- import org.apache.hadoop.yarn.api.protocolrecords.FinishApplicationMasterRequest;
- import org.apache.hadoop.yarn.api.protocolrecords.RegisterApplicationMasterRequest;
++import org.apache.hadoop.yarn.api.ApplicationConstants.Environment;
++import org.apache.hadoop.yarn.api.protocolrecords.RegisterApplicationMasterResponse;
 +import org.apache.hadoop.yarn.api.records.ApplicationAttemptId;
 +import org.apache.hadoop.yarn.api.records.ContainerId;
 +import org.apache.hadoop.yarn.api.records.FinalApplicationStatus;
++import org.apache.hadoop.yarn.client.api.AMRMClient.ContainerRequest;
++import org.apache.hadoop.yarn.client.api.async.AMRMClientAsync;
++import org.apache.hadoop.yarn.client.api.async.NMClientAsync;
++import org.apache.hadoop.yarn.client.api.async.impl.NMClientAsyncImpl;
 +import org.apache.hadoop.yarn.conf.YarnConfiguration;
- import org.apache.hadoop.yarn.ipc.YarnRPC;
++import org.apache.hadoop.yarn.exceptions.YarnException;
 +import org.apache.hadoop.yarn.util.ConverterUtils;
- import org.apache.hadoop.yarn.util.Records;
 +import org.apache.helix.autoscale.provider.ProviderProcess;
 +import org.apache.log4j.Logger;
 +
 +/**
 + * Host process for {@link YarnContainerProviderProcess}. Hasts application
 + * master in YARN and provider participant to Helix meta cluster. (Program entry
 + * point)
 + * 
 + */
 +class YarnMasterProcess {
 +
-     static final Logger log = Logger.getLogger(YarnMasterProcess.class);
- 
-     public static void main(String[] args) throws Exception {
-         log.trace("BEGIN YarnMaster.main()");
- 
-         final ApplicationAttemptId appAttemptId = getApplicationAttemptId();
-         log.info(String.format("Got application attempt id '%s'", appAttemptId.toString()));
- 
-         log.debug("Reading master properties");
-         YarnMasterProperties properties = YarnUtils.createMasterProperties(YarnUtils.getPropertiesFromPath(YarnUtils.YARN_MASTER_PROPERTIES));
- 
-         if (!properties.isValid())
-             throw new IllegalArgumentException(String.format("master properties not valid: %s", properties.toString()));
- 
-         log.debug("Connecting to resource manager");
-         Configuration conf = new YarnConfiguration();
-         conf.set(YarnConfiguration.RM_ADDRESS, properties.getResourceManager());
-         conf.set(YarnConfiguration.RM_SCHEDULER_ADDRESS, properties.getScheduler());
-         conf.set(FileSystem.FS_DEFAULT_NAME_KEY, properties.getHdfs());
- 
-         final AMRMProtocol resourceManager = getResourceManager(conf);
- 
-         // register the AM with the RM
-         log.debug("Registering application master");
-         RegisterApplicationMasterRequest appMasterRequest = Records.newRecord(RegisterApplicationMasterRequest.class);
-         appMasterRequest.setApplicationAttemptId(appAttemptId);
-         appMasterRequest.setHost("");
-         appMasterRequest.setRpcPort(0);
-         appMasterRequest.setTrackingUrl("");
- 
-         resourceManager.registerApplicationMaster(appMasterRequest);
- 
-         log.debug("Starting yarndata service");
-         final ZookeeperYarnDataProvider yarnDataService = new ZookeeperYarnDataProvider(properties.getYarnData());
-         yarnDataService.start();
- 
-         log.debug("Starting yarn master service");
-         final YarnMasterService service = new YarnMasterService();
-         service.configure(properties);
-         service.setAttemptId(appAttemptId);
-         service.setYarnDataProvider(yarnDataService);
-         service.setProtocol(resourceManager);
-         service.setYarnConfiguration(conf);
-         service.start();
- 
-         log.debug("Starting provider");
-         final YarnContainerProvider provider = new YarnContainerProvider();
-         provider.configure(properties);
-         provider.start();
- 
-         log.debug("Starting provider process");
-         final ProviderProcess process = new ProviderProcess();
-         process.configure(properties);
-         process.setConteinerProvider(provider);
-         process.start();
- 
-         log.debug("Installing shutdown hooks");
-         Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
-             @Override
-             public void run() {
-                 log.debug("Stopping provider process");
-                 process.stop();
- 
-                 log.debug("Stopping provider");
-                 try { provider.stop(); } catch (Exception ignore) {}
- 
-                 log.debug("Stopping yarn master service");
-                 service.stop();
- 
-                 log.debug("Stopping yarndata service");
-                 yarnDataService.stop();
- 
-                 // finish application
-                 log.debug("Sending finish request");
-                 FinishApplicationMasterRequest finishReq = Records.newRecord(FinishApplicationMasterRequest.class);
- 
-                 finishReq.setAppAttemptId(getApplicationAttemptId());
-                 finishReq.setFinishApplicationStatus(FinalApplicationStatus.SUCCEEDED);
- 	    	    
- 	    	    try { resourceManager.finishApplicationMaster(finishReq); } catch(Exception ignore) {}
- 	    	}
- 	    }));
- 	    
++	static final Logger log = Logger.getLogger(YarnMasterProcess.class);
++
++	public static void main(String[] args) throws Exception {
++		log.trace("BEGIN YarnMaster.main()");
++	
++		log.debug("Reading master properties");
++		YarnMasterProperties properties = YarnUtils
++				.createMasterProperties(YarnUtils
++						.getPropertiesFromPath(YarnUtils.YARN_MASTER_PROPERTIES));
++
++		if (!properties.isValid())
++			throw new IllegalArgumentException(String.format(
++					"master properties not valid: %s", properties.toString()));
++
++
++		log.debug("Starting yarndata service");
++		final ZookeeperYarnDataProvider yarnDataService = new ZookeeperYarnDataProvider(
++				properties.getYarnData());
++		yarnDataService.start();
++
++		log.debug("Starting yarn master service");
++		final YarnMasterService service = new YarnMasterService();
++		service.configure(properties);
++		service.setYarnDataProvider(yarnDataService);
++		service.start();
++
++		log.debug("Starting provider");
++		final YarnContainerProvider provider = new YarnContainerProvider();
++		provider.configure(properties);
++		provider.start();
++
++		log.debug("Starting provider process");
++		final ProviderProcess process = new ProviderProcess();
++		process.configure(properties);
++		process.setConteinerProvider(provider);
++		process.start();
++
++		log.debug("Installing shutdown hooks");
++		Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
++			@Override
++			public void run() {
++				log.debug("Stopping provider process");
++				process.stop();
++
++				log.debug("Stopping provider");
++				try {
++					provider.stop();
++				} catch (Exception ignore) {
++				}
++
++				log.debug("Stopping yarn master service");
++				service.stop();
++
++				log.debug("Stopping yarndata service");
++				yarnDataService.stop();
++			}
++		}));
++
 +		log.trace("END YarnMaster.main()");
 +	}
- 	
-     static AMRMProtocol getResourceManager(Configuration conf) {
-         // Connect to the Scheduler of the ResourceManager.
-         YarnConfiguration yarnConf = new YarnConfiguration(conf);
-         YarnRPC rpc = YarnRPC.create(yarnConf);
-         InetSocketAddress rmAddress = NetUtils.createSocketAddr(yarnConf.get(YarnConfiguration.RM_SCHEDULER_ADDRESS,
-                 YarnConfiguration.DEFAULT_RM_SCHEDULER_ADDRESS));
-         log.info("Connecting to ResourceManager at " + rmAddress);
-         AMRMProtocol resourceManager = (AMRMProtocol) rpc.getProxy(AMRMProtocol.class, rmAddress, conf);
-         return resourceManager;
-     }
- 
-     static ApplicationAttemptId getApplicationAttemptId() {
-         ContainerId containerId = ConverterUtils.toContainerId(getEnv(ApplicationConstants.AM_CONTAINER_ID_ENV));
-         ApplicationAttemptId appAttemptID = containerId.getApplicationAttemptId();
-         return appAttemptID;
-     }
- 
-     static String getEnv(String key) {
-         Map<String, String> envs = System.getenv();
-         String clusterName = envs.get(key);
-         if (clusterName == null) {
-             // container id should always be set in the env by the framework
-             throw new IllegalArgumentException(String.format("%s not set in the environment", key));
-         }
-         return clusterName;
-     }
++
++	static String getEnv(String key) {
++		Map<String, String> envs = System.getenv();
++		String clusterName = envs.get(key);
++		if (clusterName == null) {
++			// container id should always be set in the env by the framework
++			throw new IllegalArgumentException(String.format(
++					"%s not set in the environment", key));
++		}
++		return clusterName;
++	}
 +
 +}