hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hemanth Yamijala (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HADOOP-6269) Missing synchronization for defaultResources in Configuration.addResource
Date Mon, 02 Nov 2009 05:38:59 GMT

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

Hemanth Yamijala commented on HADOOP-6269:
------------------------------------------

I looked at the patch using CopyOnWriteArrayList. It seems like a reasonable approach to me,
except for one point that I will mention in a bit. First I would like to see what others think
about the usage of CopyOnWriteArrayList.

The defaultResources structure is modified only once per resource in the lifetime of an application
- like a hadoop daemon or client. It is iterated over more number of times - typically every
time a configuration instance is loaded in the application. Going from the javadoc for the
CopyOnWriteArrayList, it does seem the usage is appropriate. The result of using this structure
is a simpler code change that is fixing the problem at hand. Given these points, does the
patch seem like a right direction ? (Todd, your thoughts ?)

Now, regarding the patch, even if we do agree on using it, I suppose we might still need to
synchronize addDefaultResources, because the contains check needs to be synchronized with
the add check, no ?



> Missing synchronization for defaultResources in Configuration.addResource
> -------------------------------------------------------------------------
>
>                 Key: HADOOP-6269
>                 URL: https://issues.apache.org/jira/browse/HADOOP-6269
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: conf
>    Affects Versions: 0.20.1
>            Reporter: Todd Lipcon
>            Assignee: Todd Lipcon
>             Fix For: 0.20.2, 0.21.0
>
>         Attachments: HADOOP-6269-1.patch, hadoop-6269.txt, hadoop-6269.txt
>
>
> Configuration.defaultResources is a simple ArrayList. In two places in Configuration
it is accessed without appropriate synchronization, which we've seen to occasionally result
in ConcurrentModificationExceptions.

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


Mime
View raw message