hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aaron T. Myers (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HADOOP-7033) getUserToGroupsMappingService is not thread safe
Date Sun, 14 Nov 2010 19:19:14 GMT

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

Aaron T. Myers commented on HADOOP-7033:
----------------------------------------

Though obviously we should fix this, I don't think it can actually cause any problems at the
moment, since {{getUserToGroupsMappingService}} is only called in one place (UserGroupInformation.java:243)
and that method is {{synchronized}}.

> getUserToGroupsMappingService is not thread safe
> ------------------------------------------------
>
>                 Key: HADOOP-7033
>                 URL: https://issues.apache.org/jira/browse/HADOOP-7033
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: security
>    Affects Versions: 0.22.0
>            Reporter: Eli Collins
>             Fix For: 0.22.0
>
>
> test-patch on trunk reports the following findbugs warning:
> {noformat}
> Incorrect lazy initialization of static field org.apache.hadoop.security.Groups.GROUPS
in org.apache.hadoop.security.Groups.getUserToGroupsMappingService(Configuration)
> Bug type LI_LAZY_INIT_STATIC (click for details) 
> In class org.apache.hadoop.security.Groups
> In method org.apache.hadoop.security.Groups.getUserToGroupsMappingService(Configuration)
> On field org.apache.hadoop.security.Groups.GROUPS
> At Groups.java:[lines 138-142]
> {noformat}
> The relevant code:
> {noformat}
>   public static Groups getUserToGroupsMappingService(Configuration conf) {
>     if(GROUPS == null) {
>       if(LOG.isDebugEnabled()) {
>         LOG.debug(" Creating new Groups object");
>       }
>       GROUPS = new Groups(conf);
>     }
>     return GROUPS;
>   }
> {noformat}
> This is problematic if getUserToGroupsMappingService can accessed simultaneously by multiple
threads.

-- 
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