You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by du...@apache.org on 2021/06/29 07:36:00 UTC

[rocketmq] branch 5.0.0-preview updated (df1d93f -> efe598d)

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

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


    from df1d93f  [maven-release-plugin] prepare for next development iteration
     add 86bea21  [RIP-19] Pop Consuming (common)
     add 60ad9ab  Merge pull request #2721 from ayanamist/pop_consumer
     add c29d5fd  [RIP-19] Pop Consuming (store)
     add ea36854  Merge pull request #2733 from ayanamist/pop_consumer
     add ced6b02  [RIP-19] Pop Consuming (broker)
     add f868d99  Init pop retry consumer offset when create
     add d54629c  Add abbreviation for fields of PopCheckPoint to save commit log size.
     add d3d0207  Merge pull request #2757 from ayanamist/dev_pop_consume
     add 9d8f4c2  [RIP-19] Pop Consuming (client)
     add cd44623  Merge pull request #2808 from hill007299/pop_consumer
     add 8847fb8  [RIP-19] Pop Consuming (tools)
     add bc55a65  feat(test) ignore it for now, wait for the next PR
     add b91b95b  feat(test) remove unnessary stub
     add c3578dd  Merge pull request #2825 from hill007299/pop_consumer
     add 80bc36c  [RIP-19] Pop Consuming (integration test)
     add 0938aab  Merge pull request #2835 from hill007299/pop_consumer
     add 16262fc  [RIP-19] Pop Consuming (add example & doc)
     add 9a7c61c  fix rat-check
     add 7d32c02  Merge pull request #2862 from hill007299/pop_consumer
     add e84221d  Merge remote-tracking branch 'origin/develop' into pop_consumer
     add e22f9d5  Fix comment for ci
     add d98192b  Merge pull request #2908 from duhenglucky/duheng_pop_consumer
     add 48fa70b  Merge branch 5.0.0-preview into pop_consumer
     new efe598d  Merge pull request #2867 from apache/pop_consumer

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:
 broker/pom.xml                                     |   4 +
 .../apache/rocketmq/broker/BrokerController.java   | 154 +++-
 .../rocketmq/broker/BrokerPathConfigHelper.java    |   8 +
 .../broker/loadbalance/AssignmentManager.java      | 149 ++++
 .../loadbalance/MessageRequestModeManager.java     |  99 +++
 .../longpolling/NotifyMessageArrivingListener.java |   9 +-
 .../rocketmq/broker/longpolling/PopRequest.java    |  87 ++
 .../broker/offset/ConsumerOrderInfoManager.java    | 426 +++++++++
 .../apache/rocketmq/broker/out/BrokerOuterAPI.java |  42 +-
 .../broker/processor/AckMessageProcessor.java      | 188 ++++
 .../processor/ChangeInvisibleTimeProcessor.java    | 195 +++++
 .../broker/processor/PopBufferMergeService.java    | 731 ++++++++++++++++
 .../broker/processor/PopMessageProcessor.java      | 967 +++++++++++++++++++++
 .../broker/processor/PopReviveService.java         | 470 ++++++++++
 .../broker/processor/QueryAssignmentProcessor.java | 307 +++++++
 .../org/apache/rocketmq/broker/util/MsgUtil.java}  |  14 +-
 ...essorTest.java => AckMessageProcessorTest.java} |  94 +-
 ....java => ChangeInvisibleTimeProcessorTest.java} |  97 +--
 .../processor/PopBufferMergeServiceTest.java       | 124 +++
 ...essorTest.java => PopMessageProcessorTest.java} | 166 ++--
 .../processor/QueryAssignmentProcessorTest.java    | 153 ++++
 .../{PullCallback.java => AckCallback.java}        |   7 +-
 .../apache/rocketmq/client/consumer/AckResult.java |  36 +-
 .../consumer/{PullCallback.java => AckStatus.java} |  16 +-
 .../client/consumer/DefaultMQPushConsumer.java     |  51 ++
 .../{PullCallback.java => PopCallback.java}        |   6 +-
 .../consumer/{PullResult.java => PopResult.java}   |  59 +-
 .../consumer/{PullStatus.java => PopStatus.java}   |  13 +-
 .../rebalance/AllocateMessageQueueAveragely.java   |  12 +-
 .../AllocateMessageQueueAveragelyByCircle.java     |  12 +-
 .../rocketmq/client/impl/BaseInvokeCallback.java   |  19 +-
 .../rocketmq/client/impl/MQClientAPIImpl.java      | 286 +++++-
 .../ConsumeMessageConcurrentlyService.java         |   8 +-
 .../consumer/ConsumeMessageOrderlyService.java     |  14 +-
 ...a => ConsumeMessagePopConcurrentlyService.java} | 265 +++---
 .../consumer/ConsumeMessagePopOrderlyService.java  | 408 +++++++++
 .../impl/consumer/ConsumeMessageService.java       |   5 +
 .../impl/consumer/DefaultLitePullConsumerImpl.java |   8 +-
 .../impl/consumer/DefaultMQPushConsumerImpl.java   | 331 ++++++-
 .../client/impl/consumer/MessageQueueLock.java     |  29 +-
 .../client/impl/consumer/MessageRequest.java       |   6 +-
 .../client/impl/consumer/PopProcessQueue.java      |  84 ++
 .../consumer/{PullRequest.java => PopRequest.java} |  71 +-
 .../client/impl/consumer/PullAPIWrapper.java       |  55 +-
 .../client/impl/consumer/PullMessageService.java   |  47 +-
 .../rocketmq/client/impl/consumer/PullRequest.java |   8 +-
 .../client/impl/consumer/RebalanceImpl.java        | 482 ++++++++--
 .../impl/consumer/RebalanceLitePullImpl.java       |  25 +-
 .../client/impl/consumer/RebalancePullImpl.java    |  26 +-
 .../client/impl/consumer/RebalancePushImpl.java    |  56 +-
 .../client/impl/factory/MQClientInstance.java      |  37 +-
 .../consumer/DefaultLitePullConsumerTest.java      |   8 +
 .../client/consumer/DefaultMQPushConsumerTest.java | 121 ++-
 .../rocketmq/client/impl/MQClientAPIImplTest.java  | 490 ++++++++++-
 .../consumer/DefaultMQPushConsumerImplTest.java    |  69 ++
 .../impl/consumer/RebalancePushImplTest.java       |  53 +-
 .../client/impl/factory/MQClientInstanceTest.java  |   1 +
 .../client/producer/DefaultMQProducerTest.java     |   5 +-
 .../powermock/extensions/configuration.properties  |   6 +-
 .../org/apache/rocketmq/common/BrokerConfig.java   | 154 ++++
 ...{BrokerConfigSingleton.java => KeyBuilder.java} |  26 +-
 .../apache/rocketmq/common/PopAckConstants.java    |  29 +-
 .../{DBMsgConstants.java => ConsumeInitMode.java}  |   6 +-
 .../rocketmq/common/constant/LoggerName.java       |   1 +
 .../rocketmq/common/message/MessageConst.java      |   4 +
 .../rocketmq/common/message/MessageDecoder.java    |   2 +-
 .../common/message/MessageQueueAssignment.java     |  83 ++
 .../{MessageType.java => MessageRequestMode.java}  |  30 +-
 .../rocketmq/common/protocol/RequestCode.java      |   7 +
 .../rocketmq/common/protocol/ResponseCode.java     |   3 +
 .../common/protocol/body/ConsumerRunningInfo.java  |  32 +
 .../{Connection.java => PopProcessQueueInfo.java}  |  48 +-
 ...stBody.java => QueryAssignmentRequestBody.java} |  39 +-
 ...eBody.java => QueryAssignmentResponseBody.java} |  17 +-
 .../SetMessageRequestModeRequestBody.java}         |  59 +-
 ...estHeader.java => AckMessageRequestHeader.java} |  37 +-
 ....java => ChangeInvisibleTimeRequestHeader.java} |  51 +-
 ...java => ChangeInvisibleTimeResponseHeader.java} |  36 +-
 .../common/protocol/header/ExtraInfoUtil.java      | 258 ++++++
 ...estHeader.java => PopMessageRequestHeader.java} | 133 +--
 .../protocol/header/PopMessageResponseHeader.java  | 102 +++
 .../utils/{ChannelUtil.java => DataConverter.java} |  30 +-
 distribution/conf/logback_broker.xml               |  29 +
 docs/en/Feature.md                                 |   7 +-
 example/pom.xml                                    |   4 +
 .../rocketmq/example/simple/PopPushConsumer.java   |  62 ++
 pom.xml                                            |   5 +
 .../rocketmq/remoting/common/RemotingHelper.java   |   9 +-
 .../apache/rocketmq/store/DefaultMessageStore.java |   3 +-
 .../apache/rocketmq/store/GetMessageResult.java    |  10 +
 .../org/apache/rocketmq/store/MessageStore.java    |   4 +-
 .../java/org/apache/rocketmq/store/pop/AckMsg.java |  68 +-
 .../apache/rocketmq/store/pop/PopCheckPoint.java   | 174 ++++
 .../store/schedule/ScheduleMessageService.java     |  20 +-
 ...QBroadCastConsumer.java => RMQPopConsumer.java} |  10 +-
 .../rocketmq/test/factory/ConsumerFactory.java     |  10 +
 .../rocketmq/test/base/IntegrationTestBase.java    |  13 +-
 .../consumer/balance/NormalMsgStaticBalanceIT.java |  18 +-
 .../test/client/consumer/pop/PopSubCheckIT.java    |  92 ++
 .../test/smoke/NormalMessageSendAndRecvIT.java     |   6 +
 .../rocketmq/tools/admin/DefaultMQAdminExt.java    |  15 +-
 .../tools/admin/DefaultMQAdminExtImpl.java         |  20 +-
 .../apache/rocketmq/tools/admin/MQAdminExt.java    |  30 +-
 .../rocketmq/tools/command/MQAdminStartup.java     |   4 +-
 .../SetConsumeModeSubCommand.java}                 |  71 +-
 105 files changed, 8652 insertions(+), 938 deletions(-)
 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/PopRequest.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/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/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 broker/src/{test/java/org/apache/rocketmq/broker/util/LogTransactionalMessageCheckListener.java => main/java/org/apache/rocketmq/broker/util/MsgUtil.java} (57%)
 copy broker/src/test/java/org/apache/rocketmq/broker/processor/{ReplyMessageProcessorTest.java => AckMessageProcessorTest.java} (61%)
 copy broker/src/test/java/org/apache/rocketmq/broker/processor/{ReplyMessageProcessorTest.java => ChangeInvisibleTimeProcessorTest.java} (60%)
 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
 copy client/src/main/java/org/apache/rocketmq/client/consumer/{PullCallback.java => AckCallback.java} (88%)
 copy common/src/main/java/org/apache/rocketmq/common/protocol/header/ResumeCheckHalfMessageRequestHeader.java => client/src/main/java/org/apache/rocketmq/client/consumer/AckResult.java (56%)
 copy client/src/main/java/org/apache/rocketmq/client/consumer/{PullCallback.java => AckStatus.java} (83%)
 copy client/src/main/java/org/apache/rocketmq/client/consumer/{PullCallback.java => PopCallback.java} (88%)
 copy client/src/main/java/org/apache/rocketmq/client/consumer/{PullResult.java => PopResult.java} (58%)
 copy client/src/main/java/org/apache/rocketmq/client/consumer/{PullStatus.java => PopStatus.java} (78%)
 copy remoting/src/main/java/org/apache/rocketmq/remoting/InvokeCallback.java => client/src/main/java/org/apache/rocketmq/client/impl/BaseInvokeCallback.java (62%)
 copy client/src/main/java/org/apache/rocketmq/client/impl/consumer/{ConsumeMessageConcurrentlyService.java => ConsumeMessagePopConcurrentlyService.java} (64%)
 create mode 100644 client/src/main/java/org/apache/rocketmq/client/impl/consumer/ConsumeMessagePopOrderlyService.java
 copy acl/src/main/java/org/apache/rocketmq/acl/AccessResource.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%)
 copy distribution/bin/cleancache.sh => client/src/test/resources/org/powermock/extensions/configuration.properties (92%)
 copy common/src/main/java/org/apache/rocketmq/common/{BrokerConfigSingleton.java => KeyBuilder.java} (56%)
 copy broker/src/main/java/org/apache/rocketmq/broker/transaction/queue/TransactionalMessageUtil.java => common/src/main/java/org/apache/rocketmq/common/PopAckConstants.java (58%)
 copy common/src/main/java/org/apache/rocketmq/common/constant/{DBMsgConstants.java => ConsumeInitMode.java} (89%)
 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%)
 copy common/src/main/java/org/apache/rocketmq/common/protocol/body/{Connection.java => PopProcessQueueInfo.java} (53%)
 copy common/src/main/java/org/apache/rocketmq/common/protocol/body/{LockBatchRequestBody.java => QueryAssignmentRequestBody.java} (64%)
 copy common/src/main/java/org/apache/rocketmq/common/protocol/body/{LockBatchResponseBody.java => QueryAssignmentResponseBody.java} (66%)
 copy common/src/main/java/org/apache/rocketmq/common/protocol/{header/QueryConsumeQueueRequestHeader.java => body/SetMessageRequestModeRequestBody.java} (58%)
 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/{UpdateConsumerOffsetRequestHeader.java => ChangeInvisibleTimeRequestHeader.java} (69%)
 copy common/src/main/java/org/apache/rocketmq/common/protocol/header/{QueryConsumeTimeSpanRequestHeader.java => ChangeInvisibleTimeResponseHeader.java} (66%)
 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/{PullMessageRequestHeader.java => PopMessageRequestHeader.java} (50%)
 create mode 100644 common/src/main/java/org/apache/rocketmq/common/protocol/header/PopMessageResponseHeader.java
 copy common/src/main/java/org/apache/rocketmq/common/utils/{ChannelUtil.java => DataConverter.java} (58%)
 create mode 100644 example/src/main/java/org/apache/rocketmq/example/simple/PopPushConsumer.java
 copy common/src/main/java/org/apache/rocketmq/common/protocol/header/QueryConsumeQueueRequestHeader.java => store/src/main/java/org/apache/rocketmq/store/pop/AckMsg.java (56%)
 create mode 100644 store/src/main/java/org/apache/rocketmq/store/pop/PopCheckPoint.java
 copy test/src/main/java/org/apache/rocketmq/test/client/rmq/{RMQBroadCastConsumer.java => RMQPopConsumer.java} (74%)
 create mode 100644 test/src/test/java/org/apache/rocketmq/test/client/consumer/pop/PopSubCheckIT.java
 copy tools/src/main/java/org/apache/rocketmq/tools/command/{broker/UpdateBrokerConfigSubCommand.java => consumer/SetConsumeModeSubCommand.java} (52%)

[rocketmq] 01/01: Merge pull request #2867 from apache/pop_consumer

Posted by du...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

duhengforever pushed a commit to branch 5.0.0-preview
in repository https://gitbox.apache.org/repos/asf/rocketmq.git

commit efe598db98ad3ad328cbd3804da83715ac4ab2b7
Merge: df1d93f 48fa70b
Author: Heng Du <du...@apache.org>
AuthorDate: Tue Jun 29 15:34:16 2021 +0800

    Merge pull request #2867 from apache/pop_consumer
    
    [RIP-19] Server-side rebalance,  lightweight consumer client support

 broker/pom.xml                                     |   4 +
 .../apache/rocketmq/broker/BrokerController.java   | 154 +++-
 .../rocketmq/broker/BrokerPathConfigHelper.java    |   8 +
 .../broker/loadbalance/AssignmentManager.java      | 149 ++++
 .../loadbalance/MessageRequestModeManager.java     |  99 +++
 .../longpolling/NotifyMessageArrivingListener.java |   9 +-
 .../rocketmq/broker/longpolling/PopRequest.java    |  87 ++
 .../broker/offset/ConsumerOrderInfoManager.java    | 426 +++++++++
 .../apache/rocketmq/broker/out/BrokerOuterAPI.java |  42 +-
 .../broker/processor/AckMessageProcessor.java      | 188 ++++
 .../processor/ChangeInvisibleTimeProcessor.java    | 195 +++++
 .../broker/processor/PopBufferMergeService.java    | 731 ++++++++++++++++
 .../broker/processor/PopMessageProcessor.java      | 967 +++++++++++++++++++++
 .../broker/processor/PopReviveService.java         | 470 ++++++++++
 .../broker/processor/QueryAssignmentProcessor.java | 307 +++++++
 .../org/apache/rocketmq/broker/util/MsgUtil.java   |  34 +-
 .../broker/processor/AckMessageProcessorTest.java  | 132 +++
 .../ChangeInvisibleTimeProcessorTest.java          | 133 +++
 .../processor/PopBufferMergeServiceTest.java       | 124 +++
 .../broker/processor/PopMessageProcessorTest.java  | 191 ++++
 .../processor/QueryAssignmentProcessorTest.java    | 153 ++++
 .../rocketmq/client/consumer/AckCallback.java      |  22 +-
 .../apache/rocketmq/client/consumer/AckResult.java |  38 +-
 .../apache/rocketmq/client/consumer/AckStatus.java |  29 +-
 .../client/consumer/DefaultMQPushConsumer.java     |  51 ++
 .../rocketmq/client/consumer/PopCallback.java      |  25 +-
 .../apache/rocketmq/client/consumer/PopResult.java |  82 ++
 .../apache/rocketmq/client/consumer/PopStatus.java |  38 +-
 .../rebalance/AllocateMessageQueueAveragely.java   |  12 +-
 .../AllocateMessageQueueAveragelyByCircle.java     |  12 +-
 .../rocketmq/client/impl/BaseInvokeCallback.java   |  23 +-
 .../rocketmq/client/impl/MQClientAPIImpl.java      | 286 +++++-
 .../ConsumeMessageConcurrentlyService.java         |   8 +-
 .../consumer/ConsumeMessageOrderlyService.java     |  14 +-
 ...a => ConsumeMessagePopConcurrentlyService.java} | 265 +++---
 .../consumer/ConsumeMessagePopOrderlyService.java  | 408 +++++++++
 .../impl/consumer/ConsumeMessageService.java       |   5 +
 .../impl/consumer/DefaultLitePullConsumerImpl.java |   8 +-
 .../impl/consumer/DefaultMQPushConsumerImpl.java   | 331 ++++++-
 .../client/impl/consumer/MessageQueueLock.java     |  29 +-
 ...sumeMessageService.java => MessageRequest.java} |  27 +-
 .../client/impl/consumer/PopProcessQueue.java      |  84 ++
 .../consumer/{PullRequest.java => PopRequest.java} |  71 +-
 .../client/impl/consumer/PullAPIWrapper.java       |  55 +-
 .../client/impl/consumer/PullMessageService.java   |  47 +-
 .../rocketmq/client/impl/consumer/PullRequest.java |   8 +-
 .../client/impl/consumer/RebalanceImpl.java        | 482 ++++++++--
 .../impl/consumer/RebalanceLitePullImpl.java       |  25 +-
 .../client/impl/consumer/RebalancePullImpl.java    |  26 +-
 .../client/impl/consumer/RebalancePushImpl.java    |  56 +-
 .../client/impl/factory/MQClientInstance.java      |  37 +-
 .../consumer/DefaultLitePullConsumerTest.java      |   8 +
 .../client/consumer/DefaultMQPushConsumerTest.java | 121 ++-
 .../rocketmq/client/impl/MQClientAPIImplTest.java  | 490 ++++++++++-
 .../consumer/DefaultMQPushConsumerImplTest.java    |  69 ++
 .../impl/consumer/RebalancePushImplTest.java       |  53 +-
 .../client/impl/factory/MQClientInstanceTest.java  |   1 +
 .../client/producer/DefaultMQProducerTest.java     |   5 +-
 .../powermock/extensions/configuration.properties  |  16 +
 .../org/apache/rocketmq/common/BrokerConfig.java   | 154 ++++
 .../org/apache/rocketmq/common/KeyBuilder.java     |  28 +-
 .../apache/rocketmq/common/PopAckConstants.java    |  28 +-
 .../rocketmq/common/constant/ConsumeInitMode.java  |  23 +-
 .../rocketmq/common/constant/LoggerName.java       |   1 +
 .../rocketmq/common/message/MessageConst.java      |   4 +
 .../rocketmq/common/message/MessageDecoder.java    |   2 +-
 .../common/message/MessageQueueAssignment.java     |  83 ++
 .../common/message/MessageRequestMode.java         |  30 +-
 .../rocketmq/common/protocol/RequestCode.java      |   7 +
 .../rocketmq/common/protocol/ResponseCode.java     |   3 +
 .../common/protocol/body/ConsumerRunningInfo.java  |  32 +
 .../common/protocol/body/PopProcessQueueInfo.java  |  59 ++
 .../protocol/body/QueryAssignmentRequestBody.java  |  74 ++
 .../protocol/body/QueryAssignmentResponseBody.java |  23 +-
 .../body/SetMessageRequestModeRequestBody.java     |  70 ++
 .../protocol/header/AckMessageRequestHeader.java   |  85 ++
 .../header/ChangeInvisibleTimeRequestHeader.java   |  97 +++
 .../header/ChangeInvisibleTimeResponseHeader.java  |  61 ++
 .../common/protocol/header/ExtraInfoUtil.java      | 258 ++++++
 .../protocol/header/PopMessageRequestHeader.java   | 155 ++++
 .../protocol/header/PopMessageResponseHeader.java  | 102 +++
 .../rocketmq/common/utils/DataConverter.java       |  31 +-
 distribution/conf/logback_broker.xml               |  29 +
 docs/en/Feature.md                                 |   7 +-
 example/pom.xml                                    |   4 +
 .../rocketmq/example/simple/PopPushConsumer.java   |  62 ++
 pom.xml                                            |   5 +
 .../rocketmq/remoting/common/RemotingHelper.java   |   9 +-
 .../apache/rocketmq/store/DefaultMessageStore.java |   3 +-
 .../apache/rocketmq/store/GetMessageResult.java    |  10 +
 .../org/apache/rocketmq/store/MessageStore.java    |   4 +-
 .../java/org/apache/rocketmq/store/pop/AckMsg.java |  87 ++
 .../apache/rocketmq/store/pop/PopCheckPoint.java   | 174 ++++
 .../store/schedule/ScheduleMessageService.java     |  20 +-
 .../rocketmq/test/client/rmq/RMQPopConsumer.java   |  33 +
 .../rocketmq/test/factory/ConsumerFactory.java     |  10 +
 .../rocketmq/test/base/IntegrationTestBase.java    |  13 +-
 .../consumer/balance/NormalMsgStaticBalanceIT.java |  18 +-
 .../test/client/consumer/pop/PopSubCheckIT.java    |  92 ++
 .../test/smoke/NormalMessageSendAndRecvIT.java     |   6 +
 .../rocketmq/tools/admin/DefaultMQAdminExt.java    |  15 +-
 .../tools/admin/DefaultMQAdminExtImpl.java         |  20 +-
 .../apache/rocketmq/tools/admin/MQAdminExt.java    |  30 +-
 .../rocketmq/tools/command/MQAdminStartup.java     |   4 +-
 .../command/consumer/SetConsumeModeSubCommand.java | 135 +++
 105 files changed, 9560 insertions(+), 610 deletions(-)