Github user Jaskey commented on the issue:

    https://github.com/apache/incubator-rocketmq/pull/60
  
    @shroman @lizhanhui @zhouxinyu 
    
    There are users asking the same question about the logic of consume orderly 
and they both complain that the `msgTreeMapTemp` is very hard to understand 
it's implication, so would you please review this pr and merge it in 4.1.
    
    Besides, I wonder if there is the same issue in below method, the signature 
of the method is trying to determine if there are some tmp msg(which will be 
only used in consumer orderly service), while the implementation is to 
determine the `msgTreeMap`?
    
    Is the implementation wrong or the is signature misleading.
    
        public boolean hasTempMessage() {
            try {
                this.lockTreeMap.readLock().lockInterruptibly();
                try {
                    return !this.msgTreeMap.isEmpty();
                } finally {
                    this.lockTreeMap.readLock().unlock();
                }
            } catch (InterruptedException e) {
            }
    
            return true;
        }


---
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 [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to