Github user franz1981 commented on a diff in the pull request:

    https://github.com/apache/activemq-artemis/pull/2427#discussion_r232758121
  
    --- Diff: 
artemis-commons/src/main/java/org/apache/activemq/artemis/utils/collections/TypedProperties.java
 ---
    @@ -318,6 +320,33 @@ public synchronized boolean containsProperty(final 
SimpleString key) {
           }
        }
     
    +   public synchronized boolean 
cleanupInternalProperties(Predicate<SimpleString> propertyNamePredicate) {
    +      if (!internalProperties) {
    --- End diff --
    
    I have pushed a new version of the change that's using a private subclass 
of 'TypedProperties' where needed to allow atomic updates of the 
`internalProperties` flag: I'm not very about about the factory method on 
'CoreMessage' to allow the client messages to not use that subclass: this is an 
additional optimisation given that the original code where always using 
'TypedProperties' that where chacking on each added property if it was an 
'internal" one.


---

Reply via email to