Uploaded image for project: 'Apache RocketMQ'
  1. Apache RocketMQ
  2. ROCKETMQ-101

Possible NullPointerException when retry in send Async way

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.1.0-incubating
    • Component/s: rocketmq-client
    • Labels:
      None

      Description

      When retry async send, possible NPE will occure:

      java.lang.NullPointerException: null
      at com.alibaba.rocketmq.client.latency.MQFaultStrategy.selectOneMessageQueue(MQFaultStrategy.java:91) ~[classes/:na]
      at com.alibaba.rocketmq.client.impl.producer.DefaultMQProducerImpl.selectOneMessageQueue(DefaultMQProducerImpl.java:404) ~[classes/:na]
      at com.alibaba.rocketmq.client.impl.MQClientAPIImpl.onExceptionImpl(MQClientAPIImpl.java:385) ~[classes/:na]
      at com.alibaba.rocketmq.client.impl.MQClientAPIImpl.access$100(MQClientAPIImpl.java:72) ~[classes/:na]
      at com.alibaba.rocketmq.client.impl.MQClientAPIImpl$1.operationComplete(MQClientAPIImpl.java:356) ~[classes/:na]
      at com.alibaba.rocketmq.remoting.netty.ResponseFuture.executeInvokeCallback(ResponseFuture.java:58) ~[classes/:na]
      at com.alibaba.rocketmq.remoting.netty.NettyRemotingAbstract.scanResponseTable(NettyRemotingAbstract.java:255) ~[classes/:na]
      at com.alibaba.rocketmq.remoting.netty.NettyRemotingClient$5.run(NettyRemotingClient.java:165) [classes/:na]
      at java.util.TimerThread.mainLoop(Timer.java:555) [na:1.7.0_80]
      at java.util.TimerThread.run(Timer.java:505) [na:1.7.0_80]

      The problem is : when selectOneMessageQueue in MQFaultStrategy, the topicPublishInfo which is just passed from sendKernelImpl, will be possiblly null, which causes NPE.

      There are some places where sendKernelImpl wii have null TopicPublishInfo, for example :

      private SendResult sendSelectImpl(//
                                            Message msg, //
                                            MessageQueueSelector selector, //
                                            Object arg, //
                                            final CommunicationMode communicationMode, //
                                            final SendCallback sendCallback, final long timeout//
          ) throws MQClientException, RemotingException, MQBrokerException, InterruptedException {
                  this.makeSureStateOK();
                  Validators.checkMessage(msg, this.defaultMQProducer);
      
                  TopicPublishInfo topicPublishInfo = this.tryToFindTopicPublishInfo(msg.getTopic());
                  if (topicPublishInfo != null && topicPublishInfo.ok()) {
                      MessageQueue mq = null;
                      try {
                          mq = selector.select(topicPublishInfo.getMessageQueueList(), msg, arg);
                      } catch (Throwable e) {
                          throw new MQClientException("select message queue throws exception.", e);
                      }
      
                       if (mq != null) {
                           return this.sendKernelImpl(msg, mq, communicationMode, sendCallback, null, timeout);//here, the topicroutinfo is null, which has the risk of NPE
                       } else {
                           throw new MQClientException("select message queue return null.", null);
                      }   
                  }
      
                   throw new MQClientException("No route info for this topic, " + msg.getTopic(), null);
              }
      

      Though I find out the bug in 3.5.8, the same issue exists in 4.0 since the relative code is the same

      This NPE will make retry fail, and even ,onException callback fail to be called.

        Issue Links

          Activity

          Hide
          githubbot ASF GitHub Bot added a comment -

          GitHub user Jaskey opened a pull request:

          https://github.com/apache/incubator-rocketmq/pull/63

          ROCKETMQ-101Fix possible NullPointerException when retry in send Async way

          JIRA: https://issues.apache.org/jira/browse/ROCKETMQ-101

          You can merge this pull request into a Git repository by running:

          $ git pull https://github.com/Jaskey/incubator-rocketmq ROCKETMQ-101-NPE-when-retry

          Alternatively you can review and apply these changes as the patch at:

          https://github.com/apache/incubator-rocketmq/pull/63.patch

          To close this pull request, make a commit to your master/trunk branch
          with (at least) the following in the commit message:

          This closes #63


          commit 81baaf6a2165e2fb947aab56c1b03e7646f65b44
          Author: Jaskey <linjunjie1103@gmail.com>
          Date: 2017-02-15T14:17:47Z

          Fix possible NullPointerException when retry in send Async way


          Show
          githubbot ASF GitHub Bot added a comment - GitHub user Jaskey opened a pull request: https://github.com/apache/incubator-rocketmq/pull/63 ROCKETMQ-101 Fix possible NullPointerException when retry in send Async way JIRA: https://issues.apache.org/jira/browse/ROCKETMQ-101 You can merge this pull request into a Git repository by running: $ git pull https://github.com/Jaskey/incubator-rocketmq ROCKETMQ-101 -NPE-when-retry Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-rocketmq/pull/63.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #63 commit 81baaf6a2165e2fb947aab56c1b03e7646f65b44 Author: Jaskey <linjunjie1103@gmail.com> Date: 2017-02-15T14:17:47Z Fix possible NullPointerException when retry in send Async way
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user coveralls commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          [![Coverage Status](https://coveralls.io/builds/10175883/badge)](https://coveralls.io/builds/10175883)

          Coverage increased (+0.03%) to 31.549% when pulling *a8802d0b153e0f452d7147d0f70bc9cbf57e46de on Jaskey:ROCKETMQ-101-NPE-when-retry* into *573b22c37806a21543b90707bcce6022243a62da on apache:master*.

          Show
          githubbot ASF GitHub Bot added a comment - Github user coveralls commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 [! [Coverage Status] ( https://coveralls.io/builds/10175883/badge)](https://coveralls.io/builds/10175883 ) Coverage increased (+0.03%) to 31.549% when pulling * a8802d0b153e0f452d7147d0f70bc9cbf57e46de on Jaskey: ROCKETMQ-101 -NPE-when-retry * into * 573b22c37806a21543b90707bcce6022243a62da on apache:master *.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user coveralls commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          [![Coverage Status](https://coveralls.io/builds/10175866/badge)](https://coveralls.io/builds/10175866)

          Coverage increased (+0.09%) to 31.614% when pulling *a8802d0b153e0f452d7147d0f70bc9cbf57e46de on Jaskey:ROCKETMQ-101-NPE-when-retry* into *573b22c37806a21543b90707bcce6022243a62da on apache:master*.

          Show
          githubbot ASF GitHub Bot added a comment - Github user coveralls commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 [! [Coverage Status] ( https://coveralls.io/builds/10175866/badge)](https://coveralls.io/builds/10175866 ) Coverage increased (+0.09%) to 31.614% when pulling * a8802d0b153e0f452d7147d0f70bc9cbf57e46de on Jaskey: ROCKETMQ-101 -NPE-when-retry * into * 573b22c37806a21543b90707bcce6022243a62da on apache:master *.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user coveralls commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          [![Coverage Status](https://coveralls.io/builds/10175866/badge)](https://coveralls.io/builds/10175866)

          Coverage increased (+0.09%) to 31.614% when pulling *a8802d0b153e0f452d7147d0f70bc9cbf57e46de on Jaskey:ROCKETMQ-101-NPE-when-retry* into *573b22c37806a21543b90707bcce6022243a62da on apache:master*.

          Show
          githubbot ASF GitHub Bot added a comment - Github user coveralls commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 [! [Coverage Status] ( https://coveralls.io/builds/10175866/badge)](https://coveralls.io/builds/10175866 ) Coverage increased (+0.09%) to 31.614% when pulling * a8802d0b153e0f452d7147d0f70bc9cbf57e46de on Jaskey: ROCKETMQ-101 -NPE-when-retry * into * 573b22c37806a21543b90707bcce6022243a62da on apache:master *.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user coveralls commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          [![Coverage Status](https://coveralls.io/builds/10175866/badge)](https://coveralls.io/builds/10175866)

          Coverage increased (+0.09%) to 31.614% when pulling *a8802d0b153e0f452d7147d0f70bc9cbf57e46de on Jaskey:ROCKETMQ-101-NPE-when-retry* into *573b22c37806a21543b90707bcce6022243a62da on apache:master*.

          Show
          githubbot ASF GitHub Bot added a comment - Github user coveralls commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 [! [Coverage Status] ( https://coveralls.io/builds/10175866/badge)](https://coveralls.io/builds/10175866 ) Coverage increased (+0.09%) to 31.614% when pulling * a8802d0b153e0f452d7147d0f70bc9cbf57e46de on Jaskey: ROCKETMQ-101 -NPE-when-retry * into * 573b22c37806a21543b90707bcce6022243a62da on apache:master *.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user lizhanhui commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          This issue is valid and the bug will be triggered under the following conditions:
          1. A target message queue is specified, which will pass null for TopicPublishInfo parameter;
          2. Async sending;
          3. Retry happens;
          4. sendLatencyFaultEnable is enabled(On default, it's not enabled)

          The PR, IMO, is not good as it simply disabled promised retry attempts without notice. Instead of logging retry failure, retry sending should be done against the original chosen broker.

          Show
          githubbot ASF GitHub Bot added a comment - Github user lizhanhui commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 This issue is valid and the bug will be triggered under the following conditions: 1. A target message queue is specified, which will pass null for TopicPublishInfo parameter; 2. Async sending; 3. Retry happens; 4. sendLatencyFaultEnable is enabled(On default, it's not enabled) The PR, IMO, is not good as it simply disabled promised retry attempts without notice. Instead of logging retry failure, retry sending should be done against the original chosen broker.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user Jaskey commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          @lizhanhui , # 4 is not the nessary conditions, since even it is not enble, the tpInfo's method is still used.

          try {
          int index = tpInfo.getSendWhichQueue().getAndIncrement();
          for (int i = 0; i < tpInfo.getMessageQueueList().size(); i++) {
          int pos = Math.abs(index++) % tpInfo.getMessageQueueList().size();
          if (pos < 0)
          pos = 0;
          MessageQueue mq = tpInfo.getMessageQueueList().get(pos);
          if (latencyFaultTolerance.isAvailable(mq.getBrokerName()))

          { if (null == lastBrokerName || mq.getBrokerName().equals(lastBrokerName)) return mq; }

          }

          final String notBestBroker = latencyFaultTolerance.pickOneAtLeast();
          int writeQueueNums = tpInfo.getQueueIdByBroker(notBestBroker);
          if (writeQueueNums > 0) {
          final MessageQueue mq = tpInfo.selectOneMessageQueue();
          if (notBestBroker != null)

          { mq.setBrokerName(notBestBroker); mq.setQueueId(tpInfo.getSendWhichQueue().getAndIncrement() % writeQueueNums); }

          return mq;
          } else

          { latencyFaultTolerance.remove(notBestBroker);//my npe is thrown here }

          }

          Besides, if topic route info is null which propably means user is send through my seletor method, resend should still respect user's seletor, so chosen broker is not enough, the chosen queue is needed, which may be another issue, I guess it is not a very minal effort, since the existing interface does not record any chosen queue info.

          Show
          githubbot ASF GitHub Bot added a comment - Github user Jaskey commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 @lizhanhui , # 4 is not the nessary conditions, since even it is not enble, the tpInfo's method is still used. try { int index = tpInfo.getSendWhichQueue().getAndIncrement(); for (int i = 0; i < tpInfo.getMessageQueueList().size(); i++) { int pos = Math.abs(index++) % tpInfo.getMessageQueueList().size(); if (pos < 0) pos = 0; MessageQueue mq = tpInfo.getMessageQueueList().get(pos); if (latencyFaultTolerance.isAvailable(mq.getBrokerName())) { if (null == lastBrokerName || mq.getBrokerName().equals(lastBrokerName)) return mq; } } final String notBestBroker = latencyFaultTolerance.pickOneAtLeast(); int writeQueueNums = tpInfo.getQueueIdByBroker(notBestBroker); if (writeQueueNums > 0) { final MessageQueue mq = tpInfo.selectOneMessageQueue(); if (notBestBroker != null) { mq.setBrokerName(notBestBroker); mq.setQueueId(tpInfo.getSendWhichQueue().getAndIncrement() % writeQueueNums); } return mq; } else { latencyFaultTolerance.remove(notBestBroker);//my npe is thrown here } } Besides, if topic route info is null which propably means user is send through my seletor method, resend should still respect user's seletor, so chosen broker is not enough, the chosen queue is needed, which may be another issue, I guess it is not a very minal effort, since the existing interface does not record any chosen queue info.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user lizhanhui commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          Yes, #4 is not required as MQFaultStrategy#92 may also generate NPE.
          Queue ID info is contained in the request header, minimal effort suffices.

          Show
          githubbot ASF GitHub Bot added a comment - Github user lizhanhui commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 Yes, #4 is not required as MQFaultStrategy#92 may also generate NPE. Queue ID info is contained in the request header, minimal effort suffices.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user Jaskey commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          @lizhanhui , please review the updated pr

          Show
          githubbot ASF GitHub Bot added a comment - Github user Jaskey commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 @lizhanhui , please review the updated pr
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user lizhanhui commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          Looks good.

          Show
          githubbot ASF GitHub Bot added a comment - Github user lizhanhui commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 Looks good.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user coveralls commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          [![Coverage Status](https://coveralls.io/builds/10190259/badge)](https://coveralls.io/builds/10190259)

          Coverage increased (+0.02%) to 31.535% when pulling *18de2995e524135144159816dae75e17ebe9d9c1 on Jaskey:ROCKETMQ-101-NPE-when-retry* into *573b22c37806a21543b90707bcce6022243a62da on apache:master*.

          Show
          githubbot ASF GitHub Bot added a comment - Github user coveralls commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 [! [Coverage Status] ( https://coveralls.io/builds/10190259/badge)](https://coveralls.io/builds/10190259 ) Coverage increased (+0.02%) to 31.535% when pulling * 18de2995e524135144159816dae75e17ebe9d9c1 on Jaskey: ROCKETMQ-101 -NPE-when-retry * into * 573b22c37806a21543b90707bcce6022243a62da on apache:master *.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user zhouxinyu commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          Looks good, please @vongosling help review.

          Show
          githubbot ASF GitHub Bot added a comment - Github user zhouxinyu commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 Looks good, please @vongosling help review.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user Jaskey commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          @vongosling @lizhanhui

          This bug is crucial and easy to reproduce which makes send with seletor is not reliable, when can this pr be merged and release?

          Show
          githubbot ASF GitHub Bot added a comment - Github user Jaskey commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 @vongosling @lizhanhui This bug is crucial and easy to reproduce which makes send with seletor is not reliable, when can this pr be merged and release?
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user lizhanhui commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          @Jaskey You are right, I'll follow up and merge this PR ASAP.

          Show
          githubbot ASF GitHub Bot added a comment - Github user lizhanhui commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 @Jaskey You are right, I'll follow up and merge this PR ASAP.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user vongosling commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          LGTM~

          Show
          githubbot ASF GitHub Bot added a comment - Github user vongosling commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 LGTM~
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user lizhanhui commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          @Jaskey I'll merge this PR soon. Please close this issue.

          Show
          githubbot ASF GitHub Bot added a comment - Github user lizhanhui commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 @Jaskey I'll merge this PR soon. Please close this issue.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user Jaskey commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          Thank you @vongosling @lizhanhui @zhouxinyu

          Show
          githubbot ASF GitHub Bot added a comment - Github user Jaskey commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 Thank you @vongosling @lizhanhui @zhouxinyu
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user Jaskey closed the pull request at:

          https://github.com/apache/incubator-rocketmq/pull/63

          Show
          githubbot ASF GitHub Bot added a comment - Github user Jaskey closed the pull request at: https://github.com/apache/incubator-rocketmq/pull/63
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user vongosling commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          @lizhanhui @Jaskey we'd better close after merge

          Show
          githubbot ASF GitHub Bot added a comment - Github user vongosling commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 @lizhanhui @Jaskey we'd better close after merge
          Hide
          githubbot ASF GitHub Bot added a comment -

          GitHub user Jaskey reopened a pull request:

          https://github.com/apache/incubator-rocketmq/pull/63

          ROCKETMQ-101Fix possible NullPointerException when retry in send Async way

          JIRA: https://issues.apache.org/jira/browse/ROCKETMQ-101

          You can merge this pull request into a Git repository by running:

          $ git pull https://github.com/Jaskey/incubator-rocketmq ROCKETMQ-101-NPE-when-retry

          Alternatively you can review and apply these changes as the patch at:

          https://github.com/apache/incubator-rocketmq/pull/63.patch

          To close this pull request, make a commit to your master/trunk branch
          with (at least) the following in the commit message:

          This closes #63


          commit 18de2995e524135144159816dae75e17ebe9d9c1
          Author: Jaskey <linjunjie1103@gmail.com>
          Date: 2017-02-15T14:17:47Z

          Fix possible NullPointerException when retry in send Async way


          Show
          githubbot ASF GitHub Bot added a comment - GitHub user Jaskey reopened a pull request: https://github.com/apache/incubator-rocketmq/pull/63 ROCKETMQ-101 Fix possible NullPointerException when retry in send Async way JIRA: https://issues.apache.org/jira/browse/ROCKETMQ-101 You can merge this pull request into a Git repository by running: $ git pull https://github.com/Jaskey/incubator-rocketmq ROCKETMQ-101 -NPE-when-retry Alternatively you can review and apply these changes as the patch at: https://github.com/apache/incubator-rocketmq/pull/63.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #63 commit 18de2995e524135144159816dae75e17ebe9d9c1 Author: Jaskey <linjunjie1103@gmail.com> Date: 2017-02-15T14:17:47Z Fix possible NullPointerException when retry in send Async way
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user coveralls commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          [![Coverage Status](https://coveralls.io/builds/10784736/badge)](https://coveralls.io/builds/10784736)

          Coverage decreased (-0.5%) to 31.043% when pulling *18de2995e524135144159816dae75e17ebe9d9c1 on Jaskey:ROCKETMQ-101-NPE-when-retry* into *573b22c37806a21543b90707bcce6022243a62da on apache:master*.

          Show
          githubbot ASF GitHub Bot added a comment - Github user coveralls commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 [! [Coverage Status] ( https://coveralls.io/builds/10784736/badge)](https://coveralls.io/builds/10784736 ) Coverage decreased (-0.5%) to 31.043% when pulling * 18de2995e524135144159816dae75e17ebe9d9c1 on Jaskey: ROCKETMQ-101 -NPE-when-retry * into * 573b22c37806a21543b90707bcce6022243a62da on apache:master *.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user coveralls commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          [![Coverage Status](https://coveralls.io/builds/10784736/badge)](https://coveralls.io/builds/10784736)

          Coverage decreased (-0.5%) to 31.043% when pulling *18de2995e524135144159816dae75e17ebe9d9c1 on Jaskey:ROCKETMQ-101-NPE-when-retry* into *573b22c37806a21543b90707bcce6022243a62da on apache:master*.

          Show
          githubbot ASF GitHub Bot added a comment - Github user coveralls commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 [! [Coverage Status] ( https://coveralls.io/builds/10784736/badge)](https://coveralls.io/builds/10784736 ) Coverage decreased (-0.5%) to 31.043% when pulling * 18de2995e524135144159816dae75e17ebe9d9c1 on Jaskey: ROCKETMQ-101 -NPE-when-retry * into * 573b22c37806a21543b90707bcce6022243a62da on apache:master *.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user coveralls commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          [![Coverage Status](https://coveralls.io/builds/10784736/badge)](https://coveralls.io/builds/10784736)

          Coverage decreased (-0.5%) to 31.043% when pulling *18de2995e524135144159816dae75e17ebe9d9c1 on Jaskey:ROCKETMQ-101-NPE-when-retry* into *573b22c37806a21543b90707bcce6022243a62da on apache:master*.

          Show
          githubbot ASF GitHub Bot added a comment - Github user coveralls commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 [! [Coverage Status] ( https://coveralls.io/builds/10784736/badge)](https://coveralls.io/builds/10784736 ) Coverage decreased (-0.5%) to 31.043% when pulling * 18de2995e524135144159816dae75e17ebe9d9c1 on Jaskey: ROCKETMQ-101 -NPE-when-retry * into * 573b22c37806a21543b90707bcce6022243a62da on apache:master *.
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user lizhanhui commented on the issue:

          https://github.com/apache/incubator-rocketmq/pull/63

          Merged

          Show
          githubbot ASF GitHub Bot added a comment - Github user lizhanhui commented on the issue: https://github.com/apache/incubator-rocketmq/pull/63 Merged
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user Jaskey closed the pull request at:

          https://github.com/apache/incubator-rocketmq/pull/63

          Show
          githubbot ASF GitHub Bot added a comment - Github user Jaskey closed the pull request at: https://github.com/apache/incubator-rocketmq/pull/63

            People

            • Assignee:
              Jaskey Jaskey Lam
              Reporter:
              Jaskey Jaskey Lam
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development