XiaoyiPeng edited a comment on pull request #3534:
URL: https://github.com/apache/rocketmq/pull/3534#issuecomment-981662904


   > In my opinion, setting loadFactor=1 is not a good way, the default value 
can satisfy most scenarios.
   
   Thinks for your review.
   
   Here is using the style of the previous version code(like 
`org.apache.rocketmq.broker.filter.MessageEvaluationContext#keyValues()` ),as 
shown below:
   ```java
   public Map<String, Object> keyValues() {
           if (properties == null) {
               return null;
           }
   
           Map<String, Object> copy = new HashMap<String, 
Object>(properties.size(), 1);
   
           for (String key : properties.keySet()) {
               copy.put(key, properties.get(key));
           }
   
           return copy;
       }
   ```
   
   Because we know exactly how many elements this map is going to put in(the 
map `size` will be small , the probability of **hash conflict** is small ), and 
we don't want  the map be expansioned(`resize`) in future, I think maybe we can 
do it like this.
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to