DomGarguilo commented on code in PR #6052:
URL: https://github.com/apache/accumulo/pull/6052#discussion_r2687075810
##########
core/src/main/java/org/apache/accumulo/core/conf/ConfigurationCopy.java:
##########
@@ -74,9 +74,11 @@ public String get(Property property) {
@Override
public void getProperties(Map<String,String> props, Predicate<String>
filter) {
- for (Entry<String,String> entry : copy.entrySet()) {
- if (filter.test(entry.getKey())) {
- props.put(entry.getKey(), entry.getValue());
+ synchronized (copy) {
Review Comment:
I did do some manual testing and it does appear .forEach off of a
.synchronizedMap() does protect against CME where as swapping in other looping
techniques does not so in practice it appears you're right but everything im
seeing still suggests to manually sync
--
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]