Description
Issue detected by SpotBugs. Specifically the warning reported is:
M M JLM_JSR166_UTILCONCURRENT_MONITORENTER JLM: Synchronization performed on java.util.concurrent.atomic.AtomicReferenceArray in org.apache.ignite.internal.network.LazyStripedExecutors.stripedExecutorFor(short) At LazyStripedExecutors.java:[line 71]
Instances of java.util.concurrent.atomic classes have their own concurrency control mechanisms that are orthogonal to the synchronization provided by the Java keyword synchronized. For example, synchronizing on an AtomicBoolean will not prevent other threads from modifying the AtomicBoolean.
Such code may be correct, but should be carefully reviewed and documented, and may confuse people who have to maintain the code at a later date.
Investigate whenever this is a false-positive and we should suppress it, or we should make a proper fix.
At the result of investigation corresponding TODO should be removed in spotbugs-excludes.xml
Attachments
Issue Links
- fixes
-
IGNITE-21697 ConnectionManager ignores exceptional return value of ExecutorService.submit
- Resolved
- is duplicated by
-
IGNITE-21697 ConnectionManager ignores exceptional return value of ExecutorService.submit
- Resolved
- split from
-
IGNITE-21569 Introduce Spotbugs checks
- Resolved
- links to