hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sangjin Lee (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-12593) multiple "volatile long" field declarations exist in the Hadoop codebase
Date Tue, 01 Dec 2015 16:48:11 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-12593?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15034044#comment-15034044
] 

Sangjin Lee commented on HADOOP-12593:
--------------------------------------

+1 on what [~stevel@apache.org] suggested. How about using this to review all unsafe uses
of volatiles, mainly in the context of using compound operations (++, +=, etc.)? [~cmccabe]
already flagged one. Volatile int/short/byte/double/float are no different in this regard,
so they should be reviewed too.

> multiple "volatile long" field declarations exist in the Hadoop codebase
> ------------------------------------------------------------------------
>
>                 Key: HADOOP-12593
>                 URL: https://issues.apache.org/jira/browse/HADOOP-12593
>             Project: Hadoop Common
>          Issue Type: Bug
>    Affects Versions: 2.8.0
>            Reporter: Steve Loughran
>            Priority: Minor
>
> If you get your IDE to scan for "volatile long", you find 20-30 entries. Volatile operations
on `long` variables are not guaranteed to be atomic, so these usages can be vulnerable to
race conditions generating invalid data.
> they need to be replaced by AtomicLong references, except in the specific case that you
want performance values for statistics, and are prepared to take the risk



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message