You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "Kihwal Lee (JIRA)" <ji...@apache.org> on 2013/07/10 00:57:48 UTC

[jira] [Created] (HDFS-4972) [branch-0.23] permission check and operation are done in a separate lock for getBlockLocations()

Kihwal Lee created HDFS-4972:
--------------------------------

             Summary: [branch-0.23] permission check and operation are done in a separate lock for getBlockLocations()
                 Key: HDFS-4972
                 URL: https://issues.apache.org/jira/browse/HDFS-4972
             Project: Hadoop HDFS
          Issue Type: Bug
          Components: namenode
    Affects Versions: 0.23.8
            Reporter: Kihwal Lee
            Assignee: Kihwal Lee


For getBlockLocations() call, the read lock is acquired when doing permission check. But unlike other namenode methods, this is outside of the lock of the actual operation. So it ends up acquiring and releasing the lock twice.  This has two implications.
- permissions can change in between the locks
- the lock fairness will penalize getBlockLocations().

This was fixed in trunk and branch-2 as a part of HDFS-4679, but not in branch-0.23.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira