This is an automated email from the ASF dual-hosted git repository.

duhengforever pushed a change to branch develop
in repository https://gitbox.apache.org/repos/asf/rocketmq.git


    from 6f5cd4aa4 Fix compare different types (#4580)
     add 86bea21b4 [RIP-19] Pop Consuming (common)
     add 60ad9abd0 Merge pull request #2721 from ayanamist/pop_consumer
     add c29d5fd74 [RIP-19] Pop Consuming (store)
     add ea36854b6 Merge pull request #2733 from ayanamist/pop_consumer
     add ced6b0235 [RIP-19] Pop Consuming (broker)
     add f868d9925 Init pop retry consumer offset when create
     add d54629c33 Add abbreviation for fields of PopCheckPoint to save commit 
log size.
     add d3d020771 Merge pull request #2757 from ayanamist/dev_pop_consume
     add 9d8f4c2cc [RIP-19] Pop Consuming (client)
     add cd4462373 Merge pull request #2808 from hill007299/pop_consumer
     add 8847fb825 [RIP-19] Pop Consuming (tools)
     add bc55a654d feat(test) ignore it for now, wait for the next PR
     add b91b95bdb feat(test) remove unnessary stub
     add c3578dd5f Merge pull request #2825 from hill007299/pop_consumer
     add 80bc36cf3 [RIP-19] Pop Consuming (integration test)
     add 0938aab91 Merge pull request #2835 from hill007299/pop_consumer
     add 16262fc06 [RIP-19] Pop Consuming (add example & doc)
     add 9a7c61c30 fix rat-check
     add 7d32c02cf Merge pull request #2862 from hill007299/pop_consumer
     add e84221d60 Merge remote-tracking branch 'origin/develop' into 
pop_consumer
     add e22f9d581 Fix comment for ci
     add d98192b29 Merge pull request #2908 from duhenglucky/duheng_pop_consumer
     add 48fa70bc8 Merge branch 5.0.0-preview into pop_consumer
     add efe598db9 Merge pull request #2867 from apache/pop_consumer
     add 43744e7d7 [RIP-21] submodule common & client & remoting
     add 238f9bccc [RIP-21] submodule store & broker & srvutil
     add acbc0be04 [RIP-21] submodule namesrv
     add f39908574 [RIP-21] submodule tools
     add 0846c3c64 [RIP-21] submodule test
     add b4c099cbe [RIP-21] submodule common & client & remoting
     add aed47c383 Merge pull request #3127 from ayanamist/feature-logicalqueue
     add 297582b7a [RIP-21] Merge branch '5.0.0-preview' of 
https://github.com/chenzlalvin/rocketmq into logicqueue
     add da5d30b4e Merge pull request #3153 from chenzlalvin/logicqueue
     add 0617f46b4 add v5_0_0_preview version
     add e66a48263 remove arm64 ci
     add 0f6b5a3de [ISSUE #3290] Test case 
testProcessRequest_RegisterBrokerLogicalQueue bug fix (#3291)
     add 86193a844 change version to 5.0.0-PREVIEW
     add bb6daf788 change version to 5.0.0-PREVIEW-SNAPSHOT
     add d969670ea [maven-release-plugin] prepare release 
rocketmq-all-5.0.0-PREVIEW
     add 48d3c7eeb [maven-release-plugin] prepare for next development iteration
     add 2bf133be2 Merge branch 'develop' into 5.0.0-preview
     add dd09ba1ec merger from develop branch and fix compile error
     add ededeb67a [ISSUE #3371] Part A: Fix stack overflow exception when set 
message mode #3372
     add 0f5a0a1e6 [ISSUE #3436] Make configuration for pop be configurable 
(#3437)
     add f1b0318d1 Merge remote-tracking branch 'apache/develop' into 
5.0.0-alpha
     add 4506f34e2 Resolve some conflicts in the merge that prevent compilation 
from succeeding
     add b6ff64929 feat(all):new feature for static topic
     add 821b91f0a support batch consume-queue.
     add 6ba93446b [RIP-19] Pop Consuming (tools)
     add a01433094 [tools] Fix parameter conflicts
     add c998f3fe6 [benchmark] Add clientRebalanceEnable
     add 8bb98c9f4 [acl] Modify unit test to solve the problem of lack of 
license
     add 18010a4d3 [ISSUE #3679] Support topic attributes (#3698)
     add b3f9fbd3a Convert the consumer offset too
     add a767cc142 Fix test for consumer offset
     add 372e42ff4 Fix check style
     add 5ce1b88cf fix check style (#3703)
     add e8cf13387 [ISSUE #3708] Both CQ and BCQ need to be supported in 
DefaultMessageStore. (#3712)
     add 6172ad371 [ISSUE #3708] Refactor CQ and BCQ loading process and Fix 
some unit-tests issue. (#3713)
     add 78a3ed7b0 [ISSUE #3708] add CorrectLogicOffsetService to periodically 
correct min logic offset (#3722)
     add fe88fb36a [ISSUE #3498] Make messages in reviveTopic more evenly 
written to different queues #3499
     add 5d15c3ed1 change the level to warn when the ack message failed (#3756)
     add 0b4adb49b [Assignment] Fix the risk of memory overflow caused by 
excessive popShareQueueNum.
     add 631405e2f [ISSUE #3741] Use wait-until-${async-complete}-reaches DSL 
instead of sleep(n) to to reduce invalid wait time. (#3829)
     add de76e06d6 add hook to execute after consume for pop (#3780)
     add 666e96b6d [maven-release-plugin] prepare release rocketmq-all-4.9.3
     add 13933297d [maven-release-plugin] prepare for next development iteration
     add 0d15e6c2d Merge 5.0.0-alpha-merge with develop branch
     add 87d9614d3 Resolve all conflicts and pass all UTs
     add e33213c75 Upgrade version to 5.0.0-alpha-snapshot
     add 5247985e3 Fix missing ASF header in plain_acl.yml
     add ee8decdc7 Prepare to release rocketmq 5.0.0-alpha
     add a17fa7605 [maven-release-plugin] prepare release 
rocketmq-all-5.0.0-ALPHA
     add 78dde88cf Prepare for next development iteration
     add 3aa31a6a3 Merge remote-tracking branch 'apache/develop' into 
5.0.0-alpha
     add 176e0d5c2 Modify MQVersion to V5_0_0_BETA_SNAPSHOT
     add 467b38277 feature(namesrv&common):[RIP-29]Optimize RocketMQ NameServer 
(#3974)
     add 27ab1dfdc feature(container&remoting):[RIP-31][PART-A]Support RocketMQ 
BrokerContainer (#3976)
     add fb9e3f05b 
feature(logging&tools&distribution&docs):[RIP-31][PART-A]Support RocketMQ 
BrokerContainer (#3977)
     add cad0cfcec feature(broker & acl & client):[RIP-32]Support Slave Acting 
Master mode (#3978)
     add 5c350af17 feature(store):[RIP-34]Support quorum write and adaptive 
degradation in master slave architecture (#3979)
     add 00d2d1c40 feature(test):[RIP-31]Add ITs for BrokerContainer (#3980)
     add 190617e8b Delete useless code file
     add 01af23034 Add ASF header for plain_acl.yml
     add e678ee6f9 Add ASF header for unapproved file
     add 69ee64632 Make all ITs can pass
     add d99bf5520 [ISSUE #3992] code optimizations about 
BrokerContainerStartup.class
     add c8f67716e Fix bug that container UT can not pass
     add a44699acd Ignore all container tests because they cost too much time 
and are unstable
     add 0b7291b35 [ISSUE #3503] bugfix: the consumeOffset will be set as 0 
when getMessage returns null (#3504)
     add 8fc952d20 Add new APIs for producer (#3987)
     add 3cd0ec9a8 Merge remote-tracking branch 'apache/5.0.0-beta' into 
5.0.0-beta-tmp
     add 302de8b79 Merge branch 'develop' into 5.0.0-beta
     add e656a8efa Merge remote-tracking branch 'apache/5.0.0-beta' into 
5.0.0-beta-tmp
     add 571d16419 Resolve all nameserver UTs conflicts
     add 3f28f5f0f Ignore unstable IT
     add d8119afb1 Use the right executor for EndTransactionProcessor (#4044)
     add d99a51c12 [ISSUE #4050] 5.0.0-alpha (Pop): Missing origin message id 
from dead letter message  (#4052)
     add 52482d4e0 fix brokerName of msg is null in same case (#4066)
     add bb9d6e62b [ISSUE #3798] Support container in DLedger. (#4100)
     add 61e0f0cae Polish the comment
     add df5e885b3 [RIP-37] Add new APIs for consumer (#4019)
     add 6b9ba22be Fix naming issue
     add 46da67d73 Rename ConsumeStatus to ConsumeResult and polish java docs 
wherever possible
     add cc613d472 Minor polish
     add bd3059e76 Add thread-safety requirement and re-phrase PushConsumer 
class javadoc
     add 531cdb0be sync message request mode from master (#4101)
     add 7a5fff4f1 [ISSUE #4192] Fix log split not work for dLedger in 
container (#4193)
     add ac886bc18 Fix check style to paas CI
     add d6a53f9c2 Polish the document of SlaveActingMasterMode.md and 
QuorumACK.md
     add d937c1d61 [ISSUE #4245] Remove the topic route cache in nameserver
     add e55db10c6 [ISSUE #4072] fix totalPollingNum count error (#4073)
     add a4cccea9d [ISSUE#4233] Move the capability of slaveActingMaster from 
container module to broker module
     add 4abd12e75 Add -Xmn parameter when jdk version is less than 8 (#4262)
     add 94f548351 Fix the issue that DeleteTopicSubCommand does't call the 
correct deleteTopicInNameServer method. (#4269)
     add 19996a024 bugfix : Returning minOffset when timestamp is larger than 
queue-unit max tampstamp
     add d8c9bd38c [ISSUE #4270]Log parameter error and optimize code (#4271)
     add c6fbd7497 style: remove unused CleanFilesHook.java class (#4260)
     add 499b7dbe8 [ISSUE #4171]Fix tryQueryAssignment() in RebalanceImpl
     add 52e059e28 Merge pull request #4173 from 
zhangjidi2016/fix_tryQueryAssignment
     add 3bddd5146 [ISSUE #4384] Expand RocketMQ Topic/Group attributes
     add 42e5d734e [ISSUE #4384] Add RetryPolicy interface
     add 33fd33089 Change PullMessageRequestHeader maxMsgNums to CFNullable
     add cd24a2442 Fix bug for putting duplicated messsages while sending batch 
message (#4466)
     add 441c3b775 Revert "[RIP-37] Add new APIs for consumer (#4019)"
     add 96e9e4867 Revert "Add new APIs for producer (#3987)"
     add 388cc2111 [ISSUE #4384] Remove TimeUnit in nextDelayDuration
     add 05fee0d77 [ISSUE #4435] Code optimization for ConsumeQueue 
abstraction. (#4439)
     add 940d8d825 Remove useless doAfterRpcFailure method in RPCHook (#4538)
     add 13ffac892 Fix the offset not found and add some tests (#4504)
     add 52d1c8cca Fix static topic test, await the client metadata to be 
refreshed (#4500)
     add ef37465e5 Fix bug that return IN_SYNC_REPLICAS_NOT_ENOUGH when 
enableSlaveActingMaster is false (#4554)
     add 3fadc8f30 Merge branch '5.0.0-beta' into develop
     add 9a9f44566 Fix examine consume stats for none static topic (#4571)
     add a7d9021c3 Merge remote-tracking branch 'apache/5.0.0-beta' into 
develop-merge-5.0.0
     add 833e9e0e0 Polish conf/container directory
     add d4f5d9696 Make travis ci can pass when function interface changed
     add 2a9113686 Make broker can start normally even if the configuration 
file is not set
     add 9cd2e901e Make #ACTIVATED to display
     add 8ef151d60 Change rocketmq version to 5.0.0-SNAPSHOT in all pom files
     add 14b063896 Fix False Logs Printed by ClientLogger
     add 69b74d245 Remove useless function in RemotingClient
     add fb026867f Add missing override method in AbstractPluginMessageStore
     add a2c96fd7b Remove useless variables in PullMessageProcessor
     new 10326b479 Merge pull request #4578 from apache/develop-merge-5.0.0

The 1 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:
 .travis.yml                                        |    4 +-
 acl/pom.xml                                        |    2 +-
 .../org/apache/rocketmq/acl/common/AclUtils.java   |   39 +
 .../apache/rocketmq/acl/common/AclUtilsTest.java   |   21 +
 acl/src/test/resources/conf/plain_acl.yml          |    5 -
 broker/pom.xml                                     |   10 +-
 .../apache/rocketmq/broker/BrokerController.java   | 1761 ++++++++++++++-----
 .../rocketmq/broker/BrokerPathConfigHelper.java    |   12 +
 .../rocketmq/broker/BrokerPreOnlineService.java    |  277 +++
 .../org/apache/rocketmq/broker/BrokerStartup.java  |   58 +-
 .../org/apache/rocketmq/broker/ShutdownHook.java   |   15 +-
 .../broker/client/ClientHousekeepingService.java   |   12 +-
 .../rocketmq/broker/client/ConsumerGroupInfo.java  |   25 +-
 .../broker/client/ConsumerIdsChangeListener.java   |    2 +
 .../rocketmq/broker/client/ConsumerManager.java    |   42 +-
 .../client/DefaultConsumerIdsChangeListener.java   |   68 +-
 .../rocketmq/broker/client/ProducerManager.java    |   23 +-
 .../rocketmq/broker/client/net/Broker2Client.java  |    8 +-
 .../client/rebalance/RebalanceLockManager.java     |   99 +-
 .../broker/dledger/DLedgerRoleChangeHandler.java   |   90 +-
 .../rocketmq/broker/failover/EscapeBridge.java     |  268 +++
 .../broker/filtersrv/FilterServerManager.java      |    6 +-
 .../rocketmq/broker/latency/BrokerFastFailure.java |   44 +-
 .../broker/loadbalance/AssignmentManager.java      |  140 ++
 .../loadbalance/MessageRequestModeManager.java     |   95 +
 .../longpolling/LmqPullRequestHoldService.java     |    3 +
 .../broker/longpolling/ManyPullRequest.java        |    4 +
 .../broker/longpolling/NotificationRequest.java    |   57 +
 .../longpolling/NotifyMessageArrivingListener.java |   12 +-
 .../rocketmq/broker/longpolling/PopRequest.java    |   89 +
 .../broker/longpolling/PullRequestHoldService.java |   36 +-
 .../broker/mqtrace/AbortProcessException.java      |   69 +
 .../broker/mqtrace/ConsumeMessageContext.java      |   77 +-
 .../broker/mqtrace/SendMessageContext.java         |  102 +-
 .../broker/offset/ConsumerOffsetManager.java       |   85 +-
 .../broker/offset/ConsumerOrderInfoManager.java    |  426 +++++
 .../apache/rocketmq/broker/out/BrokerOuterAPI.java |  750 +++++++-
 .../broker/pagecache/OneMessageTransfer.java       |    1 +
 .../broker/plugin/AbstractPluginMessageStore.java  |  296 +++-
 .../broker/plugin/BrokerAttachedPlugin.java        |   74 +
 .../broker/plugin/MessageStoreFactory.java         |   15 +-
 .../broker/plugin/MessageStorePluginContext.java   |   16 +-
 .../broker/plugin/PullMessageResultHandler.java    |   53 +
 .../processor/AbstractSendMessageProcessor.java    |  457 ++++-
 .../broker/processor/AckMessageProcessor.java      |  214 +++
 .../broker/processor/AdminBrokerProcessor.java     |  992 +++++++++--
 .../processor/ChangeInvisibleTimeProcessor.java    |  206 +++
 .../broker/processor/ClientManageProcessor.java    |   52 +-
 .../broker/processor/ConsumerManageProcessor.java  |  188 +-
 .../processor/DefaultPullMessageResultHandler.java |  244 +++
 .../broker/processor/EndTransactionProcessor.java  |   10 +-
 .../broker/processor/ForwardRequestProcessor.java  |    4 +-
 .../broker/processor/NotificationProcessor.java    |  318 ++++
 .../broker/processor/PeekMessageProcessor.java     |  271 +++
 .../broker/processor/PollingInfoProcessor.java     |  119 ++
 .../broker/processor/PopBufferMergeService.java    |  776 +++++++++
 .../broker/processor/PopMessageProcessor.java      |  983 +++++++++++
 .../broker/processor/PopReviveService.java         |  488 ++++++
 .../broker/processor/PullMessageProcessor.java     |  574 +++---
 .../broker/processor/QueryAssignmentProcessor.java |  324 ++++
 .../broker/processor/QueryMessageProcessor.java    |   15 +-
 .../broker/processor/ReplyMessageProcessor.java    |   13 +-
 .../broker/processor/SendMessageCallback.java      |   22 +-
 .../broker/processor/SendMessageProcessor.java     |  603 +++----
 .../schedule/DelayOffsetSerializeWrapper.java      |   13 +-
 .../broker}/schedule/ScheduleMessageService.java   |  183 +-
 .../rocketmq/broker/slave/SlaveSynchronize.java    |   73 +-
 .../subscription/SubscriptionGroupManager.java     |  112 +-
 .../rocketmq/broker/topic/TopicConfigManager.java  |  287 ++-
 .../topic/TopicQueueMappingCleanService.java       |  337 ++++
 .../broker/topic/TopicQueueMappingManager.java     |  259 +++
 .../AbstractTransactionalMessageCheckListener.java |   45 +-
 .../broker/transaction/OperationResult.java        |    8 +-
 .../TransactionalMessageCheckService.java          |    3 +
 .../transaction/TransactionalMessageService.java   |    2 +-
 .../transaction/jdbc/JDBCTransactionStore.java     |  242 ---
 .../jdbc/JDBCTransactionStoreConfig.java           |   57 -
 .../DefaultTransactionalMessageCheckListener.java  |    2 +-
 .../queue/TransactionalMessageBridge.java          |    2 +-
 .../queue/TransactionalMessageServiceImpl.java     |    2 +-
 .../org/apache/rocketmq/broker/util/HookUtils.java |  164 ++
 .../OperationResult.java => util/MsgUtil.java}     |   35 +-
 .../rocketmq/broker/BrokerControllerTest.java      |    3 +-
 .../apache/rocketmq/broker/BrokerOuterAPITest.java |   61 +-
 .../apache/rocketmq/broker/BrokerStartupTest.java  |   20 +-
 .../broker/filter/MessageStoreWithFilterTest.java  |   56 +-
 .../broker/offset/ConsumerOffsetManagerTest.java   |   55 +
 .../broker/pagecache/OneMessageTransferTest.java   |    8 +-
 ...essorTest.java => AckMessageProcessorTest.java} |   97 +-
 .../broker/processor/AdminBrokerProcessorTest.java |  107 +-
 ....java => ChangeInvisibleTimeProcessorTest.java} |   96 +-
 .../processor/ClientManageProcessorTest.java       |    1 -
 .../processor/ConsumerManageProcessorTest.java     |   91 +
 .../processor/EndTransactionProcessorTest.java     |    2 +-
 .../processor/PopBufferMergeServiceTest.java       |  120 ++
 ...essorTest.java => PopMessageProcessorTest.java} |  163 +-
 .../broker/processor/PullMessageProcessorTest.java |   28 +-
 .../processor/QueryAssignmentProcessorTest.java    |  227 +++
 .../processor/ReplyMessageProcessorTest.java       |    2 +-
 .../broker/processor/SendMessageProcessorTest.java |  217 ++-
 .../schedule/ScheduleMessageServiceTest.java       |  145 +-
 .../broker/substription/ForbiddenTest.java         |   64 +
 .../broker/topic/TopicConfigManagerTest.java       |  324 ++++
 .../broker/topic/TopicQueueMappingManagerTest.java |  112 ++
 ...faultTransactionalMessageCheckListenerTest.java |    2 +-
 .../queue/TransactionalMessageBridgeTest.java      |    2 +-
 .../queue/TransactionalMessageServiceImplTest.java |    2 +-
 .../rocketmq/broker/util/ServiceProviderTest.java  |    7 +-
 .../util/TransactionalMessageServiceImpl.java      |    2 +-
 client/pom.xml                                     |   11 +-
 .../java/org/apache/rocketmq/client/MQAdmin.java   |   14 +-
 .../rocketmq/client/consumer/AckCallback.java      |   10 +-
 .../apache/rocketmq/client/consumer/AckResult.java |   40 +-
 .../apache/rocketmq/client/consumer/AckStatus.java |   17 +-
 .../client/consumer/DefaultMQPullConsumer.java     |   14 +-
 .../client/consumer/DefaultMQPushConsumer.java     |   70 +-
 .../rocketmq/client/consumer/MQPullConsumer.java   |    7 +
 .../rocketmq/client/consumer/PopCallback.java      |   13 +-
 .../consumer/{PullResult.java => PopResult.java}   |   59 +-
 .../apache/rocketmq/client/consumer/PopStatus.java |   29 +-
 .../rocketmq/client/consumer/PullResult.java       |    1 +
 .../AbstractAllocateMessageQueueStrategy.java      |    2 +-
 .../rebalance/AllocateMessageQueueAveragely.java   |   10 +
 .../AllocateMessageQueueAveragelyByCircle.java     |   10 +
 .../consumer/store/RemoteBrokerOffsetStore.java    |   31 +-
 .../client/exception/MQBrokerException.java        |    6 +
 .../client/exception/MQRedirectException.java      |   26 +-
 .../client/exception/OffsetNotFoundException.java  |   23 +-
 .../rocketmq/client/impl/BaseInvokeCallback.java   |   26 +-
 .../client/impl/ClientRemotingProcessor.java       |    3 +-
 .../apache/rocketmq/client/impl/MQAdminImpl.java   |   64 +-
 .../rocketmq/client/impl/MQClientAPIImpl.java      |  632 ++++++-
 .../ConsumeMessageConcurrentlyService.java         |   11 +-
 .../consumer/ConsumeMessageOrderlyService.java     |   14 +-
 ...a => ConsumeMessagePopConcurrentlyService.java} |  260 +--
 .../consumer/ConsumeMessagePopOrderlyService.java  |  408 +++++
 .../impl/consumer/ConsumeMessageService.java       |    5 +
 .../impl/consumer/DefaultLitePullConsumerImpl.java |   45 +-
 .../impl/consumer/DefaultMQPullConsumerImpl.java   |   43 +-
 .../impl/consumer/DefaultMQPushConsumerImpl.java   |  412 ++++-
 .../client/impl/consumer/MessageQueueLock.java     |   29 +-
 .../client/impl/consumer/MessageRequest.java       |   10 +-
 .../client/impl/consumer/PopProcessQueue.java      |   84 +
 .../consumer/{PullRequest.java => PopRequest.java} |   71 +-
 .../client/impl/consumer/PullAPIWrapper.java       |  141 +-
 .../client/impl/consumer/PullMessageService.java   |   47 +-
 .../rocketmq/client/impl/consumer/PullRequest.java |    8 +-
 .../client/impl/consumer/PullResultExt.java        |   12 +
 .../client/impl/consumer/RebalanceImpl.java        |  479 ++++-
 .../impl/consumer/RebalanceLitePullImpl.java       |   25 +-
 .../client/impl/consumer/RebalancePullImpl.java    |   26 +-
 .../client/impl/consumer/RebalancePushImpl.java    |   71 +-
 .../client/impl/factory/MQClientInstance.java      |  174 +-
 .../impl/producer/DefaultMQProducerImpl.java       |   20 +-
 .../rocketmq/client/latency/MQFaultStrategy.java   |    2 +-
 .../client/producer/DefaultMQProducer.java         |   16 +-
 .../rocketmq/client/producer/SendResult.java       |    9 +
 .../consumer/DefaultLitePullConsumerTest.java      |   32 +-
 .../client/consumer/DefaultMQPushConsumerTest.java |   83 +-
 .../store/RemoteBrokerOffsetStoreTest.java         |   10 +-
 .../rocketmq/client/impl/MQClientAPIImplTest.java  |  463 ++++-
 .../consumer/DefaultMQPushConsumerImplTest.java    |   63 +
 .../impl/consumer/RebalancePushImplTest.java       |   13 -
 .../client/impl/factory/MQClientInstanceTest.java  |    1 +
 .../client/producer/DefaultMQProducerTest.java     |    2 +-
 .../selector/SelectMessageQueueRetryTest.java      |    1 -
 .../powermock/extensions/configuration.properties  |   16 +
 common/pom.xml                                     |    6 +-
 ...uestHeader.java => AbstractBrokerRunnable.java} |   31 +-
 .../org/apache/rocketmq/common/BrokerConfig.java   |  621 ++++++-
 .../org/apache/rocketmq/common/BrokerIdentity.java |  149 ++
 .../org/apache/rocketmq/common/BrokerSyncInfo.java |   70 +
 .../org/apache/rocketmq/common/ConfigManager.java  |   11 +
 .../org/apache/rocketmq/common/Configuration.java  |   41 +
 .../org/apache/rocketmq/common/DataVersion.java    |   49 +-
 .../{ThreadFactoryImpl.java => KeyBuilder.java}    |   32 +-
 .../org/apache/rocketmq/common/LockCallback.java   |   12 +-
 .../java/org/apache/rocketmq/common/MQVersion.java |    2 +-
 .../java/org/apache/rocketmq/common/MixAll.java    |   25 +-
 .../apache/rocketmq/common/PopAckConstants.java    |   44 +
 .../org/apache/rocketmq/common/ServiceThread.java  |    8 +-
 .../apache/rocketmq/common/ThreadFactoryImpl.java  |   13 +
 .../apache/rocketmq/common/TopicAttributes.java    |   47 +
 .../org/apache/rocketmq/common/TopicConfig.java    |  122 +-
 .../org/apache/rocketmq/common/TopicQueueId.java   |   54 +
 .../MessageType.java => UnlockCallback.java}       |   10 +-
 .../java/org/apache/rocketmq/common/UtilAll.java   |  129 +-
 .../apache/rocketmq/common/admin/TopicOffset.java  |    9 +
 .../rocketmq/common/attribute/Attribute.java       |   36 +-
 .../rocketmq/common/attribute/AttributeParser.java |   79 +
 .../BooleanAttribute.java}                         |   28 +-
 .../MessageType.java => attribute/CQType.java}     |   10 +-
 .../EnumAttribute.java}                            |   30 +-
 .../LongRangeAttribute.java}                       |   33 +-
 .../TopicMessageType.java}                         |   29 +-
 .../ConsumeInitMode.java}                          |   11 +-
 .../rocketmq/common/constant/LoggerName.java       |    9 +-
 .../apache/rocketmq/common/constant/PermName.java  |   18 +-
 .../fastjson/GenericMapSuperclassDeserializer.java |   58 +
 .../rocketmq/common/future/FutureTaskExt.java      |   31 +-
 .../rocketmq/common/message/MessageConst.java      |   34 +-
 .../rocketmq/common/message/MessageDecoder.java    |  201 ++-
 .../apache/rocketmq/common/message/MessageExt.java |   55 +
 .../rocketmq/common/message/MessageExtBatch.java   |   15 +-
 .../common/message}/MessageExtBrokerInner.java     |    3 +-
 .../rocketmq/common/message/MessageQueue.java      |    6 +
 .../common/message/MessageQueueAssignment.java     |   83 +
 .../{MessageType.java => MessageRequestMode.java}  |   30 +-
 .../rocketmq/common/message/MessageType.java       |   28 +-
 .../rocketmq/common/message/MessageVersion.java    |   70 +
 .../common/namesrv/DefaultTopAddressing.java       |  165 ++
 .../NameServerUpdateCallback.java}                 |   10 +-
 .../rocketmq/common/namesrv/NamesrvConfig.java     |  134 +-
 .../rocketmq/common/namesrv/TopAddressing.java     |   88 +-
 .../rocketmq/common/protocol/ForbiddenType.java    |   38 +-
 .../rocketmq/common/protocol/RequestCode.java      |   42 +
 .../rocketmq/common/protocol/ResponseCode.java     |   18 +
 .../common/protocol/body/BrokerMemberGroup.java    |   90 +
 .../protocol/body/CheckClientRequestBody.java      |    9 +
 .../rocketmq/common/protocol/body/ClusterInfo.java |   28 +-
 .../body/ConsumerOffsetSerializeWrapper.java       |   10 +
 .../common/protocol/body/ConsumerRunningInfo.java  |   63 +-
 .../body/GetBrokerMemberGroupResponseBody.java     |   19 +-
 .../protocol/body/GetRemoteClientConfigBody.java   |   26 +-
 .../common/protocol/body/HARuntimeInfo.java        |  188 ++
 .../common/protocol/body/LockBatchRequestBody.java |    9 +
 ...ava => MessageRequestModeSerializeWrapper.java} |   20 +-
 ...ntRequestBody.java => PopProcessQueueInfo.java} |   45 +-
 ...stBody.java => QueryAssignmentRequestBody.java} |   39 +-
 .../protocol/body/QueryAssignmentResponseBody.java |   22 +-
 ...ody.java => QuerySubscriptionResponseBody.java} |   22 +-
 .../common/protocol/body/RegisterBrokerBody.java   |   32 +-
 .../SetMessageRequestModeRequestBody.java}         |   54 +-
 .../TopicConfigAndMappingSerializeWrapper.java     |   68 +
 ...java => TopicQueueMappingSerializeWrapper.java} |   35 +-
 .../protocol/body/UnlockBatchRequestBody.java      |    9 +
 ...estHeader.java => AckMessageRequestHeader.java} |   37 +-
 ...uestHeader.java => AddBrokerRequestHeader.java} |   21 +-
 ....java => ChangeInvisibleTimeRequestHeader.java} |   51 +-
 ...java => ChangeInvisibleTimeResponseHeader.java} |   39 +-
 .../ConsumeMessageDirectlyResultRequestHeader.java |   30 +
 .../protocol/header/CreateTopicRequestHeader.java  |   21 +
 .../DeleteSubscriptionGroupRequestHeader.java      |   10 +-
 ...eader.java => ExchangeHAInfoRequestHeader.java} |   44 +-
 ...ader.java => ExchangeHAInfoResponseHeader.java} |   44 +-
 .../common/protocol/header/ExtraInfoUtil.java      |  258 +++
 ...java => GetBrokerMemberGroupRequestHeader.java} |   31 +-
 .../GetEarliestMsgStoretimeRequestHeader.java      |    8 +-
 .../protocol/header/GetMaxOffsetRequestHeader.java |   26 +-
 .../protocol/header/GetMinOffsetRequestHeader.java |    8 +-
 ...> GetSubscriptionGroupConfigRequestHeader.java} |   24 +-
 ...eader.java => GetTopicConfigRequestHeader.java} |   19 +-
 .../header/GetTopicStatsInfoRequestHeader.java     |    4 +-
 ...r.java => InitConsumerOffsetRequestHeader.java} |   17 +-
 ...tHeader.java => NotificationRequestHeader.java} |   44 +-
 ...Header.java => NotificationResponseHeader.java} |   19 +-
 ...a => NotifyMinBrokerIdChangeRequestHeader.java} |   52 +-
 ...stHeader.java => PeekMessageRequestHeader.java} |   28 +-
 ...stHeader.java => PollingInfoRequestHeader.java} |   16 +-
 ...tHeader.java => PollingInfoResponseHeader.java} |   18 +-
 .../protocol/header/PopMessageRequestHeader.java   |  155 ++
 .../protocol/header/PopMessageResponseHeader.java  |  102 ++
 .../protocol/header/PullMessageRequestHeader.java  |   56 +-
 .../protocol/header/PullMessageResponseHeader.java |   66 +
 .../header/QueryConsumerOffsetRequestHeader.java   |   18 +-
 ... QuerySubscriptionByConsumerRequestHeader.java} |   24 +-
 ...ava => QueryTopicsByConsumerRequestHeader.java} |   16 +-
 ...tHeader.java => RemoveBrokerRequestHeader.java} |   39 +-
 ...ader.java => ResetMasterFlushOffsetHeader.java} |   13 +-
 .../protocol/header/SearchOffsetRequestHeader.java |    8 +-
 .../protocol/header/SendMessageRequestHeader.java  |    8 +-
 .../protocol/header/SendMessageResponseHeader.java |   15 +
 ...r.java => StatisticsMessagesRequestHeader.java} |   37 +-
 .../header/UpdateConsumerOffsetRequestHeader.java  |    8 +-
 ...java => UpdateGroupForbiddenRequestHeader.java} |   28 +-
 ...ader.java => BrokerHeartbeatRequestHeader.java} |   58 +-
 .../header/namesrv/GetRouteInfoRequestHeader.java  |    2 +
 .../namesrv/RegisterBrokerRequestHeader.java       |   22 +
 .../RegisterTopicRequestHeader.java}               |    5 +-
 .../rocketmq/common/protocol/route/BrokerData.java |   55 +-
 .../route/MessageQueueRouteState.java}             |   15 +-
 .../rocketmq/common/protocol/route/QueueData.java  |   13 +
 .../common/protocol/route/TopicRouteData.java      |   92 +-
 .../common/protocol/route/TopicRouteDatas.java     |   21 +-
 .../apache/rocketmq/common/rpc/ClientMetadata.java |  176 ++
 .../apache/rocketmq/common/rpc/RequestBuilder.java |   81 +
 .../org/apache/rocketmq/common/rpc/RpcClient.java  |   29 +-
 .../apache/rocketmq/common/rpc/RpcClientHook.java  |   12 +-
 .../apache/rocketmq/common/rpc/RpcClientImpl.java  |  340 ++++
 .../apache/rocketmq/common/rpc/RpcClientUtils.java |   58 +
 .../apache/rocketmq/common/rpc/RpcException.java   |   31 +-
 .../org/apache/rocketmq/common/rpc/RpcRequest.java |   33 +-
 .../RpcRequestHeader.java}                         |   54 +-
 .../apache/rocketmq/common/rpc/RpcResponse.java    |   70 +
 .../common/rpc/TopicQueueRequestHeader.java        |   10 +-
 .../rocketmq/common/rpc/TopicRequestHeader.java    |   19 +-
 .../common/statictopic/LogicQueueMappingItem.java  |  212 +++
 .../statictopic/TopicConfigAndQueueMapping.java    |   63 +
 .../statictopic/TopicQueueMappingContext.java      |   99 ++
 .../statictopic/TopicQueueMappingDetail.java       |  144 ++
 .../common/statictopic/TopicQueueMappingInfo.java  |  161 ++
 .../common/statictopic/TopicQueueMappingOne.java   |   85 +
 .../common/statictopic/TopicQueueMappingUtils.java |  694 ++++++++
 .../statictopic/TopicRemappingDetailWrapper.java   |  104 ++
 .../rocketmq/common/statistics/FutureHolder.java   |   53 +
 .../Interceptor.java}                              |   18 +-
 .../common/statistics/StatisticsBrief.java         |  184 ++
 .../statistics/StatisticsBriefInterceptor.java     |   76 +
 .../rocketmq/common/statistics/StatisticsItem.java |  175 ++
 .../StatisticsItemFormatter.java}                  |   32 +-
 .../common/statistics/StatisticsItemPrinter.java   |   50 +
 .../StatisticsItemScheduledIncrementPrinter.java   |  290 +++
 .../statistics/StatisticsItemScheduledPrinter.java |   97 ++
 .../StatisticsItemStateGetter.java}                |   10 +-
 .../StatisticsKindMeta.java}                       |   39 +-
 .../common/statistics/StatisticsManager.java       |  157 ++
 .../common/subscription/CustomizedRetryPolicy.java |   85 +
 .../subscription/ExponentialRetryPolicy.java       |   74 +
 .../common/subscription/GroupForbidden.java        |   86 +
 .../common/subscription/GroupRetryPolicy.java      |   78 +
 .../GroupRetryPolicyType.java}                     |   12 +-
 .../rocketmq/common/subscription/RetryPolicy.java  |   17 +-
 .../subscription/SubscriptionGroupConfig.java      |   95 +-
 .../rocketmq/common/sysflag/MessageSysFlag.java    |    5 +-
 .../rocketmq/common/sysflag/PullSysFlag.java       |    4 +
 .../rocketmq/common/topic/TopicValidator.java      |    2 +
 .../rocketmq/common/utils/DataConverter.java       |   35 +-
 .../apache/rocketmq/common/utils/MessageUtils.java |   49 +
 .../common/utils/PositiveAtomicCounter.java        |   32 +-
 .../rocketmq/common/utils/QueueTypeUtils.java      |   51 +
 .../rocketmq/common/utils}/ServiceProvider.java    |   27 +-
 .../apache/rocketmq/common/utils/ThreadUtils.java  |   17 +-
 .../apache/rocketmq/common/ConfigManagerTest.java  |    5 +-
 .../apache/rocketmq/common/DataVersionTest.java    |    7 +
 .../rocketmq/common/RegisterBrokerBodyTest.java    |    5 +-
 .../apache/rocketmq/common/TopicConfigTest.java    |   78 +
 .../org/apache/rocketmq/common/UtilAllTest.java    |   21 +-
 .../common/attribute/AttributeParserTest.java      |   70 +
 .../rocketmq/common/attribute/AttributeTest.java   |   70 +
 .../common/message/MessageClientIDSetterTest.java  |    2 -
 .../common/message/MessageDecoderTest.java         |   12 +-
 .../rocketmq/common/message/MessageTest.java       |    1 -
 .../rocketmq/common/protocol/body/KVTableTest.java |    1 -
 .../MessageRequestModeSerializeWrapperTest.java    |   58 +
 .../common/protocol/route/TopicRouteDataTest.java  |   11 +-
 .../common/statictopic/TopicQueueMappingTest.java  |   78 +
 .../statictopic/TopicQueueMappingUtilsTest.java    |  320 ++++
 .../subscription/CustomizedRetryPolicyTest.java    |   44 +
 .../subscription/ExponentialRetryPolicyTest.java   |   44 +
 .../common/subscription/GroupRetryPolicyTest.java  |   49 +
 {logging => container}/pom.xml                     |   23 +-
 .../apache/rocketmq/container/BrokerBootHook.java  |   36 +-
 .../apache/rocketmq/container/BrokerContainer.java |  478 +++++
 .../rocketmq/container/BrokerContainerConfig.java  |   75 +
 .../container/BrokerContainerProcessor.java        |  280 +++
 .../rocketmq/container/BrokerContainerStartup.java |  445 +++++
 .../ContainerClientHouseKeepingService.java        |  104 ++
 .../rocketmq/container/IBrokerContainer.java       |  142 ++
 .../rocketmq/container/InnerBrokerController.java  |  204 +++
 .../container/InnerSalveBrokerController.java      |   46 +
 .../logback/BrokerLogbackConfigurator.java         |  187 ++
 .../container/BrokerContainerStartupTest.java      |  140 ++
 .../rocketmq/container/BrokerContainerTest.java    |  371 ++++
 .../rocketmq/container/BrokerPreOnlineTest.java    |  102 ++
 distribution/bin/{mqshutdown => mqbrokercontainer} |   46 +-
 distribution/bin/mqshutdown                        |   14 +
 distribution/bin/runbroker.cmd                     |    1 +
 distribution/bin/runbroker.sh                      |    3 +-
 .../2container-2m-2s/broker-a-in-container1.conf   |   48 +-
 .../2container-2m-2s/broker-a-in-container2.conf   |   48 +-
 .../2container-2m-2s/broker-b-in-container1.conf   |   48 +-
 .../2container-2m-2s/broker-b-in-container2.conf   |   48 +-
 .../2container-2m-2s/broker-container1.conf        |   38 +-
 .../2container-2m-2s/broker-container2.conf        |   38 +-
 .../container/2container-2m-2s/nameserver.conf     |   30 +-
 distribution/conf/logback_broker.xml               |   29 +
 distribution/conf/logback_tools.xml                |    5 +
 distribution/pom.xml                               |    6 +-
 distribution/release.xml                           |    1 +
 docs/cn/BrokerContainer.md                         |  152 ++
 docs/cn/QuorumACK.md                               |   70 +
 docs/cn/README.md                                  |   12 +-
 docs/cn/SlaveActingMasterMode.md                   |  164 ++
 ..._Topic_Logic_Queue_\350\256\276\350\256\241.md" |  503 ++++++
 docs/cn/statictopic/The_Scope_Of_Static_Topic.md   |  116 ++
 docs/en/Feature.md                                 |    7 +-
 example/pom.xml                                    |    6 +-
 .../rocketmq/example/benchmark/Consumer.java       |    2 +
 .../rocketmq/example/simple/PopPushConsumer.java   |   62 +
 filter/pom.xml                                     |    2 +-
 logging/pom.xml                                    |    2 +-
 .../rocketmq/logging/InternalLoggerFactory.java    |   11 +
 .../rocketmq/logging/Slf4jLoggerFactory.java       |   87 +-
 .../apache/rocketmq/logging/inner/SysLogger.java   |    4 +-
 .../rocketmq/logging/Slf4jLoggerFactoryTest.java   |    2 +-
 .../rocketmq/logging/inner/LoggingBuilderTest.java |    8 +-
 namesrv/pom.xml                                    |   14 +-
 .../apache/rocketmq/namesrv/NamesrvController.java |  149 +-
 .../apache/rocketmq/namesrv/NamesrvStartup.java    |   11 +-
 .../namesrv/processor/ClientRequestProcessor.java  |  102 ++
 .../processor/ClusterTestRequestProcessor.java     |    2 +-
 .../namesrv/processor/DefaultRequestProcessor.java |  364 ++--
 .../namesrv/routeinfo/BatchUnRegisterService.java  |   85 +
 .../routeinfo/BrokerHousekeepingService.java       |    6 +-
 .../namesrv/routeinfo/RouteInfoManager.java        | 1027 ++++++++---
 ...rocessorTest.java => RequestProcessorTest.java} |  159 +-
 .../namesrv/routeinfo/GetRouteInfoBenchmark.java   |  148 ++
 .../namesrv/routeinfo/RegisterBrokerBenchmark.java |  177 ++
 .../routeinfo/RouteInfoManagerBrokerPermTest.java  |   24 +-
 .../RouteInfoManagerBrokerRegisterTest.java        |   61 +-
 .../RouteInfoManagerStaticRegisterTest.java        |   19 +-
 .../namesrv/routeinfo/RouteInfoManagerTest.java    |  223 +++
 .../routeinfo/RouteInfoManagerTestBase.java        |    1 +
 .../routeinfo/RouteInfoManager_NewTest.java        |  783 +++++++++
 openmessaging/pom.xml                              |    2 +-
 pom.xml                                            |   22 +-
 remoting/pom.xml                                   |    2 +-
 .../java/org/apache/rocketmq/remoting/RPCHook.java |    2 +-
 .../apache/rocketmq/remoting/RemotingClient.java   |    6 +-
 .../apache/rocketmq/remoting/RemotingServer.java   |    6 +
 .../apache/rocketmq/remoting/RemotingService.java  |    5 +
 .../rocketmq/remoting/common/RemotingHelper.java   |   39 +
 .../rocketmq/remoting/common/RemotingUtil.java     |   18 +-
 .../rocketmq/remoting/netty/NettyClientConfig.java |   15 +
 .../remoting/netty/NettyRemotingAbstract.java      |  103 +-
 .../remoting/netty/NettyRemotingClient.java        |  361 +++-
 .../remoting/netty/NettyRemotingServer.java        |  158 +-
 .../remoting/netty/NettyRequestProcessor.java      |    1 -
 .../rocketmq/remoting/netty/ResponseFuture.java    |   42 +-
 .../remoting/protocol/FastCodesHeader.java         |    2 +-
 .../remoting/protocol/RemotingCommand.java         |   54 +-
 .../remoting/protocol/RemotingSerializable.java    |    7 +-
 .../rocketmq/remoting/RemotingServerTest.java      |    5 +-
 .../rocketmq/remoting/SubRemotingServerTest.java   |  109 ++
 .../remoting/netty/NettyRemotingAbstractTest.java  |    6 +-
 .../remoting/protocol/RemotingCommandTest.java     |   99 +-
 srvutil/pom.xml                                    |   10 +-
 .../rocketmq/srvutil/ConcurrentHashMapUtil.java    |   50 +
 .../apache/rocketmq/srvutil/FileWatchService.java  |    4 +-
 .../rocketmq/util/cache/CacheEvictHandler.java     |   10 +-
 .../apache/rocketmq/util/cache/CacheObject.java    |   28 +-
 .../rocketmq/util/cache/ExpiredLocalCache.java     |   84 +
 .../org/apache/rocketmq/util/cache/LocalCache.java |   58 +
 .../apache/rocketmq/util/cache/LockManager.java    |   54 +
 store/pom.xml                                      |    2 +-
 .../rocketmq/store/AllocateMappedFileService.java  |   11 +-
 .../rocketmq/store/AppendMessageCallback.java      |    2 +-
 .../apache/rocketmq/store/AppendMessageResult.java |   12 +
 .../java/org/apache/rocketmq/store/CommitLog.java  | 1138 ++++++++----
 .../org/apache/rocketmq/store/ConsumeQueue.java    |  313 +++-
 .../org/apache/rocketmq/store/ConsumeQueueExt.java |    5 +
 .../apache/rocketmq/store/DefaultMessageStore.java | 1842 ++++++++++++--------
 .../org/apache/rocketmq/store/DispatchRequest.java |   45 +
 .../apache/rocketmq/store/FileQueueSnapshot.java   |   90 +
 .../apache/rocketmq/store/GetMessageResult.java    |   37 +-
 .../org/apache/rocketmq/store/MappedFileQueue.java |  189 +-
 .../org/apache/rocketmq/store/MessageStore.java    |  422 ++++-
 .../org/apache/rocketmq/store/MultiDispatch.java   |  184 --
 .../rocketmq/store/MultiPathMappedFileQueue.java   |    6 +-
 .../apache/rocketmq/store/PutMessageContext.java   |   48 +
 .../apache/rocketmq/store/PutMessageResult.java    |   26 +-
 .../apache/rocketmq/store/PutMessageStatus.java    |    6 +-
 .../apache/rocketmq/store/QueryMessageResult.java  |    4 +
 .../rocketmq/store/SelectMappedBufferResult.java   |   11 +-
 .../rocketmq/store/SelectMappedFileResult.java     |   34 +-
 .../org/apache/rocketmq/store/StoreCheckpoint.java |   21 +-
 .../apache/rocketmq/store/StoreStatsService.java   |   11 +
 .../java/org/apache/rocketmq/store/StoreUtil.java  |   44 +
 .../java/org/apache/rocketmq/store/Swappable.java  |   14 +-
 .../org/apache/rocketmq/store/TopicQueueLock.java  |   46 +
 .../rocketmq/store/config/MessageStoreConfig.java  |  484 ++++-
 .../store/config/StorePathConfigHelper.java        |    3 +
 .../rocketmq/store/dledger/DLedgerCommitLog.java   |  275 ++-
 .../apache/rocketmq/store/ha/DefaultHAClient.java  |  392 +++++
 ...{HAConnection.java => DefaultHAConnection.java} |  187 +-
 .../apache/rocketmq/store/ha/DefaultHAService.java |  339 ++++
 .../org/apache/rocketmq/store/ha/FlowMonitor.java  |   76 +
 .../rocketmq/store/ha/GroupTransferService.java    |  140 ++
 .../org/apache/rocketmq/store/ha/HAClient.java     |  104 ++
 .../org/apache/rocketmq/store/ha/HAConnection.java |  428 +----
 .../rocketmq/store/ha/HAConnectionState.java       |   31 +-
 .../ha/HAConnectionStateNotificationRequest.java   |   49 +
 .../ha/HAConnectionStateNotificationService.java   |  150 ++
 .../org/apache/rocketmq/store/ha/HAService.java    |  665 +------
 .../apache/rocketmq/store/ha/WaitNotifyObject.java |   67 +-
 .../apache/rocketmq/store/hook/PutMessageHook.java |   25 +-
 .../rocketmq/store/hook/SendMessageBackHook.java   |   25 +-
 .../org/apache/rocketmq/store/index/IndexFile.java |   21 +-
 .../apache/rocketmq/store/index/IndexService.java  |   75 +-
 .../rocketmq/store/logfile/AbstractMappedFile.java |    9 +-
 .../DefaultMappedFile.java}                        |  302 ++--
 .../apache/rocketmq/store/logfile/MappedFile.java  |  340 ++++
 .../java/org/apache/rocketmq/store/pop/AckMsg.java |   97 ++
 .../apache/rocketmq/store/pop/PopCheckPoint.java   |  184 ++
 .../rocketmq/store/queue/BatchConsumeQueue.java    |  980 +++++++++++
 .../rocketmq/store/queue/BatchOffsetIndex.java     |   57 +
 .../store/queue/ConsumeQueueInterface.java         |  142 ++
 .../rocketmq/store/queue/ConsumeQueueStore.java    |  483 +++++
 .../org/apache/rocketmq/store/queue/CqUnit.java    |  115 ++
 .../rocketmq/store/queue/FileQueueLifeCycle.java   |   84 +
 .../rocketmq/store/queue/QueueOffsetAssigner.java  |   92 +
 .../rocketmq/store/queue/ReferredIterator.java     |   14 +-
 .../apache/rocketmq/store/stats/BrokerStats.java   |    6 +-
 .../rocketmq/store/stats/BrokerStatsManager.java   |  435 ++++-
 .../apache/rocketmq/store/util/PerfCounter.java    |  370 ++++
 .../apache/rocketmq/store/AppendCallbackTest.java  |    4 +-
 .../apache/rocketmq/store/BatchPutMessageTest.java |   61 +-
 .../apache/rocketmq/store/ConsumeQueueTest.java    |   80 +-
 .../store/DefaultMessageStoreCleanFilesTest.java   |   92 +-
 .../store/DefaultMessageStoreShutDownTest.java     |    2 +-
 .../rocketmq/store/DefaultMessageStoreTest.java    |  285 ++-
 .../java/org/apache/rocketmq/store/HATest.java     |  130 +-
 .../apache/rocketmq/store/MappedFileQueueTest.java |  156 +-
 .../org/apache/rocketmq/store/MappedFileTest.java  |    4 +-
 .../apache/rocketmq/store/MultiDispatchTest.java   |   63 +-
 .../store/MultiPathMappedFileQueueTest.java        |   32 +-
 .../rocketmq/store/ScheduleMessageServiceTest.java |  194 ---
 .../org/apache/rocketmq/store/StoreTestBase.java   |   13 +-
 .../store/dledger/DLedgerCommitlogTest.java        |   20 +-
 .../store/dledger/MessageStoreTestBase.java        |    5 +-
 .../rocketmq/store/dledger/MixCommitlogTest.java   |    2 -
 .../apache/rocketmq/store/ha/FlowMonitorTest.java  |   61 +
 .../org/apache/rocketmq/store/ha/HAClientTest.java |   72 +
 .../org/apache/rocketmq/store/ha/HAServerTest.java |  295 ++++
 .../rocketmq/store/ha/WaitNotifyObjectTest.java    |    2 -
 .../store/queue/BatchConsumeMessageTest.java       |  454 +++++
 .../store/queue/BatchConsumeQueueTest.java         |  312 ++++
 .../store/queue/ConsumeQueueStoreTest.java         |  100 ++
 .../rocketmq/store/queue/ConsumeQueueTest.java     |  102 ++
 .../apache/rocketmq/store/queue/QueueTestBase.java |  114 ++
 test/pom.xml                                       |    6 +-
 .../test/client/rmq/RMQNormalConsumer.java         |    5 +
 .../test/client/rmq/RMQNormalProducer.java         |    7 +
 .../rocketmq/test/client/rmq/RMQPopConsumer.java   |   33 +
 .../test/clientinterface/AbstractMQProducer.java   |    1 +
 .../rocketmq/test/factory/ConsumerFactory.java     |   10 +
 .../rocketmq/test/listener/AbstractListener.java   |    2 +-
 .../org/apache/rocketmq/test/util/MQAdmin.java     |  166 --
 .../rocketmq/test/util/MQAdminTestUtils.java       |  310 ++++
 .../org/apache/rocketmq/test/base/BaseConf.java    |  168 +-
 .../rocketmq/test/base/IntegrationTestBase.java    |   40 +-
 .../base/dledger/DLedgerProduceAndConsumeIT.java   |    3 +-
 .../consumer/balance/NormalMsgStaticBalanceIT.java |   18 +-
 .../normal/BroadCastNormalMsgRecvFailIT.java       |    2 +
 .../test/client/consumer/pop/PopSubCheckIT.java    |   97 ++
 .../test/client/producer/batch/BatchSendIT.java    |  161 ++
 .../client/producer/oneway/OneWaySendWithMQIT.java |   10 -
 .../client/producer/order/OrderMsgRebalanceIT.java |    2 +-
 .../test/container/AddAndRemoveBrokerIT.java       |   83 +
 .../rocketmq/test/container/BrokerFailoverIT.java  |   86 +
 .../test/container/BrokerMemberGroupIT.java        |   71 +
 .../container/ContainerIntegrationTestBase.java    |  666 +++++++
 .../test/container/GetMaxOffsetFromSlaveIT.java    |  100 ++
 .../test/container/GetMetadataReverseIT.java       |  231 +++
 .../test/container/PullMultipleReplicasIT.java     |  201 +++
 .../test/container/PushMultipleReplicasIT.java     |  114 ++
 .../test/container/RebalanceLockOnSlaveIT.java     |  209 +++
 .../container/ScheduleSlaveActingMasterIT.java     |  220 +++
 .../test/container/ScheduledMessageIT.java         |  153 ++
 .../test/container/SendMultipleReplicasIT.java     |  159 ++
 .../rocketmq/test/container/SlaveBrokerIT.java     |  117 ++
 .../test/container/SyncConsumerOffsetIT.java       |  148 ++
 .../rocketmq/test/delay/NormalMsgDelayIT.java      |    1 -
 .../rocketmq/test/offset/OffsetNotFoundIT.java     |  132 ++
 .../test/smoke/NormalMessageSendAndRecvIT.java     |   39 +-
 .../rocketmq/test/statictopic/StaticTopicIT.java   |  523 ++++++
 tools/pom.xml                                      |    6 +-
 .../rocketmq/tools/admin/DefaultMQAdminExt.java    |  208 ++-
 .../tools/admin/DefaultMQAdminExtImpl.java         | 1158 ++++++++----
 .../apache/rocketmq/tools/admin/MQAdminExt.java    |  128 +-
 .../apache/rocketmq/tools/admin/MQAdminUtils.java  |  343 ++++
 .../tools/admin/api/BrokerOperatorResult.java      |   37 +-
 .../tools/admin/common/AdminToolHandler.java       |   10 +-
 .../tools/admin/common/AdminToolResult.java        |   76 +
 .../common/AdminToolsResultCodeEnum.java}          |   31 +-
 .../apache/rocketmq/tools/command/CommandUtil.java |   17 +-
 .../rocketmq/tools/command/MQAdminStartup.java     |   38 +-
 .../tools/command/SubCommandException.java         |    4 +
 .../command/broker/GetBrokerConfigCommand.java     |   29 +-
 .../broker/ResetMasterFlushOffsetSubCommand.java   |   71 +
 .../broker/UpdateBrokerConfigSubCommand.java       |   16 +-
 .../command/cluster/CLusterSendMsgRTCommand.java   |    4 +-
 .../command/cluster/ClusterListSubCommand.java     |  108 +-
 .../consumer/ConsumerProgressSubCommand.java       |   17 +-
 .../consumer/DeleteSubscriptionGroupCommand.java   |   19 +-
 .../consumer/GetConsumerConfigSubCommand.java      |    2 +-
 .../SetConsumeModeSubCommand.java}                 |   71 +-
 .../command/consumer/UpdateSubGroupSubCommand.java |   26 +
 .../command/container/AddBrokerSubCommand.java     |   66 +
 .../command/container/RemoveBrokerSubCommand.java  |   79 +
 .../tools/command/ha/HAStatusSubCommand.java       |  151 ++
 .../command/offset/ResetOffsetByTimeCommand.java   |   34 +
 .../tools/command/topic/DeleteTopicSubCommand.java |    2 +-
 .../topic/RemappingStaticTopicSubCommand.java      |  207 +++
 .../command/topic/UpdateStaticTopicSubCommand.java |  208 +++
 .../tools/command/topic/UpdateTopicSubCommand.java |   14 +
 .../tools/admin/DefaultMQAdminExtTest.java         |   74 +-
 .../rocketmq/tools/command/CommandUtilTest.java    |    2 +-
 .../consumer/ConsumerProgressSubCommandTest.java   |    2 +
 .../message/QueryMsgByUniqueKeySubCommandTest.java |   18 +-
 600 files changed, 52593 insertions(+), 9243 deletions(-)
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/BrokerPreOnlineService.java
 copy common/src/main/java/org/apache/rocketmq/common/message/MessageType.java 
=> broker/src/main/java/org/apache/rocketmq/broker/ShutdownHook.java (77%)
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/failover/EscapeBridge.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/loadbalance/AssignmentManager.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/loadbalance/MessageRequestModeManager.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/longpolling/NotificationRequest.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/longpolling/PopRequest.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/mqtrace/AbortProcessException.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/offset/ConsumerOrderInfoManager.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/plugin/BrokerAttachedPlugin.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/plugin/PullMessageResultHandler.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/processor/AckMessageProcessor.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/processor/ChangeInvisibleTimeProcessor.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/processor/DefaultPullMessageResultHandler.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/processor/NotificationProcessor.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/processor/PeekMessageProcessor.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/processor/PollingInfoProcessor.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/processor/PopBufferMergeService.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/processor/PopMessageProcessor.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/processor/PopReviveService.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/processor/QueryAssignmentProcessor.java
 copy 
remoting/src/main/java/org/apache/rocketmq/remoting/netty/NettyRequestProcessor.java
 => 
broker/src/main/java/org/apache/rocketmq/broker/processor/SendMessageCallback.java
 (72%)
 copy {store/src/main/java/org/apache/rocketmq/store => 
broker/src/main/java/org/apache/rocketmq/broker}/schedule/DelayOffsetSerializeWrapper.java
 (81%)
 rename {store/src/main/java/org/apache/rocketmq/store => 
broker/src/main/java/org/apache/rocketmq/broker}/schedule/ScheduleMessageService.java
 (79%)
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/topic/TopicQueueMappingCleanService.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/topic/TopicQueueMappingManager.java
 delete mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/transaction/jdbc/JDBCTransactionStore.java
 delete mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/transaction/jdbc/JDBCTransactionStoreConfig.java
 create mode 100644 
broker/src/main/java/org/apache/rocketmq/broker/util/HookUtils.java
 copy 
broker/src/main/java/org/apache/rocketmq/broker/{transaction/OperationResult.java
 => util/MsgUtil.java} (54%)
 create mode 100644 
broker/src/test/java/org/apache/rocketmq/broker/offset/ConsumerOffsetManagerTest.java
 copy 
broker/src/test/java/org/apache/rocketmq/broker/processor/{ReplyMessageProcessorTest.java
 => AckMessageProcessorTest.java} (60%)
 copy 
broker/src/test/java/org/apache/rocketmq/broker/processor/{ReplyMessageProcessorTest.java
 => ChangeInvisibleTimeProcessorTest.java} (59%)
 create mode 100644 
broker/src/test/java/org/apache/rocketmq/broker/processor/ConsumerManageProcessorTest.java
 create mode 100644 
broker/src/test/java/org/apache/rocketmq/broker/processor/PopBufferMergeServiceTest.java
 copy 
broker/src/test/java/org/apache/rocketmq/broker/processor/{PullMessageProcessorTest.java
 => PopMessageProcessorTest.java} (50%)
 create mode 100644 
broker/src/test/java/org/apache/rocketmq/broker/processor/QueryAssignmentProcessorTest.java
 rename {store/src/test/java/org/apache/rocketmq/store => 
broker/src/test/java/org/apache/rocketmq/broker}/schedule/ScheduleMessageServiceTest.java
 (64%)
 create mode 100644 
broker/src/test/java/org/apache/rocketmq/broker/substription/ForbiddenTest.java
 create mode 100644 
broker/src/test/java/org/apache/rocketmq/broker/topic/TopicConfigManagerTest.java
 create mode 100644 
broker/src/test/java/org/apache/rocketmq/broker/topic/TopicQueueMappingManagerTest.java
 copy common/src/main/java/org/apache/rocketmq/common/message/MessageType.java 
=> client/src/main/java/org/apache/rocketmq/client/consumer/AckCallback.java 
(83%)
 copy common/src/main/java/org/apache/rocketmq/common/admin/TopicOffset.java => 
client/src/main/java/org/apache/rocketmq/client/consumer/AckResult.java (54%)
 copy common/src/main/java/org/apache/rocketmq/common/message/MessageType.java 
=> client/src/main/java/org/apache/rocketmq/client/consumer/AckStatus.java (83%)
 copy common/src/main/java/org/apache/rocketmq/common/message/MessageType.java 
=> client/src/main/java/org/apache/rocketmq/client/consumer/PopCallback.java 
(79%)
 copy client/src/main/java/org/apache/rocketmq/client/consumer/{PullResult.java 
=> PopResult.java} (58%)
 copy 
tools/src/main/java/org/apache/rocketmq/tools/command/SubCommandException.java 
=> client/src/main/java/org/apache/rocketmq/client/consumer/PopStatus.java (67%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/GetTopicStatsInfoRequestHeader.java
 => 
client/src/main/java/org/apache/rocketmq/client/exception/MQRedirectException.java
 (57%)
 copy 
tools/src/main/java/org/apache/rocketmq/tools/command/SubCommandException.java 
=> 
client/src/main/java/org/apache/rocketmq/client/exception/OffsetNotFoundException.java
 (65%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/GetTopicStatsInfoRequestHeader.java
 => 
client/src/main/java/org/apache/rocketmq/client/impl/BaseInvokeCallback.java 
(57%)
 copy 
client/src/main/java/org/apache/rocketmq/client/impl/consumer/{ConsumeMessageConcurrentlyService.java
 => ConsumeMessagePopConcurrentlyService.java} (63%)
 create mode 100644 
client/src/main/java/org/apache/rocketmq/client/impl/consumer/ConsumeMessagePopOrderlyService.java
 copy common/src/main/java/org/apache/rocketmq/common/message/MessageType.java 
=> 
client/src/main/java/org/apache/rocketmq/client/impl/consumer/MessageRequest.java
 (80%)
 create mode 100644 
client/src/main/java/org/apache/rocketmq/client/impl/consumer/PopProcessQueue.java
 copy 
client/src/main/java/org/apache/rocketmq/client/impl/consumer/{PullRequest.java 
=> PopRequest.java} (59%)
 create mode 100644 
client/src/test/resources/org/powermock/extensions/configuration.properties
 copy 
common/src/main/java/org/apache/rocketmq/common/{protocol/header/GetTopicStatsInfoRequestHeader.java
 => AbstractBrokerRunnable.java} (55%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/BrokerIdentity.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/BrokerSyncInfo.java
 copy common/src/main/java/org/apache/rocketmq/common/{ThreadFactoryImpl.java 
=> KeyBuilder.java} (51%)
 copy remoting/src/main/java/org/apache/rocketmq/remoting/RemotingService.java 
=> common/src/main/java/org/apache/rocketmq/common/LockCallback.java (76%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/PopAckConstants.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/TopicAttributes.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/TopicQueueId.java
 copy common/src/main/java/org/apache/rocketmq/common/{message/MessageType.java 
=> UnlockCallback.java} (84%)
 copy 
broker/src/main/java/org/apache/rocketmq/broker/transaction/TransactionRecord.java
 => common/src/main/java/org/apache/rocketmq/common/attribute/Attribute.java 
(58%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/attribute/AttributeParser.java
 copy 
common/src/main/java/org/apache/rocketmq/common/{protocol/header/GetTopicStatsInfoRequestHeader.java
 => attribute/BooleanAttribute.java} (55%)
 copy common/src/main/java/org/apache/rocketmq/common/{message/MessageType.java 
=> attribute/CQType.java} (84%)
 copy 
common/src/main/java/org/apache/rocketmq/common/{protocol/header/GetTopicStatsInfoRequestHeader.java
 => attribute/EnumAttribute.java} (56%)
 copy 
common/src/main/java/org/apache/rocketmq/common/{protocol/header/GetTopicStatsInfoRequestHeader.java
 => attribute/LongRangeAttribute.java} (53%)
 copy 
common/src/main/java/org/apache/rocketmq/common/{protocol/header/GetTopicStatsInfoRequestHeader.java
 => attribute/TopicMessageType.java} (59%)
 copy common/src/main/java/org/apache/rocketmq/common/{message/MessageType.java 
=> constant/ConsumeInitMode.java} (84%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/fastjson/GenericMapSuperclassDeserializer.java
 copy 
tools/src/main/java/org/apache/rocketmq/tools/command/SubCommandException.java 
=> common/src/main/java/org/apache/rocketmq/common/future/FutureTaskExt.java 
(60%)
 rename {store/src/main/java/org/apache/rocketmq/store => 
common/src/main/java/org/apache/rocketmq/common/message}/MessageExtBrokerInner.java
 (95%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/message/MessageQueueAssignment.java
 copy common/src/main/java/org/apache/rocketmq/common/message/{MessageType.java 
=> MessageRequestMode.java} (69%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/message/MessageVersion.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/namesrv/DefaultTopAddressing.java
 copy common/src/main/java/org/apache/rocketmq/common/{message/MessageType.java 
=> namesrv/NameServerUpdateCallback.java} (84%)
 copy 
tools/src/main/java/org/apache/rocketmq/tools/command/SubCommandException.java 
=> common/src/main/java/org/apache/rocketmq/common/protocol/ForbiddenType.java 
(58%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/protocol/body/BrokerMemberGroup.java
 copy 
store/src/main/java/org/apache/rocketmq/store/schedule/DelayOffsetSerializeWrapper.java
 => 
common/src/main/java/org/apache/rocketmq/common/protocol/body/GetBrokerMemberGroupResponseBody.java
 (62%)
 copy 
tools/src/main/java/org/apache/rocketmq/tools/command/SubCommandException.java 
=> 
common/src/main/java/org/apache/rocketmq/common/protocol/body/GetRemoteClientConfigBody.java
 (65%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/protocol/body/HARuntimeInfo.java
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/body/{ConsumerOffsetSerializeWrapper.java
 => MessageRequestModeSerializeWrapper.java} (58%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/body/{CheckClientRequestBody.java
 => PopProcessQueueInfo.java} (52%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/body/{LockBatchRequestBody.java
 => QueryAssignmentRequestBody.java} (64%)
 rename 
store/src/main/java/org/apache/rocketmq/store/schedule/DelayOffsetSerializeWrapper.java
 => 
common/src/main/java/org/apache/rocketmq/common/protocol/body/QueryAssignmentResponseBody.java
 (61%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/body/{CheckClientRequestBody.java
 => QuerySubscriptionResponseBody.java} (85%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/{header/QueryConsumerOffsetRequestHeader.java
 => body/SetMessageRequestModeRequestBody.java} (57%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/protocol/body/TopicConfigAndMappingSerializeWrapper.java
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/body/{CheckClientRequestBody.java
 => TopicQueueMappingSerializeWrapper.java} (53%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{UpdateConsumerOffsetRequestHeader.java
 => AckMessageRequestHeader.java} (74%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{GetTopicStatsInfoRequestHeader.java
 => AddBrokerRequestHeader.java} (71%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{UpdateConsumerOffsetRequestHeader.java
 => ChangeInvisibleTimeRequestHeader.java} (69%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{GetMinOffsetRequestHeader.java
 => ChangeInvisibleTimeResponseHeader.java} (65%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{ConsumeMessageDirectlyResultRequestHeader.java
 => ExchangeHAInfoRequestHeader.java} (58%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{ConsumeMessageDirectlyResultRequestHeader.java
 => ExchangeHAInfoResponseHeader.java} (58%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/protocol/header/ExtraInfoUtil.java
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{GetMinOffsetRequestHeader.java
 => GetBrokerMemberGroupRequestHeader.java} (71%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{GetTopicStatsInfoRequestHeader.java
 => GetSubscriptionGroupConfigRequestHeader.java} (72%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{GetTopicStatsInfoRequestHeader.java
 => GetTopicConfigRequestHeader.java} (84%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{GetTopicStatsInfoRequestHeader.java
 => InitConsumerOffsetRequestHeader.java} (81%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{UpdateConsumerOffsetRequestHeader.java
 => NotificationRequestHeader.java} (73%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{GetTopicStatsInfoRequestHeader.java
 => NotificationResponseHeader.java} (82%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{ConsumeMessageDirectlyResultRequestHeader.java
 => NotifyMinBrokerIdChangeRequestHeader.java} (59%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{QueryConsumerOffsetRequestHeader.java
 => PeekMessageRequestHeader.java} (81%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{QueryConsumerOffsetRequestHeader.java
 => PollingInfoRequestHeader.java} (84%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{GetTopicStatsInfoRequestHeader.java
 => PollingInfoResponseHeader.java} (82%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/protocol/header/PopMessageRequestHeader.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/protocol/header/PopMessageResponseHeader.java
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{GetMaxOffsetRequestHeader.java
 => QuerySubscriptionByConsumerRequestHeader.java} (81%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{GetTopicStatsInfoRequestHeader.java
 => QueryTopicsByConsumerRequestHeader.java} (77%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{ConsumeMessageDirectlyResultRequestHeader.java
 => RemoveBrokerRequestHeader.java} (61%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{GetTopicStatsInfoRequestHeader.java
 => ResetMasterFlushOffsetHeader.java} (79%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{UpdateConsumerOffsetRequestHeader.java
 => StatisticsMessagesRequestHeader.java} (74%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{SearchOffsetRequestHeader.java
 => UpdateGroupForbiddenRequestHeader.java} (71%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/namesrv/{RegisterBrokerRequestHeader.java
 => BrokerHeartbeatRequestHeader.java} (61%)
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/{GetTopicStatsInfoRequestHeader.java
 => namesrv/RegisterTopicRequestHeader.java} (90%)
 copy common/src/main/java/org/apache/rocketmq/common/{message/MessageType.java 
=> protocol/route/MessageQueueRouteState.java} (79%)
 rename 
remoting/src/main/java/org/apache/rocketmq/remoting/netty/AsyncNettyRequestProcessor.java
 => 
common/src/main/java/org/apache/rocketmq/common/protocol/route/TopicRouteDatas.java
 (62%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/rpc/ClientMetadata.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/rpc/RequestBuilder.java
 copy 
client/src/main/java/org/apache/rocketmq/client/impl/consumer/ConsumeMessageService.java
 => common/src/main/java/org/apache/rocketmq/common/rpc/RpcClient.java (54%)
 copy remoting/src/main/java/org/apache/rocketmq/remoting/RPCHook.java => 
common/src/main/java/org/apache/rocketmq/common/rpc/RpcClientHook.java (70%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/rpc/RpcClientImpl.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/rpc/RpcClientUtils.java
 copy 
broker/src/main/java/org/apache/rocketmq/broker/transaction/TransactionRecord.java
 => common/src/main/java/org/apache/rocketmq/common/rpc/RpcException.java (58%)
 copy 
tools/src/main/java/org/apache/rocketmq/tools/command/SubCommandException.java 
=> common/src/main/java/org/apache/rocketmq/common/rpc/RpcRequest.java (63%)
 copy 
common/src/main/java/org/apache/rocketmq/common/{protocol/header/GetMaxOffsetRequestHeader.java
 => rpc/RpcRequestHeader.java} (52%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/rpc/RpcResponse.java
 copy remoting/src/main/java/org/apache/rocketmq/remoting/RemotingService.java 
=> 
common/src/main/java/org/apache/rocketmq/common/rpc/TopicQueueRequestHeader.java
 (79%)
 copy remoting/src/main/java/org/apache/rocketmq/remoting/RPCHook.java => 
common/src/main/java/org/apache/rocketmq/common/rpc/TopicRequestHeader.java 
(69%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statictopic/LogicQueueMappingItem.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statictopic/TopicConfigAndQueueMapping.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statictopic/TopicQueueMappingContext.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statictopic/TopicQueueMappingDetail.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statictopic/TopicQueueMappingInfo.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statictopic/TopicQueueMappingOne.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statictopic/TopicQueueMappingUtils.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statictopic/TopicRemappingDetailWrapper.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statistics/FutureHolder.java
 copy common/src/main/java/org/apache/rocketmq/common/{message/MessageType.java 
=> statistics/Interceptor.java} (78%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statistics/StatisticsBrief.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statistics/StatisticsBriefInterceptor.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statistics/StatisticsItem.java
 copy 
common/src/main/java/org/apache/rocketmq/common/{protocol/header/GetTopicStatsInfoRequestHeader.java
 => statistics/StatisticsItemFormatter.java} (57%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statistics/StatisticsItemPrinter.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statistics/StatisticsItemScheduledIncrementPrinter.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statistics/StatisticsItemScheduledPrinter.java
 copy common/src/main/java/org/apache/rocketmq/common/{message/MessageType.java 
=> statistics/StatisticsItemStateGetter.java} (84%)
 copy common/src/main/java/org/apache/rocketmq/common/{admin/TopicOffset.java 
=> statistics/StatisticsKindMeta.java} (53%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/statistics/StatisticsManager.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/subscription/CustomizedRetryPolicy.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/subscription/ExponentialRetryPolicy.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/subscription/GroupForbidden.java
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/subscription/GroupRetryPolicy.java
 copy common/src/main/java/org/apache/rocketmq/common/{message/MessageType.java 
=> subscription/GroupRetryPolicyType.java} (79%)
 copy remoting/src/main/java/org/apache/rocketmq/remoting/RPCHook.java => 
common/src/main/java/org/apache/rocketmq/common/subscription/RetryPolicy.java 
(70%)
 rename 
broker/src/main/java/org/apache/rocketmq/broker/transaction/TransactionRecord.java
 => common/src/main/java/org/apache/rocketmq/common/utils/DataConverter.java 
(55%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/utils/MessageUtils.java
 copy 
tools/src/main/java/org/apache/rocketmq/tools/command/SubCommandException.java 
=> 
common/src/main/java/org/apache/rocketmq/common/utils/PositiveAtomicCounter.java
 (63%)
 create mode 100644 
common/src/main/java/org/apache/rocketmq/common/utils/QueueTypeUtils.java
 rename {broker/src/main/java/org/apache/rocketmq/broker/util => 
common/src/main/java/org/apache/rocketmq/common/utils}/ServiceProvider.java 
(90%)
 create mode 100644 
common/src/test/java/org/apache/rocketmq/common/TopicConfigTest.java
 create mode 100644 
common/src/test/java/org/apache/rocketmq/common/attribute/AttributeParserTest.java
 create mode 100644 
common/src/test/java/org/apache/rocketmq/common/attribute/AttributeTest.java
 create mode 100644 
common/src/test/java/org/apache/rocketmq/common/protocol/body/MessageRequestModeSerializeWrapperTest.java
 create mode 100644 
common/src/test/java/org/apache/rocketmq/common/statictopic/TopicQueueMappingTest.java
 create mode 100644 
common/src/test/java/org/apache/rocketmq/common/statictopic/TopicQueueMappingUtilsTest.java
 create mode 100644 
common/src/test/java/org/apache/rocketmq/common/subscription/CustomizedRetryPolicyTest.java
 create mode 100644 
common/src/test/java/org/apache/rocketmq/common/subscription/ExponentialRetryPolicyTest.java
 create mode 100644 
common/src/test/java/org/apache/rocketmq/common/subscription/GroupRetryPolicyTest.java
 copy {logging => container}/pom.xml (65%)
 copy 
tools/src/main/java/org/apache/rocketmq/tools/command/SubCommandException.java 
=> container/src/main/java/org/apache/rocketmq/container/BrokerBootHook.java 
(50%)
 create mode 100644 
container/src/main/java/org/apache/rocketmq/container/BrokerContainer.java
 create mode 100644 
container/src/main/java/org/apache/rocketmq/container/BrokerContainerConfig.java
 create mode 100644 
container/src/main/java/org/apache/rocketmq/container/BrokerContainerProcessor.java
 create mode 100644 
container/src/main/java/org/apache/rocketmq/container/BrokerContainerStartup.java
 create mode 100644 
container/src/main/java/org/apache/rocketmq/container/ContainerClientHouseKeepingService.java
 create mode 100644 
container/src/main/java/org/apache/rocketmq/container/IBrokerContainer.java
 create mode 100644 
container/src/main/java/org/apache/rocketmq/container/InnerBrokerController.java
 create mode 100644 
container/src/main/java/org/apache/rocketmq/container/InnerSalveBrokerController.java
 create mode 100644 
container/src/main/java/org/apache/rocketmq/container/logback/BrokerLogbackConfigurator.java
 create mode 100644 
container/src/test/java/org/apache/rocketmq/container/BrokerContainerStartupTest.java
 create mode 100644 
container/src/test/java/org/apache/rocketmq/container/BrokerContainerTest.java
 create mode 100644 
container/src/test/java/org/apache/rocketmq/container/BrokerPreOnlineTest.java
 copy distribution/bin/{mqshutdown => mqbrokercontainer} (51%)
 copy acl/src/test/resources/conf/plain_acl.yml => 
distribution/conf/container/2container-2m-2s/broker-a-in-container1.conf (59%)
 copy acl/src/test/resources/conf/plain_acl.yml => 
distribution/conf/container/2container-2m-2s/broker-a-in-container2.conf (59%)
 copy acl/src/test/resources/conf/plain_acl.yml => 
distribution/conf/container/2container-2m-2s/broker-b-in-container1.conf (59%)
 copy acl/src/test/resources/conf/plain_acl.yml => 
distribution/conf/container/2container-2m-2s/broker-b-in-container2.conf (59%)
 copy acl/src/test/resources/conf/plain_acl.yml => 
distribution/conf/container/2container-2m-2s/broker-container1.conf (59%)
 copy acl/src/test/resources/conf/plain_acl.yml => 
distribution/conf/container/2container-2m-2s/broker-container2.conf (59%)
 copy acl/src/test/resources/conf/plain_acl.yml => 
distribution/conf/container/2container-2m-2s/nameserver.conf (59%)
 create mode 100644 docs/cn/BrokerContainer.md
 create mode 100644 docs/cn/QuorumACK.md
 create mode 100644 docs/cn/SlaveActingMasterMode.md
 create mode 100644 
"docs/cn/statictopic/RocketMQ_Static_Topic_Logic_Queue_\350\256\276\350\256\241.md"
 create mode 100644 docs/cn/statictopic/The_Scope_Of_Static_Topic.md
 create mode 100644 
example/src/main/java/org/apache/rocketmq/example/simple/PopPushConsumer.java
 create mode 100644 
namesrv/src/main/java/org/apache/rocketmq/namesrv/processor/ClientRequestProcessor.java
 create mode 100644 
namesrv/src/main/java/org/apache/rocketmq/namesrv/routeinfo/BatchUnRegisterService.java
 rename 
namesrv/src/test/java/org/apache/rocketmq/namesrv/processor/{DefaultRequestProcessorTest.java
 => RequestProcessorTest.java} (69%)
 create mode 100644 
namesrv/src/test/java/org/apache/rocketmq/namesrv/routeinfo/GetRouteInfoBenchmark.java
 create mode 100644 
namesrv/src/test/java/org/apache/rocketmq/namesrv/routeinfo/RegisterBrokerBenchmark.java
 create mode 100644 
namesrv/src/test/java/org/apache/rocketmq/namesrv/routeinfo/RouteInfoManagerTest.java
 create mode 100644 
namesrv/src/test/java/org/apache/rocketmq/namesrv/routeinfo/RouteInfoManager_NewTest.java
 create mode 100644 
remoting/src/test/java/org/apache/rocketmq/remoting/SubRemotingServerTest.java
 create mode 100644 
srvutil/src/main/java/org/apache/rocketmq/srvutil/ConcurrentHashMapUtil.java
 copy common/src/main/java/org/apache/rocketmq/common/message/MessageType.java 
=> srvutil/src/main/java/org/apache/rocketmq/util/cache/CacheEvictHandler.java 
(84%)
 copy 
tools/src/main/java/org/apache/rocketmq/tools/command/SubCommandException.java 
=> srvutil/src/main/java/org/apache/rocketmq/util/cache/CacheObject.java (66%)
 create mode 100644 
srvutil/src/main/java/org/apache/rocketmq/util/cache/ExpiredLocalCache.java
 create mode 100644 
srvutil/src/main/java/org/apache/rocketmq/util/cache/LocalCache.java
 create mode 100644 
srvutil/src/main/java/org/apache/rocketmq/util/cache/LockManager.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/FileQueueSnapshot.java
 delete mode 100644 
store/src/main/java/org/apache/rocketmq/store/MultiDispatch.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/PutMessageContext.java
 rename 
broker/src/main/java/org/apache/rocketmq/broker/transaction/TransactionStore.java
 => store/src/main/java/org/apache/rocketmq/store/SelectMappedFileResult.java 
(60%)
 copy common/src/main/java/org/apache/rocketmq/common/message/MessageType.java 
=> store/src/main/java/org/apache/rocketmq/store/Swappable.java (75%)
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/TopicQueueLock.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/ha/DefaultHAClient.java
 copy store/src/main/java/org/apache/rocketmq/store/ha/{HAConnection.java => 
DefaultHAConnection.java} (60%)
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/ha/DefaultHAService.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/ha/FlowMonitor.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/ha/GroupTransferService.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/ha/HAClient.java
 copy 
tools/src/main/java/org/apache/rocketmq/tools/command/SubCommandException.java 
=> store/src/main/java/org/apache/rocketmq/store/ha/HAConnectionState.java (67%)
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/ha/HAConnectionStateNotificationRequest.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/ha/HAConnectionStateNotificationService.java
 copy 
tools/src/main/java/org/apache/rocketmq/tools/command/SubCommandException.java 
=> store/src/main/java/org/apache/rocketmq/store/hook/PutMessageHook.java (64%)
 copy 
tools/src/main/java/org/apache/rocketmq/tools/command/SubCommandException.java 
=> store/src/main/java/org/apache/rocketmq/store/hook/SendMessageBackHook.java 
(65%)
 copy common/src/main/java/org/apache/rocketmq/common/message/MessageType.java 
=> 
store/src/main/java/org/apache/rocketmq/store/logfile/AbstractMappedFile.java 
(81%)
 rename store/src/main/java/org/apache/rocketmq/store/{MappedFile.java => 
logfile/DefaultMappedFile.java} (71%)
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/logfile/MappedFile.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/pop/AckMsg.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/pop/PopCheckPoint.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/queue/BatchConsumeQueue.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/queue/BatchOffsetIndex.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/queue/ConsumeQueueInterface.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/queue/ConsumeQueueStore.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/queue/CqUnit.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/queue/FileQueueLifeCycle.java
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/queue/QueueOffsetAssigner.java
 copy remoting/src/main/java/org/apache/rocketmq/remoting/RemotingService.java 
=> store/src/main/java/org/apache/rocketmq/store/queue/ReferredIterator.java 
(78%)
 create mode 100644 
store/src/main/java/org/apache/rocketmq/store/util/PerfCounter.java
 delete mode 100644 
store/src/test/java/org/apache/rocketmq/store/ScheduleMessageServiceTest.java
 create mode 100644 
store/src/test/java/org/apache/rocketmq/store/ha/FlowMonitorTest.java
 create mode 100644 
store/src/test/java/org/apache/rocketmq/store/ha/HAClientTest.java
 create mode 100644 
store/src/test/java/org/apache/rocketmq/store/ha/HAServerTest.java
 create mode 100644 
store/src/test/java/org/apache/rocketmq/store/queue/BatchConsumeMessageTest.java
 create mode 100644 
store/src/test/java/org/apache/rocketmq/store/queue/BatchConsumeQueueTest.java
 create mode 100644 
store/src/test/java/org/apache/rocketmq/store/queue/ConsumeQueueStoreTest.java
 create mode 100644 
store/src/test/java/org/apache/rocketmq/store/queue/ConsumeQueueTest.java
 create mode 100644 
store/src/test/java/org/apache/rocketmq/store/queue/QueueTestBase.java
 create mode 100644 
test/src/main/java/org/apache/rocketmq/test/client/rmq/RMQPopConsumer.java
 delete mode 100644 
test/src/main/java/org/apache/rocketmq/test/util/MQAdmin.java
 create mode 100644 
test/src/main/java/org/apache/rocketmq/test/util/MQAdminTestUtils.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/client/consumer/pop/PopSubCheckIT.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/container/AddAndRemoveBrokerIT.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/container/BrokerFailoverIT.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/container/BrokerMemberGroupIT.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/container/ContainerIntegrationTestBase.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/container/GetMaxOffsetFromSlaveIT.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/container/GetMetadataReverseIT.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/container/PullMultipleReplicasIT.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/container/PushMultipleReplicasIT.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/container/RebalanceLockOnSlaveIT.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/container/ScheduleSlaveActingMasterIT.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/container/ScheduledMessageIT.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/container/SendMultipleReplicasIT.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/container/SlaveBrokerIT.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/container/SyncConsumerOffsetIT.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/offset/OffsetNotFoundIT.java
 create mode 100644 
test/src/test/java/org/apache/rocketmq/test/statictopic/StaticTopicIT.java
 create mode 100644 
tools/src/main/java/org/apache/rocketmq/tools/admin/MQAdminUtils.java
 copy 
common/src/main/java/org/apache/rocketmq/common/protocol/header/GetTopicStatsInfoRequestHeader.java
 => 
tools/src/main/java/org/apache/rocketmq/tools/admin/api/BrokerOperatorResult.java
 (54%)
 copy common/src/main/java/org/apache/rocketmq/common/message/MessageType.java 
=> 
tools/src/main/java/org/apache/rocketmq/tools/admin/common/AdminToolHandler.java
 (84%)
 create mode 100644 
tools/src/main/java/org/apache/rocketmq/tools/admin/common/AdminToolResult.java
 copy 
tools/src/main/java/org/apache/rocketmq/tools/{command/SubCommandException.java 
=> admin/common/AdminToolsResultCodeEnum.java} (65%)
 create mode 100644 
tools/src/main/java/org/apache/rocketmq/tools/command/broker/ResetMasterFlushOffsetSubCommand.java
 copy 
tools/src/main/java/org/apache/rocketmq/tools/command/{broker/UpdateBrokerConfigSubCommand.java
 => consumer/SetConsumeModeSubCommand.java} (52%)
 create mode 100644 
tools/src/main/java/org/apache/rocketmq/tools/command/container/AddBrokerSubCommand.java
 create mode 100644 
tools/src/main/java/org/apache/rocketmq/tools/command/container/RemoveBrokerSubCommand.java
 create mode 100644 
tools/src/main/java/org/apache/rocketmq/tools/command/ha/HAStatusSubCommand.java
 create mode 100644 
tools/src/main/java/org/apache/rocketmq/tools/command/topic/RemappingStaticTopicSubCommand.java
 create mode 100644 
tools/src/main/java/org/apache/rocketmq/tools/command/topic/UpdateStaticTopicSubCommand.java

Reply via email to