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

Haibo Chen updated YARN-8391:
-----------------------------
    Description: 
Per findbugs report in YARN-8390, there is some inconsistent locking of  
reloadListener

 
h1. Warnings

Click on a warning row to see full context information.
h2. Multithreaded correctness Warnings
||Code||Warning||
|IS|Inconsistent synchronization of 
org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.AllocationFileLoaderService.reloadListener;
 locked 75% of time|
| |[Bug type IS2_INCONSISTENT_SYNC (click for 
details)|https://builds.apache.org/job/PreCommit-YARN-Build/20939/artifact/out/new-findbugs-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-resourcemanager.html#IS2_INCONSISTENT_SYNC]
 
In class 
org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.AllocationFileLoaderService
Field 
org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.AllocationFileLoaderService.reloadListener
Synchronized 75% of the time
Unsynchronized access at AllocationFileLoaderService.java:[line 117]
Synchronized access at AllocationFileLoaderService.java:[line 212]
Synchronized access at AllocationFileLoaderService.java:[line 228]
Synchronized access at AllocationFileLoaderService.java:[line 269]|
h1. Details
h2. IS2_INCONSISTENT_SYNC: Inconsistent synchronization

The fields of this class appear to be accessed inconsistently with respect to 
synchronization.  This bug report indicates that the bug pattern detector 
judged that
 * The class contains a mix of locked and unlocked accesses,
 * The class is *not* annotated as javax.annotation.concurrent.NotThreadSafe,
 * At least one locked access was performed by one of the class's own methods, 
and
 * The number of unsynchronized field accesses (reads and writes) was no more 
than one third of all accesses, with writes being weighed twice as high as reads

A typical bug matching this bug pattern is forgetting to synchronize one of the 
methods in a class that is intended to be thread-safe.

You can select the nodes labeled "Unsynchronized access" to show the code 
locations where the detector believed that a field was accessed without 
synchronization.

Note that there are various sources of inaccuracy in this detector; for 
example, the detector cannot statically detect all situations in which a lock 
is held.  Also, even when the detector is accurate in distinguishing locked vs. 
unlocked accesses, the code in question may still be correct.

  was:Per findbugs report in YARN-8390, there is some inconsistent locking of  
reloadListener


> Investigate AllocationFileLoaderService.reloadListener locking issue
> --------------------------------------------------------------------
>
>                 Key: YARN-8391
>                 URL: https://issues.apache.org/jira/browse/YARN-8391
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: fairscheduler
>    Affects Versions: 3.2.0
>            Reporter: Haibo Chen
>            Priority: Critical
>
> Per findbugs report in YARN-8390, there is some inconsistent locking of  
> reloadListener
>  
> h1. Warnings
> Click on a warning row to see full context information.
> h2. Multithreaded correctness Warnings
> ||Code||Warning||
> |IS|Inconsistent synchronization of 
> org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.AllocationFileLoaderService.reloadListener;
>  locked 75% of time|
> | |[Bug type IS2_INCONSISTENT_SYNC (click for 
> details)|https://builds.apache.org/job/PreCommit-YARN-Build/20939/artifact/out/new-findbugs-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-resourcemanager.html#IS2_INCONSISTENT_SYNC]
>  
> In class 
> org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.AllocationFileLoaderService
> Field 
> org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.AllocationFileLoaderService.reloadListener
> Synchronized 75% of the time
> Unsynchronized access at AllocationFileLoaderService.java:[line 117]
> Synchronized access at AllocationFileLoaderService.java:[line 212]
> Synchronized access at AllocationFileLoaderService.java:[line 228]
> Synchronized access at AllocationFileLoaderService.java:[line 269]|
> h1. Details
> h2. IS2_INCONSISTENT_SYNC: Inconsistent synchronization
> The fields of this class appear to be accessed inconsistently with respect to 
> synchronization.  This bug report indicates that the bug pattern detector 
> judged that
>  * The class contains a mix of locked and unlocked accesses,
>  * The class is *not* annotated as javax.annotation.concurrent.NotThreadSafe,
>  * At least one locked access was performed by one of the class's own 
> methods, and
>  * The number of unsynchronized field accesses (reads and writes) was no more 
> than one third of all accesses, with writes being weighed twice as high as 
> reads
> A typical bug matching this bug pattern is forgetting to synchronize one of 
> the methods in a class that is intended to be thread-safe.
> You can select the nodes labeled "Unsynchronized access" to show the code 
> locations where the detector believed that a field was accessed without 
> synchronization.
> Note that there are various sources of inaccuracy in this detector; for 
> example, the detector cannot statically detect all situations in which a lock 
> is held.  Also, even when the detector is accurate in distinguishing locked 
> vs. unlocked accesses, the code in question may still be correct.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to