Roman Leventov created KAFKA-9340: ------------------------------------- Summary: Potential race condition in AbstractConfig Key: KAFKA-9340 URL: https://issues.apache.org/jira/browse/KAFKA-9340 Project: Kafka Issue Type: Bug Reporter: Roman Leventov
It's not clear why the {{used}} field in {{AbstractConfig}} should be a synchronized set, but if does need to be synchronized, there is a race condition in this line: [https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/common/config/AbstractConfig.java#L214] {{keys.removeAll(used);}} Possible fixes: 1. Document (e. g. in a comment) why {{used}} should be synchronized, and replace line 214 with {{synchronized (used) \{ keys.removeAll(used); }}} 2. Remove unnecessary synchronization of {{used}} -- This message was sent by Atlassian Jira (v8.3.4#803005)