[ 
https://issues.apache.org/jira/browse/IGNITE-21696?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Viacheslav Blinov updated IGNITE-21696:
---------------------------------------
    Description: 
Issue detected by SpotBugs. Specifically the warning reported is:
{noformat}
M M JLM_JSR166_UTILCONCURRENT_MONITORENTER JLM: Synchronization performed on 
java.util.concurrent.atomic.AtomicReferenceArray in 
org.apache.ignite.internal.network.LazyStripedExecutor.executorFor(short)  At 
LazyStripedExecutor.java:[line 88] {noformat}
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

  was:
Issue detected by SpotBugs. Specifically the warning reported is:
{noformat}
M D UCF_USELESS_CONTROL_FLOW UCF: Useless control flow in 
org.apache.ignite.internal.pagememory.util.PageHandler.<static initializer for 
PageHandler>()  At PageHandler.java:[line 34]
{noformat}
One of the conditions of this interface default implementation checks for 
condition which is always true/false. This can be a sign of a bug.

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


> LazyStripedExecutor performs synchronization on AtomicReferenceArray
> --------------------------------------------------------------------
>
>                 Key: IGNITE-21696
>                 URL: https://issues.apache.org/jira/browse/IGNITE-21696
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Viacheslav Blinov
>            Priority: Minor
>
> Issue detected by SpotBugs. Specifically the warning reported is:
> {noformat}
> M M JLM_JSR166_UTILCONCURRENT_MONITORENTER JLM: Synchronization performed on 
> java.util.concurrent.atomic.AtomicReferenceArray in 
> org.apache.ignite.internal.network.LazyStripedExecutor.executorFor(short)  At 
> LazyStripedExecutor.java:[line 88] {noformat}
> 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



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to