You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by ji...@apache.org on 2022/03/08 11:41:36 UTC

[rocketmq] branch 5.0.0-beta updated (56d2087 -> 3fe493e)

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

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


    from 56d2087  [maven-release-plugin] prepare for next development iteration
     add 35c95eb  prepare to release rocketmq 4.9.3 version
     add c7989f8  [maven-release-plugin] prepare release rocketmq-all-4.9.3
     add b606d9c  [maven-release-plugin] prepare for next development iteration
     add 799d412  fix validate fail after update acl (#3888)
     add 7281b5d  [ISSUE #3898]fix the spell in MQClientAPIImpl (#3899)
     add 42d1565  [ISSUE #3890] add 'brokerAddress' param for ConsumerConnectionSubCommand (#3891)
     add 11026c2  Remove unnecessary Exception thrown by MQClientAPIImpl#createSubscriptionGroup (#3880)
     add 7438dab  Fix testTruncateCQ on Windows by releasing mapped files. (#3865)
     add 81677c7  [ISSUE #3859] enhance the cal of latency for putting message (#3862)
     add 9226395  Fix #3911 (#3912)
     add 19f99a5  [ISSUE #3875]  fix unable to delete last acl account. (#3876)
     add 7276cf9  readme add rocketmq dashboard link (#3919)
     add b6b5326  readme add rocketmq connect link (#3916)
     add 3ccf651  fix that wrong dir is creaed when using mult-dirs storage (#3901)
     add 5ae4a10  [#3903] Add topic validation, forbid sending message to system topic  (#3904)
     add 5270053  fix some docs error (#3926)
     add 5b89519  [ISSUE #3896] fix log format error (#3897)
     add 6197ebd  Improve Issue Template (#3932)
     add 2987e1d  Add language code for Rust (#3931)
     add 7a5d937  [Issue #3922] Fix bugs in ACL modification (#3927)
     add febc083  [ISSUE #3561] Optimize consuming messages with namespace example
     add 446b76b  typo: best_practice.md (#3939)
     new 3fe493e  Merge branch 'develop' into 5.0.0-beta

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:
 .github/ISSUE_TEMPLATE/issue_template.md           |  23 +-
 README.md                                          |   2 +
 .../rocketmq/acl/plain/PlainAccessValidator.java   |   9 -
 .../rocketmq/acl/plain/PlainPermissionManager.java | 140 ++++----
 .../acl/plain/PlainAccessControlFlowTest.java      | 396 +++++++++++++++++++++
 .../acl/plain/PlainAccessValidatorTest.java        |  60 +++-
 .../conf/acl/plain_acl.yml                         |   7 +-
 .../conf/plain_acl.yml}                            |   5 +-
 .../conf/plain_acl.yml}                            |   5 +-
 .../conf/acl/plain_acl.yml                         |   7 +-
 .../rocketmq/client/impl/MQClientAPIImpl.java      |   7 +-
 .../ConsumeMessageConcurrentlyService.java         |   2 +-
 .../client/common/ThreadLocalIndexTest.java        |   2 +-
 .../rocketmq/common/topic/TopicValidator.java      |   5 +
 distribution/conf/{acl => }/plain_acl.yml          |   0
 docs/cn/Deployment.md                              |  12 +-
 docs/cn/best_practice.md                           |   2 +-
 .../namespace/PushConsumerWithNamespace.java       |   2 +-
 .../rocketmq/remoting/protocol/LanguageCode.java   |   3 +-
 .../remoting/protocol/LanguageCodeTest.java}       |  20 +-
 .../apache/rocketmq/store/StoreStatsService.java   |  74 +++-
 .../rocketmq/store/logfile/DefaultMappedFile.java  |  20 +-
 .../rocketmq/store/StoreStatsServiceTest.java      |  13 +
 .../org/apache/rocketmq/store/StoreTestUtil.java   |  15 +
 .../store/dledger/DLedgerCommitlogTest.java        |   5 +
 .../rocketmq/tools/admin/DefaultMQAdminExt.java    |   7 +
 .../tools/admin/DefaultMQAdminExtImpl.java         |  15 +
 .../apache/rocketmq/tools/admin/MQAdminExt.java    |   4 +
 .../connection/ConsumerConnectionSubCommand.java   |   8 +-
 .../command/consumer/ConsumerStatusSubCommand.java |   8 +-
 .../tools/admin/DefaultMQAdminExtTest.java         |   4 +
 31 files changed, 754 insertions(+), 128 deletions(-)
 create mode 100644 acl/src/test/java/org/apache/rocketmq/acl/plain/PlainAccessControlFlowTest.java
 copy acl/src/test/resources/{ => both_acl_file_folder_conf}/conf/acl/plain_acl.yml (94%)
 copy acl/src/test/resources/{conf/plain_acl_with_no_accouts.yml => both_acl_file_folder_conf/conf/plain_acl.yml} (96%)
 copy acl/src/test/resources/{conf/plain_acl_with_no_accouts.yml => empty_acl_folder_conf/conf/plain_acl.yml} (94%)
 copy acl/src/test/resources/{ => only_acl_folder_conf}/conf/acl/plain_acl.yml (94%)
 rename distribution/conf/{acl => }/plain_acl.yml (100%)
 copy remoting/src/{main/java/org/apache/rocketmq/remoting/protocol/RemotingSysResponseCode.java => test/java/org/apache/rocketmq/remoting/protocol/LanguageCodeTest.java} (68%)

[rocketmq] 01/01: Merge branch 'develop' into 5.0.0-beta

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

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

commit 3fe493ec01c64fe714a267565f4e13016ea9c3f6
Merge: 56d2087 446b76b
Author: RongtongJin <ji...@mails.ucas.ac.cn>
AuthorDate: Tue Mar 8 19:37:53 2022 +0800

    Merge branch 'develop' into 5.0.0-beta
    
    # Conflicts:
    #	acl/pom.xml
    #	broker/pom.xml
    #	client/pom.xml
    #	common/pom.xml
    #	common/src/main/java/org/apache/rocketmq/common/MQVersion.java
    #	distribution/pom.xml
    #	example/pom.xml
    #	filter/pom.xml
    #	logging/pom.xml
    #	namesrv/pom.xml
    #	openmessaging/pom.xml
    #	pom.xml
    #	remoting/pom.xml
    #	srvutil/pom.xml
    #	store/pom.xml
    #	store/src/test/java/org/apache/rocketmq/store/dledger/DLedgerCommitlogTest.java
    #	test/pom.xml
    #	tools/pom.xml

 .github/ISSUE_TEMPLATE/issue_template.md           |  23 +-
 README.md                                          |   2 +
 .../rocketmq/acl/plain/PlainAccessValidator.java   |   9 -
 .../rocketmq/acl/plain/PlainPermissionManager.java | 140 ++++----
 .../acl/plain/PlainAccessControlFlowTest.java      | 396 +++++++++++++++++++++
 .../acl/plain/PlainAccessValidatorTest.java        |  60 +++-
 .../conf/acl/plain_acl.yml                         |  11 +-
 .../both_acl_file_folder_conf/conf}/plain_acl.yml  |  25 +-
 .../empty_acl_folder_conf/conf}/plain_acl.yml      |  25 +-
 .../only_acl_folder_conf}/conf/acl/plain_acl.yml   |  11 +-
 .../rocketmq/client/impl/MQClientAPIImpl.java      |   7 +-
 .../ConsumeMessageConcurrentlyService.java         |   2 +-
 .../client/common/ThreadLocalIndexTest.java        |   2 +-
 .../rocketmq/common/topic/TopicValidator.java      |   5 +
 distribution/conf/{acl => }/plain_acl.yml          |   0
 docs/cn/Deployment.md                              |  12 +-
 docs/cn/best_practice.md                           |   2 +-
 .../namespace/PushConsumerWithNamespace.java       |   2 +-
 .../rocketmq/remoting/protocol/LanguageCode.java   |   3 +-
 .../remoting/protocol/LanguageCodeTest.java        |  26 +-
 .../apache/rocketmq/store/StoreStatsService.java   |  74 +++-
 .../rocketmq/store/logfile/DefaultMappedFile.java  |  20 +-
 .../rocketmq/store/StoreStatsServiceTest.java      |  13 +
 .../org/apache/rocketmq/store/StoreTestUtil.java   |  15 +
 .../store/dledger/DLedgerCommitlogTest.java        |   5 +
 .../rocketmq/tools/admin/DefaultMQAdminExt.java    |   7 +
 .../tools/admin/DefaultMQAdminExtImpl.java         |  15 +
 .../apache/rocketmq/tools/admin/MQAdminExt.java    |   4 +
 .../connection/ConsumerConnectionSubCommand.java   |   8 +-
 .../command/consumer/ConsumerStatusSubCommand.java |   8 +-
 .../tools/admin/DefaultMQAdminExtTest.java         |   4 +
 31 files changed, 757 insertions(+), 179 deletions(-)

diff --cc client/src/main/java/org/apache/rocketmq/client/impl/MQClientAPIImpl.java
index d7f1652,e7e805d..09599d2
--- a/client/src/main/java/org/apache/rocketmq/client/impl/MQClientAPIImpl.java
+++ b/client/src/main/java/org/apache/rocketmq/client/impl/MQClientAPIImpl.java
@@@ -272,37 -247,8 +272,36 @@@ public class MQClientAPIImpl 
          this.remotingClient.shutdown();
      }
  
 +    public Set<MessageQueueAssignment> queryAssignment(final String addr, final String topic,
 +        final String consumerGroup, final String clientId, final String strategyName,
 +        final MessageModel messageModel, final long timeoutMillis)
 +        throws RemotingException, MQBrokerException, InterruptedException {
 +        QueryAssignmentRequestBody requestBody = new QueryAssignmentRequestBody();
 +        requestBody.setTopic(topic);
 +        requestBody.setConsumerGroup(consumerGroup);
 +        requestBody.setClientId(clientId);
 +        requestBody.setMessageModel(messageModel);
 +        requestBody.setStrategyName(strategyName);
 +
 +        RemotingCommand request = RemotingCommand.createRequestCommand(RequestCode.QUERY_ASSIGNMENT, null);
 +        request.setBody(requestBody.encode());
 +
 +        RemotingCommand response = this.remotingClient.invokeSync(MixAll.brokerVIPChannel(this.clientConfig.isVipChannelEnabled(), addr),
 +            request, timeoutMillis);
 +        switch (response.getCode()) {
 +            case ResponseCode.SUCCESS: {
 +                QueryAssignmentResponseBody queryAssignmentResponseBody = QueryAssignmentResponseBody.decode(response.getBody(), QueryAssignmentResponseBody.class);
 +                return queryAssignmentResponseBody.getMessageQueueAssignments();
 +            }
 +            default:
 +                break;
 +        }
 +
 +        throw new MQBrokerException(response.getCode(), response.getRemark());
 +    }
 +
      public void createSubscriptionGroup(final String addr, final SubscriptionGroupConfig config,
-         final long timeoutMillis)
-         throws RemotingException, MQBrokerException, InterruptedException, MQClientException {
+         final long timeoutMillis) throws RemotingException, InterruptedException, MQClientException {
          RemotingCommand request = RemotingCommand.createRequestCommand(RequestCode.UPDATE_AND_CREATE_SUBSCRIPTIONGROUP, null);
  
          byte[] body = RemotingSerializable.encode(config);
@@@ -672,11 -617,11 +671,11 @@@
              String retryBrokerName = brokerName;//by default, it will send to the same broker
              if (topicPublishInfo != null) { //select one message queue accordingly, in order to determine which broker to send
                  MessageQueue mqChosen = producer.selectOneMessageQueue(topicPublishInfo, brokerName);
 -                retryBrokerName = mqChosen.getBrokerName();
 +                retryBrokerName = instance.getBrokerNameFromMessageQueue(mqChosen);
              }
              String addr = instance.findBrokerAddressInPublish(retryBrokerName);
-             log.warn(String.format("async send msg by retry {} times. topic={}, brokerAddr={}, brokerName={}", tmp, msg.getTopic(), addr,
-                 retryBrokerName), e);
+             log.warn("async send msg by retry {} times. topic={}, brokerAddr={}, brokerName={}", tmp, msg.getTopic(), addr,
+                 retryBrokerName, e);
              try {
                  request.setOpaque(RemotingCommand.createNewRequestId());
                  sendMessageAsync(addr, retryBrokerName, msg, timeoutMillis, request, sendCallback, topicPublishInfo, instance,
diff --cc store/src/main/java/org/apache/rocketmq/store/logfile/DefaultMappedFile.java
index a8ea1c6,b46e7ca..4d4830b
--- a/store/src/main/java/org/apache/rocketmq/store/logfile/DefaultMappedFile.java
+++ b/store/src/main/java/org/apache/rocketmq/store/logfile/DefaultMappedFile.java
@@@ -36,15 -36,10 +36,16 @@@ import org.apache.rocketmq.common.const
  import org.apache.rocketmq.logging.InternalLogger;
  import org.apache.rocketmq.logging.InternalLoggerFactory;
  import org.apache.rocketmq.common.message.MessageExt;
 -import org.apache.rocketmq.common.message.MessageExtBatch;
 -import org.apache.rocketmq.store.CommitLog.PutMessageContext;
 +import org.apache.rocketmq.store.AppendMessageCallback;
 +import org.apache.rocketmq.store.AppendMessageResult;
 +import org.apache.rocketmq.store.AppendMessageStatus;
 +import org.apache.rocketmq.store.MessageExtBatch;
 +import org.apache.rocketmq.store.MessageExtBrokerInner;
 +import org.apache.rocketmq.store.PutMessageContext;
 +import org.apache.rocketmq.store.SelectMappedBufferResult;
 +import org.apache.rocketmq.store.TransientStorePool;
  import org.apache.rocketmq.store.config.FlushDiskType;
+ import org.apache.rocketmq.store.config.MessageStoreConfig;
  import org.apache.rocketmq.store.util.LibC;
  import sun.nio.ch.DirectBuffer;
  
diff --cc store/src/test/java/org/apache/rocketmq/store/dledger/DLedgerCommitlogTest.java
index 1c0e54c,0e3e01d..89801d5
--- a/store/src/test/java/org/apache/rocketmq/store/dledger/DLedgerCommitlogTest.java
+++ b/store/src/test/java/org/apache/rocketmq/store/dledger/DLedgerCommitlogTest.java
@@@ -40,9 -39,8 +40,11 @@@ import org.apache.rocketmq.store.PutMes
  import org.junit.Assert;
  import org.junit.Test;
  
 +import static java.util.concurrent.TimeUnit.SECONDS;
 +import static org.awaitility.Awaitility.await;
 +
+ import static org.apache.rocketmq.store.StoreTestUtil.releaseMmapFilesOnWindows;
+ 
  public class DLedgerCommitlogTest extends MessageStoreTestBase {
  
  
@@@ -367,9 -368,10 +371,10 @@@
  
  
          DefaultMessageStore followerStore = createDledgerMessageStore(createBaseDir(), group, "n1", peers, "n0", false, 0);
 -        Thread.sleep(2000);
 +        await().atMost(10, SECONDS).until(followerCatchesUp(followerStore, topic));
  
          Assert.assertEquals(1, leaderStore.getMaxOffsetInQueue(topic, 0));
+         Assert.assertEquals(1, followerStore.getMaxOffsetInQueue(topic, 0));
          Assert.assertTrue(leaderStore.getCommitLog().getMaxOffset() > 0);