Bharat Viswanadham created HDDS-1664:
----------------------------------------

             Summary: OpenKey logic issue
                 Key: HDDS-1664
                 URL: https://issues.apache.org/jira/browse/HDDS-1664
             Project: Hadoop Distributed Data Store
          Issue Type: Bug
            Reporter: Bharat Viswanadham


In OpenKey, we first check bucket exists/volume exists then acquire lock.

There might be a case, like where we have checked for bucket, volume exists, 
then there is in parallel a delete bucket operation acquired lock and deleted 
bucket after our checks are done in openKey. Then once delete Bucket is done, 
we release lock, and openKey acquires bucket lock, we might create an openKey 
in a deleted bucket. If security is enabled, we might see NPE also for this. 

 

I think we should check for bucket,volume exists once after acquiring the lock.

OpenKey.java:

Line 452:

OmBucketInfo bucketInfo = getBucketInfo(volumeName, bucketName);
encInfo = getFileEncryptionInfo(bucketInfo);

 

Line 2015:

private FileEncryptionInfo getFileEncryptionInfo(OmBucketInfo bucketInfo)
 throws IOException {
 FileEncryptionInfo encInfo = null;
 BucketEncryptionKeyInfo ezInfo = bucketInfo.getEncryptionKeyInfo();

 

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-dev-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-dev-h...@hadoop.apache.org

Reply via email to