This is an automated email from the ASF dual-hosted git repository. tigerlee pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/rocketmq.git
commit 2622ba3a7f77476303c21405cb7da46f73907599 Merge: 1b420ce b606d9c Author: tigerweili <[email protected]> AuthorDate: Sun Feb 27 13:46:55 2022 +0800 Merge branch 'develop' .travis.yml | 13 +- README.md | 22 +- acl/pom.xml | 2 +- .../org/apache/rocketmq/acl/AccessValidator.java | 13 + .../org/apache/rocketmq/acl/common/AclUtils.java | 2 +- .../rocketmq/acl/plain/PlainAccessValidator.java | 19 +- .../rocketmq/acl/plain/PlainPermissionManager.java | 427 +++++++++--- .../acl/plain/RemoteAddressStrategyFactory.java | 4 +- .../apache/rocketmq/acl/common/AclUtilsTest.java | 13 +- .../acl/plain/PlainAccessValidatorTest.java | 739 ++++++++++++++------- .../acl/plain/PlainPermissionManagerTest.java | 59 +- .../plain_acl.yml} | 32 +- acl/src/test/resources/conf/plain_acl_null.yml | 18 - broker/pom.xml | 6 +- .../apache/rocketmq/broker/BrokerController.java | 39 +- .../rocketmq/broker/BrokerPathConfigHelper.java | 4 + .../org/apache/rocketmq/broker/BrokerStartup.java | 16 +- .../broker/filter/ConsumerFilterManager.java | 17 +- .../broker/filter/MessageEvaluationContext.java | 5 +- .../longpolling/LmqPullRequestHoldService.java | 62 ++ .../broker/longpolling/ManyPullRequest.java | 4 + .../broker/longpolling/PullRequestHoldService.java | 10 +- .../broker/offset/ConsumerOffsetManager.java | 6 +- .../broker/offset/LmqConsumerOffsetManager.java | 109 +++ .../broker/plugin/AbstractPluginMessageStore.java | 539 +++++++-------- .../processor/AbstractSendMessageProcessor.java | 3 +- .../broker/processor/AdminBrokerProcessor.java | 8 + .../broker/processor/PullMessageProcessor.java | 2 +- .../broker/processor/SendMessageProcessor.java | 18 +- .../subscription/LmqSubscriptionGroupManager.java | 46 ++ .../broker/topic/LmqTopicConfigManager.java | 49 ++ .../rocketmq/broker/topic/TopicConfigManager.java | 6 +- .../queue/TransactionalMessageBridge.java | 8 +- .../queue/TransactionalMessageServiceImpl.java | 4 +- .../rocketmq/broker/BrokerControllerTest.java | 33 + .../broker/BrokerPathConfigHelperTest.java | 42 ++ .../broker/filter/MessageStoreWithFilterTest.java | 2 +- .../offset/LmqConsumerOffsetManagerTest.java | 81 +++ .../broker/processor/AdminBrokerProcessorTest.java | 264 ++++++++ .../broker/processor/SendMessageProcessorTest.java | 4 +- client/pom.xml | 22 +- .../org/apache/rocketmq/client/ClientConfig.java | 12 +- .../java/org/apache/rocketmq/client/MQHelper.java | 1 + .../org/apache/rocketmq/client/Validators.java | 52 +- .../client/consumer/DefaultMQPullConsumer.java | 1 + .../client/consumer/DefaultMQPushConsumer.java | 5 +- .../rebalance/AllocateMachineRoomNearby.java | 7 +- .../AllocateMessageQueueByMachineRoom.java | 11 + .../consumer/store/LocalFileOffsetStore.java | 11 +- .../consumer/store/RemoteBrokerOffsetStore.java | 8 +- .../client/impl/ClientRemotingProcessor.java | 6 +- .../apache/rocketmq/client/impl/MQAdminImpl.java | 5 +- .../rocketmq/client/impl/MQClientAPIImpl.java | 151 +++-- .../ConsumeMessageConcurrentlyService.java | 14 +- .../consumer/ConsumeMessageOrderlyService.java | 14 +- .../impl/consumer/DefaultLitePullConsumerImpl.java | 4 +- .../client/impl/consumer/ProcessQueue.java | 12 +- .../client/impl/factory/MQClientInstance.java | 43 +- .../impl/producer/DefaultMQProducerImpl.java | 73 +- .../client/producer/DefaultMQProducer.java | 1 - .../client/producer/LocalTransactionExecuter.java | 2 +- ...stFutureTable.java => RequestFutureHolder.java} | 54 +- .../client/producer/TransactionCheckListener.java | 3 +- .../rocketmq/client/trace/TraceDataEncoder.java | 5 +- .../hook/ConsumeMessageOpenTracingHookImpl.java | 2 +- .../org/apache/rocketmq/client/ValidatorsTest.java | 2 +- .../consumer/DefaultLitePullConsumerTest.java | 19 +- .../client/consumer/DefaultMQPushConsumerTest.java | 31 +- .../AllocateMessageQueueAveragelyByCircleTest.java | 68 ++ .../AllocateMessageQueueAveragelyTest.java | 57 ++ .../store/RemoteBrokerOffsetStoreTest.java | 3 +- .../rocketmq/client/impl/MQClientAPIImplTest.java | 36 +- .../ConsumeMessageConcurrentlyServiceTest.java | 59 +- .../consumer/ConsumeMessageOrderlyServiceTest.java | 177 +++++ .../impl/consumer/RebalanceLitePullImplTest.java | 100 +++ .../impl/consumer/RebalancePushImplTest.java | 74 ++- .../client/producer/DefaultMQProducerTest.java | 11 +- .../DefaultMQConsumerWithOpenTracingTest.java | 30 +- .../trace/DefaultMQConsumerWithTraceTest.java | 7 +- .../DefaultMQLitePullConsumerWithTraceTest.java | 1 - .../client/trace/TraceDataEncoderTest.java | 33 +- .../trace/TransactionMQProducerWithTraceTest.java | 36 +- common/pom.xml | 2 +- .../org/apache/rocketmq/common/BrokerConfig.java | 41 ++ .../org/apache/rocketmq/common/Configuration.java | 19 +- .../java/org/apache/rocketmq/common/MQVersion.java | 2 +- .../java/org/apache/rocketmq/common/MixAll.java | 5 + .../java/org/apache/rocketmq/common/UtilAll.java | 14 + .../common/message/MessageClientIDSetter.java | 27 +- .../rocketmq/common/message/MessageConst.java | 5 +- .../rocketmq/common/message/MessageDecoder.java | 5 +- .../apache/rocketmq/common/message/MessageExt.java | 4 + .../protocol/body/ClusterAclVersionInfo.java | 15 +- .../common/protocol/body/ConsumerRunningInfo.java | 8 +- .../header/GetBrokerAclConfigResponseHeader.java | 10 + ...va => DeleteTopicFromNamesrvRequestHeader.java} | 2 +- .../rocketmq/common/sysflag/TopicSysFlag.java | 3 - .../rocketmq/common/topic/TopicValidator.java | 47 +- .../org/apache/rocketmq/common/MixAllTest.java | 12 + .../common/message/MessageClientIDSetterTest.java | 22 + distribution/NOTICE-BIN | 2 +- distribution/benchmark/runclass.sh | 3 +- distribution/bin/runbroker.cmd | 3 +- distribution/bin/runbroker.sh | 25 +- distribution/bin/runserver.cmd | 3 +- distribution/bin/runserver.sh | 3 +- distribution/bin/tools.cmd | 3 +- distribution/bin/tools.sh | 3 +- distribution/conf/{ => acl}/plain_acl.yml | 44 +- distribution/conf/logback_broker.xml | 48 +- distribution/pom.xml | 2 +- docs/cn/Example_LMQ.md | 85 +++ ...Multiple_ACL_Files_\350\256\276\350\256\241.md" | 137 ++++ docs/cn/architecture.md | 6 +- docs/cn/best_practice.md | 6 +- .../java/API_Reference_ DefaultPullConsumer.md | 143 ++++ .../client/java/API_Reference_DefaultMQProducer.md | 26 +- docs/cn/design.md | 2 +- docs/cn/image/LMQ_1.png | Bin 0 -> 304040 bytes docs/en/CLITools.md | 6 +- docs/en/Configuration_Client.md | 16 +- docs/en/Design_Query.md | 6 +- docs/en/Example_Transaction.md | 10 +- docs/en/best_practice.md | 79 +++ example/pom.xml | 2 +- .../rocketmq/example/benchmark/AclClient.java | 12 +- .../rocketmq/example/benchmark/Consumer.java | 15 +- .../rocketmq/example/benchmark/Producer.java | 15 +- .../example/benchmark/TransactionProducer.java | 17 +- .../rocketmq/example/ordermessage/Consumer.java | 4 - .../rocketmq/example/quickstart/Consumer.java | 4 +- .../example/schedule/ScheduledMessageConsumer.java | 51 ++ .../example/schedule/ScheduledMessageProducer.java | 41 ++ .../rocketmq/example/simple/OnewayProducer.java | 45 ++ .../rocketmq/example/simple/PullConsumer.java | 2 +- example/src/main/resources/MessageFilterImpl.java | 39 -- filter/pom.xml | 2 +- logappender/pom.xml | 80 --- .../logappender/common/ProducerInstance.java | 97 --- .../logappender/log4j/RocketmqLog4jAppender.java | 189 ------ .../logappender/log4j2/RocketmqLog4j2Appender.java | 226 ------- .../logback/RocketmqLogbackAppender.java | 179 ----- .../rocketmq/logappender/AbstractTestCase.java | 72 -- .../rocketmq/logappender/Log4jPropertiesTest.java | 32 - .../apache/rocketmq/logappender/Log4jXmlTest.java | 32 - .../apache/rocketmq/logappender/LogbackTest.java | 52 -- .../apache/rocketmq/logappender/log4j2Test.java | 44 -- .../src/test/resources/log4j-example.properties | 33 - logappender/src/test/resources/log4j-example.xml | 56 -- logappender/src/test/resources/log4j2-example.xml | 41 -- logappender/src/test/resources/logback-example.xml | 81 --- logging/pom.xml | 2 +- .../rocketmq/logging/inner/LoggingBuilder.java | 2 +- .../rocketmq/logging/inner/LoggingEvent.java | 3 + namesrv/pom.xml | 6 +- .../apache/rocketmq/namesrv/NamesrvStartup.java | 2 +- .../namesrv/processor/DefaultRequestProcessor.java | 6 +- .../processor/DefaultRequestProcessorTest.java | 149 ++++- openmessaging/pom.xml | 2 +- .../io/openmessaging/rocketmq/utils/BeanUtils.java | 9 +- pom.xml | 20 +- remoting/pom.xml | 2 +- .../rocketmq/remoting/common/RemotingHelper.java | 31 +- .../rocketmq/remoting/common/RemotingUtil.java | 9 +- .../rocketmq/remoting/netty/NettyClientConfig.java | 19 + .../remoting/netty/NettyRemotingAbstract.java | 5 +- .../remoting/netty/NettyRemotingClient.java | 21 +- .../remoting/netty/NettyRemotingServer.java | 19 +- .../rocketmq/remoting/netty/NettyServerConfig.java | 27 + .../rocketmq/remoting/netty/NettySystemConfig.java | 17 +- .../remoting/protocol/RemotingCommand.java | 10 +- .../remoting/protocol/RocketMQSerializable.java | 9 +- .../remoting/netty/NettyServerConfigTest.java | 35 +- .../remoting/protocol/RemotingCommandTest.java | 60 +- .../protocol/RocketMQSerializableTest.java | 74 ++- srvutil/pom.xml | 2 +- .../rocketmq/srvutil/AclFileWatchService.java | 162 +++++ .../org/apache/rocketmq/srvutil/ServerUtil.java | 2 +- store/pom.xml | 4 +- .../java/org/apache/rocketmq/store/CommitLog.java | 122 ++-- .../apache/rocketmq/store/CommitLogDispatcher.java | 4 + .../org/apache/rocketmq/store/ConsumeQueue.java | 56 +- .../apache/rocketmq/store/DefaultMessageStore.java | 146 +++- .../apache/rocketmq/store/FlushDiskWatcher.java | 78 +++ .../java/org/apache/rocketmq/store/MappedFile.java | 10 +- .../org/apache/rocketmq/store/MappedFileQueue.java | 4 +- .../rocketmq/store/MessageArrivingListener.java | 11 + .../org/apache/rocketmq/store/MessageStore.java | 10 + .../org/apache/rocketmq/store/MultiDispatch.java | 157 +++++ .../apache/rocketmq/store/PutMessageStatus.java | 1 + .../apache/rocketmq/store/StoreStatsService.java | 70 +- .../rocketmq/store/config/MessageStoreConfig.java | 65 ++ .../rocketmq/store/dledger/DLedgerCommitLog.java | 4 +- .../org/apache/rocketmq/store/ha/HAConnection.java | 15 +- .../org/apache/rocketmq/store/ha/HAService.java | 9 +- .../store/schedule/ScheduleMessageService.java | 643 ++++++++++++++---- .../rocketmq/store/stats/BrokerStatsManager.java | 109 ++- .../store/stats/LmqBrokerStatsManager.java | 120 ++++ .../apache/rocketmq/store/BatchPutMessageTest.java | 4 +- .../apache/rocketmq/store/ConsumeQueueTest.java | 141 +++- .../store/DefaultMessageStoreCleanFilesTest.java | 2 +- .../store/DefaultMessageStoreShutDownTest.java | 2 +- .../rocketmq/store/DefaultMessageStoreTest.java | 18 +- .../rocketmq/store/FlushDiskWatcherTest.java | 84 +++ .../java/org/apache/rocketmq/store/HATest.java | 2 +- .../apache/rocketmq/store/MultiDispatchTest.java | 98 +++ .../rocketmq/store/ScheduleMessageServiceTest.java | 118 +++- .../store/dledger/MessageStoreTestBase.java | 4 +- .../store/schedule/ScheduleMessageServiceTest.java | 2 +- .../test/java/stats/BrokerStatsManagerTest.java | 2 +- test/pom.xml | 23 +- .../rocketmq/test/lmq/benchmark/BenchLmqStore.java | 305 +++++++++ .../rocketmq/test/message/MessageQueueMsg.java | 8 +- .../org/apache/rocketmq/test/util/FileUtil.java | 7 +- .../org/apache/rocketmq/test/util/MQAdmin.java | 9 +- .../org/apache/rocketmq/test/util/StatUtil.java | 478 +++++++++++++ .../org/apache/rocketmq/test/base/BaseConf.java | 7 +- .../producer/exception/msg/MessageExceptionIT.java | 2 +- .../client/producer/querymsg/QueryMsgByKeyIT.java | 57 ++ .../rocketmq/test/delay/NormalMsgDelayIT.java | 2 +- .../rocketmq/test/lmq/TestBenchLmqStore.java | 100 +++ tools/pom.xml | 6 +- .../rocketmq/tools/admin/DefaultMQAdminExt.java | 2 +- .../tools/admin/DefaultMQAdminExtImpl.java | 4 +- .../apache/rocketmq/tools/command/CommandUtil.java | 7 +- .../rocketmq/tools/command/MQAdminStartup.java | 2 + .../acl/ClusterAclConfigVersionListSubCommand.java | 32 +- .../broker/BrokerConsumeStatsSubCommad.java | 6 +- .../command/broker/CleanUnusedTopicCommand.java | 2 +- .../command/broker/GetBrokerConfigCommand.java | 22 +- .../connection/ConsumerConnectionSubCommand.java | 14 +- .../consumer/ConsumerProgressSubCommand.java | 18 +- .../consumer/GetConsumerConfigSubCommand.java | 10 +- .../tools/command/export/ExportConfigsCommand.java | 7 +- .../command/export/ExportMetadataCommand.java | 73 +- .../command/namesrv/GetNamesrvConfigCommand.java | 10 +- .../command/offset/CloneGroupOffsetCommand.java | 2 +- .../command/offset/ResetOffsetByTimeCommand.java | 2 +- ...ommand.java => SkipAccumulationSubCommand.java} | 61 +- .../command/queue/QueryConsumeQueueCommand.java | 6 +- .../tools/command/stats/StatsAllSubCommand.java | 12 +- .../tools/command/topic/TopicListSubCommand.java | 6 +- .../command/broker/BrokerStatusSubCommandTest.java | 68 +- .../broker/CleanExpiredCQSubCommandTest.java | 56 +- .../broker/CleanUnusedTopicCommandTest.java | 56 +- .../command/broker/GetBrokerConfigCommandTest.java | 73 +- .../broker/UpdateBrokerConfigSubCommandTest.java | 52 +- .../ConsumerConnectionSubCommandTest.java | 87 +-- .../ProducerConnectionSubCommandTest.java | 80 +-- .../consumer/ConsumerProgressSubCommandTest.java | 103 ++- .../consumer/ConsumerStatusSubCommandTest.java | 113 +--- .../consumer/GetConsumerConfigSubCommandTest.java | 104 +-- .../command/message/ConsumeMessageCommandTest.java | 43 +- .../message/QueryMsgByUniqueKeySubCommandTest.java | 6 +- .../message/QueryMsgTraceByIdSubCommandTest.java | 126 ++-- .../namesrv/AddWritePermSubCommandTest.java | 38 ++ .../namesrv/GetNamesrvConfigCommandTest.java | 77 +-- .../command/namesrv/UpdateKvConfigCommandTest.java | 56 +- .../namesrv/WipeWritePermSubCommandTest.java | 82 +-- .../offset/GetConsumerStatusCommandTest.java | 70 +- .../offset/ResetOffsetByTimeCommandTest.java | 88 +-- .../SkipAccumulationCommandTest.java} | 16 +- .../tools/command/server/NameServerMocker.java | 67 ++ .../tools/command/server/ServerResponseMocker.java | 153 +++++ 264 files changed, 8195 insertions(+), 3921 deletions(-)
