You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@rocketmq.apache.org by StyleTang <gi...@git.apache.org> on 2017/03/08 08:01:15 UTC

[GitHub] incubator-rocketmq pull request #72: https://issues.apache.org/jira/browse/R...

GitHub user StyleTang opened a pull request:

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

    https://issues.apache.org/jira/browse/ROCKETMQ-134

    when different string has a same hash code.the message commit offset of filtered message may be not commit to broker.
    for example:
    1.consumer pull message from broker, broker return status FOUND and messages filter by tags hash code
    2.consumer client get the messages and than processPullResult will filter message by tags.
    3.PullCallback may get a pullResult which status is FOUND but messageList is empty.(filter by tags)
    but only NO_MATCHED_MSG and NO_NEW_MSG will correctTagsOffset
    we can't commit the right with status of FOUND(for messageList is empty).
    Is that so?
    


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

    $ git pull https://github.com/StyleTang/incubator-rocketmq message-tags

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

    https://github.com/apache/incubator-rocketmq/pull/72.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 #72
    
----
commit a4e22b6d8008ab0402b9e1909ef4c8061b8e9908
Author: tangjie <st...@gmail.com>
Date:   2017-03-08T07:59:01Z

    https://issues.apache.org/jira/browse/ROCKETMQ-134
    fix status isFOUND,but no matched messages. commit offset will not commit to broker problem.
    (string's hash code is the same but string value not)

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-rocketmq issue #72: [ROCKETMQ-134]the offset of message filter by ...

Posted by StyleTang <gi...@git.apache.org>.
Github user StyleTang commented on the issue:

    https://github.com/apache/incubator-rocketmq/pull/72
  
    @Jaskey 
    I found pullStatus is final, and I don't want to redefine it, so I judge the msgList size.
    may be change the value of pullStatus will be better.
    
    As you say, the problem occurred when your consumer client get messages every pull request, and the message can be filter by tag.
    
    The probability is very low.If everyone think it doesn't matter,I will close this PR.
    
    But I think have a check is better.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-rocketmq issue #72: [ROCKETMQ-134]the offset of message filter by ...

Posted by Jaskey <gi...@git.apache.org>.
Github user Jaskey commented on the issue:

    https://github.com/apache/incubator-rocketmq/pull/72
  
    You are right , but this is actually not a very big problem since though the offset this round is not committed, the pull request for next round is still continue so next time the offset will still committed.
    
    If the consumer crashes at that moment, an unnecessary pull request will be submitted, which is the what the problem actually is , but it is very minor.
    
    Please firstly relate the JIRA in your descriptions.
    
    For this PR, I don't suggest doing correctTags when pull list is empty because it is always empty as long as there is no message.
    
    If this issue should be solved, I suggest modify the pull result to NO_MATCHED when pulling some message but filter by client by tag in method `processPullResult`
    
                //filter by client again and no messages left
                if(msgListFilterAgain.isEmpty() && !msgList.isEmpty()) {
                    pullResultExt.setPullStatus(PullStatus.NO_MATCHED_MSG);
                } 
    
    



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] incubator-rocketmq issue #72: [ROCKETMQ-134]the offset of message filter by ...

Posted by coveralls <gi...@git.apache.org>.
Github user coveralls commented on the issue:

    https://github.com/apache/incubator-rocketmq/pull/72
  
    
    [![Coverage Status](https://coveralls.io/builds/10498533/badge)](https://coveralls.io/builds/10498533)
    
    Changes Unknown when pulling **a4e22b6d8008ab0402b9e1909ef4c8061b8e9908 on StyleTang:message-tags** into ** on apache:master**.



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---