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

View raw message