This is an automated email from the ASF dual-hosted git repository.
xyuanlu pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/helix.git
from aeb4f0b23 Fix the Helix API - javadoc (#2510)
add fdbb2a961 Add new submodule meta client - a generic metadata client
(#2234)
add 297707391 Add listener interfaces and config class (#2249)
add 591c340e6 Add Meta client factory and ZkMetaClient constructor (#2291)
add 4a1dbf413 Setup testng for meta-client module (#2326)
add b5926b8b4 New features and improvement in zookeeper-api to prepare
meta-client implementation (#2333)
add 3078f1e21 Meta client - implement CRUD for zkMetaClient
add 0351285db MetaClient - Op and OpResult Logic for transactional support
add 628e13f85 Metaclient - Implementation of Create from CRUD operations
add 0c740bd8d Implement data change listener for ZkMetaClient and test
add b103b3576 Create adapter package for data and child change listener
and prepare zkclient (#2346)
add f40dd0b48 ZkMetaclient - implementation of TransactionOp
add afd932552 Refactoring MetaClient Exceptions
add 2648605ce Rename and reformat metaclient test and util
add 95f0a0a12 Implement direct child change listener in ZkMetaClient
add 3984a2760 Add metaclient code and code translator from ZkException code
add 5071ca455 Modified transactionOp test case variable for clearer
understanding
add d805e785c Fix ZkClient retry logic for customized callback and test
add 9e4d1c43c Update async API for MetaClient.
add e6ad6fa13 Add wrapper file for meta client async callback class (#2372)
add 0d6aabae2 Create separate API for persistent and one-time listener
(#2376)
add 18940c0b3 MetaClient Container Node Implementation (#2377)
add ce1b10cac Implement zk Meta client async crud (#2354)
add c4fcb25b6 Fix typos and styles in metaclient (#2382)
add a86dfba3b TTL Node Interface Methods (#2388)
add 94e095bb8 Add check in ZkClient.connect so it only called once.
add cd27008e5 Add support for state change in ZkMetaClient
add 01d323357 Add retry policy class and config for operation retry for
MetaClient (#2385)
add 0a3fd9866 TTL Node Lattice Implementation (#2401)
add 2fffed3d2 use reconnect timeout for crud retry timeout (#2410)
add 79fc673ef Implement timeout for auto reconnect (#2409)
add c346a1c6c MetaClient LockClient Interface
add 762817888 Refactor ZkClient for persist watch (#2426)
add de8887597 Add an option in metaclient to use persist watcher (#2434)
add e95b09780 Implementing LockInfo Object for LockClient in MetaClient
add 52102cfd7 Add comment and description for ZkMetaClient reconnect
handling (#2443)
add 1b6ded7e5 Use persist watcher for listener registration in ZkClient
(when configured) (#2432)
add fd53ec824 Add a Trie class to represent
RecursivePersistWatcherListener in ZkClient (#2439)
add 42af004f4 Change snalshot version for metaclient (#2461)
add af089b011 Add metaclient supporting files. (#2464)
add 399468c91 Add meta-client module in version bump script (#2471)
add 22e1f63dd Add exception for register ZK one time watcher when
_usePersistWatcher flag is on (#2465)
add 7f8c44797 Add find and remove for recursive persist listener trie
(#2460)
add c6b783be5 Add leader election API and dummy class (#2488)
add dfb4c4f3e Change pom of metaclient pom file(#2500)
add 10ac23578 Implementation of LockClient for Lattice. (#2457)
add 1a962859a Add recursive persist listener API in ZkClient and test
native ZK - API only
add b3400a5d6 ZkClient add recursive persist listener implementation
(#2506)
add da9274c7d ZkMetaClient Stress Testing Setup(#2517)
add fafeb0669 Change undetermined check in unit test
TestZooKeeperConnection(#2516)
No new revisions were added by this update.
Summary of changes:
.github/workflows/Helix-PR-CI.yml | 2 +-
bump-up.sh | 2 +-
{helix-common => meta-client}/LICENSE | 0
{metrics-common => meta-client}/NOTICE | 2 +-
.../meta-client-1.0.5-SNAPSHOT.ivy | 8 +-
{helix-view-aggregator => meta-client}/pom.xml | 78 +--
.../src/assemble/assembly.xml | 2 +-
.../apache/helix/metaclient/api/AsyncCallback.java | 78 +++
.../helix/metaclient/api/ChildChangeListener.java | 29 +-
.../metaclient/api/ConnectStateChangeListener.java | 29 +-
.../helix/metaclient/api/DataChangeListener.java | 25 +-
.../apache/helix/metaclient/api/DataUpdater.java | 13 +-
.../metaclient/api/DirectChildChangeListener.java | 26 +-
.../metaclient/api/DirectChildSubscribeResult.java | 31 +-
.../helix/metaclient/api/MetaClientInterface.java | 583 +++++++++++++++++++++
.../java/org/apache/helix/metaclient/api/Op.java | 136 +++++
.../org/apache/helix/metaclient/api/OpResult.java | 167 ++++++
.../metaclient/constants/MetaClientConstants.java | 49 ++
.../helix/metaclient/datamodel/DataRecord.java | 25 +-
.../exception/MetaClientBadVersionException.java | 20 +
.../metaclient/exception/MetaClientException.java | 138 +++++
.../exception/MetaClientInterruptException.java | 19 +-
.../exception/MetaClientNoNodeException.java | 20 +-
.../exception/MetaClientTimeoutException.java | 18 +-
.../metaclient/factories/MetaClientConfig.java | 174 ++++++
.../metaclient/factories/MetaClientFactory.java | 52 ++
.../helix/metaclient/impl/zk/ZkMetaClient.java | 557 ++++++++++++++++++++
.../impl/zk/adapter/ChildListenerAdapter.java | 70 +++
.../impl/zk/adapter/DataListenerAdapter.java | 77 +++
.../zk/adapter/DirectChildListenerAdapter.java | 52 +-
.../zk/adapter/StateChangeListenerAdapter.java | 76 +++
.../adapter/ZkMetaClientCreateCallbackHandler.java | 48 ++
.../adapter/ZkMetaClientDeleteCallbackHandler.java | 47 ++
.../adapter/ZkMetaClientExistCallbackHandler.java | 53 ++
.../zk/adapter/ZkMetaClientGetCallbackHandler.java | 54 ++
.../zk/adapter/ZkMetaClientSetCallbackHandler.java | 27 +-
.../impl/zk/factory/ZkMetaClientConfig.java | 147 ++++++
.../impl/zk/factory/ZkMetaClientFactory.java | 30 +-
.../metaclient/impl/zk/util/ZkMetaClientUtil.java | 349 ++++++++++++
.../policy/ExponentialBackoffReconnectPolicy.java | 57 ++
.../policy/MetaClientReconnectPolicy.java | 31 +-
.../leaderelection/LeaderElectionClient.java | 180 +++++++
.../LeaderElectionListenerInterface.java | 28 +-
.../recipes/leaderelection/LeaderInfo.java | 32 +-
.../helix/metaclient/recipes/lock/LockClient.java | 123 +++++
.../recipes/lock/LockClientInterface.java | 63 +++
.../helix/metaclient/recipes/lock/LockInfo.java | 256 +++++++++
.../src/test/conf/testng.xml | 2 +-
.../zk/TestConnectStateChangeListenerAndRetry.java | 180 +++++++
.../metaclient/impl/zk/TestStressZkClient.java | 24 +
.../apache/helix/metaclient/impl/zk/TestUtil.java | 96 ++++
.../helix/metaclient/impl/zk/TestZkMetaClient.java | 570 ++++++++++++++++++++
.../impl/zk/TestZkMetaClientAsyncOperations.java | 233 ++++++++
.../metaclient/impl/zk/ZkMetaClientTestBase.java | 93 ++++
.../metaclient/recipes/lock/LockClientTest.java | 110 ++++
.../metaclient/recipes/lock/LockInfoTest.java | 70 +++
pom.xml | 1 +
.../helix/zookeeper/impl/client/ZkClient.java | 33 +-
.../helix/zookeeper/zkclient/IZkChildListener.java | 15 +
.../helix/zookeeper/zkclient/IZkConnection.java | 4 +
.../helix/zookeeper/zkclient/IZkDataListener.java | 7 +
.../helix/zookeeper/zkclient/IZkStateListener.java | 4 +
.../zkclient/RecursivePersistListener.java | 30 +-
.../apache/helix/zookeeper/zkclient/ZkClient.java | 428 ++++++++++++---
.../helix/zookeeper/zkclient/ZkConnection.java | 13 +
.../zkclient/callback/ZkAsyncCallbacks.java | 26 +-
.../zookeeper/zkclient/metric/ZkClientMonitor.java | 6 +
.../zkclient/util/ZkPathRecursiveWatcherTrie.java | 264 ++++++++++
.../zookeeper/impl/TestZooKeeperConnection.java | 115 ++++
.../impl/client/TestZkClientAsyncRetry.java | 168 +++++-
.../zkclient/TestZkClientPersistWatcher.java | 210 ++++++++
.../util/TestZkPathRecursiveWatcherTrie.java | 109 ++++
72 files changed, 6500 insertions(+), 394 deletions(-)
copy {helix-common => meta-client}/LICENSE (100%)
copy {metrics-common => meta-client}/NOTICE (98%)
copy helix-lock/helix-lock-1.2.1-SNAPSHOT.ivy =>
meta-client/meta-client-1.0.5-SNAPSHOT.ivy (91%)
copy {helix-view-aggregator => meta-client}/pom.xml (57%)
copy {helix-agent => meta-client}/src/assemble/assembly.xml (98%)
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/api/AsyncCallback.java
copy helix-core/src/main/java/org/apache/helix/ZNRecordUpdater.java =>
meta-client/src/main/java/org/apache/helix/metaclient/api/ChildChangeListener.java
(52%)
copy
helix-core/src/main/java/org/apache/helix/api/cloud/CloudInstanceInformationProcessor.java
=>
meta-client/src/main/java/org/apache/helix/metaclient/api/ConnectStateChangeListener.java
(50%)
copy
helix-core/src/main/java/org/apache/helix/api/cloud/CloudInstanceInformation.java
=>
meta-client/src/main/java/org/apache/helix/metaclient/api/DataChangeListener.java
(61%)
copy helix-common/src/main/java/org/apache/helix/ZNRecordDelta.java =>
meta-client/src/main/java/org/apache/helix/metaclient/api/DataUpdater.java (75%)
copy helix-core/src/main/java/org/apache/helix/ZNRecordBucketizer.java =>
meta-client/src/main/java/org/apache/helix/metaclient/api/DirectChildChangeListener.java
(54%)
copy
helix-core/src/main/java/org/apache/helix/messaging/handling/MultiTypeMessageHandlerFactory.java
=>
meta-client/src/main/java/org/apache/helix/metaclient/api/DirectChildSubscribeResult.java
(56%)
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/api/MetaClientInterface.java
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/api/Op.java
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/api/OpResult.java
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/constants/MetaClientConstants.java
copy helix-core/src/main/java/org/apache/helix/model/StatusUpdate.java =>
meta-client/src/main/java/org/apache/helix/metaclient/datamodel/DataRecord.java
(66%)
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/exception/MetaClientBadVersionException.java
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/exception/MetaClientException.java
copy helix-core/src/main/java/org/apache/helix/HelixRollbackException.java =>
meta-client/src/main/java/org/apache/helix/metaclient/exception/MetaClientInterruptException.java
(70%)
copy
helix-rest/src/main/java/org/apache/helix/rest/server/resources/exceptions/HelixHealthException.java
=>
meta-client/src/main/java/org/apache/helix/metaclient/exception/MetaClientNoNodeException.java
(71%)
copy
helix-rest/src/main/java/org/apache/helix/rest/server/resources/exceptions/HelixHealthException.java
=>
meta-client/src/main/java/org/apache/helix/metaclient/exception/MetaClientTimeoutException.java
(71%)
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/factories/MetaClientConfig.java
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/factories/MetaClientFactory.java
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/impl/zk/ZkMetaClient.java
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/impl/zk/adapter/ChildListenerAdapter.java
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/impl/zk/adapter/DataListenerAdapter.java
copy helix-core/src/main/java/org/apache/helix/model/Partition.java =>
meta-client/src/main/java/org/apache/helix/metaclient/impl/zk/adapter/DirectChildListenerAdapter.java
(51%)
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/impl/zk/adapter/StateChangeListenerAdapter.java
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/impl/zk/adapter/ZkMetaClientCreateCallbackHandler.java
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/impl/zk/adapter/ZkMetaClientDeleteCallbackHandler.java
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/impl/zk/adapter/ZkMetaClientExistCallbackHandler.java
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/impl/zk/adapter/ZkMetaClientGetCallbackHandler.java
copy
helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/constraints/SamePartitionOnInstanceConstraint.java
=>
meta-client/src/main/java/org/apache/helix/metaclient/impl/zk/adapter/ZkMetaClientSetCallbackHandler.java
(50%)
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/impl/zk/factory/ZkMetaClientConfig.java
copy
helix-core/src/main/java/org/apache/helix/controller/rebalancer/waged/constraints/ValidGroupTagConstraint.java
=>
meta-client/src/main/java/org/apache/helix/metaclient/impl/zk/factory/ZkMetaClientFactory.java
(51%)
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/impl/zk/util/ZkMetaClientUtil.java
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/policy/ExponentialBackoffReconnectPolicy.java
copy helix-core/src/main/java/org/apache/helix/model/StatusUpdate.java =>
meta-client/src/main/java/org/apache/helix/metaclient/policy/MetaClientReconnectPolicy.java
(62%)
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/recipes/leaderelection/LeaderElectionClient.java
copy
helix-core/src/main/java/org/apache/helix/api/listeners/TaskCurrentStateChangeListener.java
=>
meta-client/src/main/java/org/apache/helix/metaclient/recipes/leaderelection/LeaderElectionListenerInterface.java
(60%)
copy helix-core/src/main/java/org/apache/helix/model/StatusUpdate.java =>
meta-client/src/main/java/org/apache/helix/metaclient/recipes/leaderelection/LeaderInfo.java
(60%)
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/recipes/lock/LockClient.java
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/recipes/lock/LockClientInterface.java
create mode 100644
meta-client/src/main/java/org/apache/helix/metaclient/recipes/lock/LockInfo.java
copy {metadata-store-directory-common => meta-client}/src/test/conf/testng.xml
(95%)
create mode 100644
meta-client/src/test/java/org/apache/helix/metaclient/impl/zk/TestConnectStateChangeListenerAndRetry.java
create mode 100644
meta-client/src/test/java/org/apache/helix/metaclient/impl/zk/TestStressZkClient.java
create mode 100644
meta-client/src/test/java/org/apache/helix/metaclient/impl/zk/TestUtil.java
create mode 100644
meta-client/src/test/java/org/apache/helix/metaclient/impl/zk/TestZkMetaClient.java
create mode 100644
meta-client/src/test/java/org/apache/helix/metaclient/impl/zk/TestZkMetaClientAsyncOperations.java
create mode 100644
meta-client/src/test/java/org/apache/helix/metaclient/impl/zk/ZkMetaClientTestBase.java
create mode 100644
meta-client/src/test/java/org/apache/helix/metaclient/recipes/lock/LockClientTest.java
create mode 100644
meta-client/src/test/java/org/apache/helix/metaclient/recipes/lock/LockInfoTest.java
copy
metadata-store-directory-common/src/test/java/org/apache/helix/msdcommon/constant/TestConstants.java
=>
zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/RecursivePersistListener.java
(50%)
create mode 100644
zookeeper-api/src/main/java/org/apache/helix/zookeeper/zkclient/util/ZkPathRecursiveWatcherTrie.java
create mode 100644
zookeeper-api/src/test/java/org/apache/helix/zookeeper/impl/TestZooKeeperConnection.java
create mode 100644
zookeeper-api/src/test/java/org/apache/helix/zookeeper/zkclient/TestZkClientPersistWatcher.java
create mode 100644
zookeeper-api/src/test/java/org/apache/helix/zookeeper/zkclient/util/TestZkPathRecursiveWatcherTrie.java