hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jakob Homan (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HADOOP-5261) HostsFileReader does not properly implement concurrency support
Date Sat, 14 Feb 2009 03:52:59 GMT

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

Jakob Homan updated HADOOP-5261:

    Attachment: HADOOP-5261.patch

  * Synchronizes access to getHosts() and getExcludedHosts() methods
  * Returns a copy of the hosts and excluded hosts sets, rather than the actual reference
to them.  This prevents concurrency problems if later a process is trying to enumerate over
the sets while HostsFileReader is updating/deleting, etc.

Patch passes all unit tests except known-bad HADOOP-4907.
[exec] -1 overall.  
[exec]     +1 @author.  The patch does not contain any @author tags.
[exec]     -1 tests included.  The patch doesn't appear to include any new or modified tests.
[exec]                         Please justify why no tests are needed for this patch.
[exec]     +1 javadoc.  The javadoc tool did not generate any warning messages.
[exec]     +1 javac.  The applied patch does not increase the total number of javac compiler
[exec]     +1 findbugs.  The patch does not introduce any new Findbugs warnings.
[exec]     +1 Eclipse classpath. The patch retains Eclipse classpath integrity.
[exec]     +1 release audit.  The applied patch does not increase the total number of release
audit warnings.

No new tests because correcting a potential concurrency problem and not easily testable.

> HostsFileReader does not properly implement concurrency support
> ---------------------------------------------------------------
>                 Key: HADOOP-5261
>                 URL: https://issues.apache.org/jira/browse/HADOOP-5261
>             Project: Hadoop Core
>          Issue Type: Bug
>            Reporter: Jakob Homan
>            Assignee: Jakob Homan
>         Attachments: HADOOP-5261.patch
> As currently implemented, the class HostsFileReader does not properly allow concurrent
> It maintains two Sets and manipulates them within synchronized fields, but provides accessor
methods that publish unsynchronized access to the sets' references (getHosts() and getExcludedHosts()).
 The sets are implemented as HashSets, which are not thread safe.  This can allow a method
to obtain a reference to a set that may be modified concurrently by the HostsFileReader.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message