Github user franz1981 commented on a diff in the pull request: https://github.com/apache/activemq-artemis/pull/2427#discussion_r232590511 --- 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 -- @michaelandrepearce I'm working on `CoreMessage` to inject into it both `internalProperties` and the cleanupLogic, but TBH the concurrent behaviour is not trivial: it has to be consistent with `TypedProperties` content assuming that the volatile reference of it into `CoreMessage` could change: I'm not sure it would be that easy to change it
---