You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Benoy Antony (JIRA)" <ji...@apache.org> on 2014/07/16 21:22:04 UTC

[jira] [Created] (HADOOP-10852) NetgroupCache is not thread-safe

Benoy Antony created HADOOP-10852:
-------------------------------------

             Summary: NetgroupCache is not thread-safe
                 Key: HADOOP-10852
                 URL: https://issues.apache.org/jira/browse/HADOOP-10852
             Project: Hadoop Common
          Issue Type: Bug
          Components: security
    Affects Versions: 2.4.1
            Reporter: Benoy Antony
            Assignee: Benoy Antony


_NetgroupCache_ internally uses two _ConcurrentHashMap_s and a boolean variable to signal updates on one of the _ConcurrentHashMap_s 
None of the functions are synchronized  and hence is possible to have unexpected results due to race condition between different threads.

As an example, consider the following sequence:

Thread1 :
{{add}} a group
{{netgroupToUsersMap}} is updated.
{{netgroupToUsersMapUpdated}} is set to true.
Thread 2:
calls {{getNetgroups}} for a user
Due to re-ordering, {{netgroupToUsersMapUpdated=true}} is visible, but updates in {{netgroupToUsersMap}} is not visible.
Does a wrong update with older {{netgroupToUsersMap}} values. 



--
This message was sent by Atlassian JIRA
(v6.2#6252)