You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-commits@hadoop.apache.org by el...@apache.org on 2019/10/13 06:52:30 UTC

[hadoop-ozone] 02/04: Revert "HDDS-1737. Add Volume check in KeyManager and File Operations."

This is an automated email from the ASF dual-hosted git repository.

elek pushed a commit to branch HDDS-1737
in repository https://gitbox.apache.org/repos/asf/hadoop-ozone.git

commit 992fc8bd3663a34ab7b7f89fbf9397a95b102116
Author: cxorm <li...@gmail.com>
AuthorDate: Wed Oct 9 00:22:12 2019 +0800

    Revert "HDDS-1737. Add Volume check in KeyManager and File Operations."
    
    This reverts commit 369e206a3b6505013fa8b4933cd89bc6a8a4c27c.
---
 .../om/request/file/OMDirectoryCreateRequest.java   | 11 ++++-------
 .../ozone/om/request/key/OMKeyDeleteRequest.java    | 21 +++++----------------
 .../ozone/om/request/key/OMKeyRenameRequest.java    | 18 ++++--------------
 3 files changed, 13 insertions(+), 37 deletions(-)

diff --git a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMDirectoryCreateRequest.java b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMDirectoryCreateRequest.java
index 3cb74f9..4b591db 100644
--- a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMDirectoryCreateRequest.java
+++ b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMDirectoryCreateRequest.java
@@ -63,9 +63,8 @@ import org.apache.hadoop.hdds.utils.db.cache.CacheValue;
 
 
 import static org.apache.hadoop.ozone.om.exceptions.OMException.ResultCodes.BUCKET_NOT_FOUND;
-import static org.apache.hadoop.ozone.om.exceptions.OMException.ResultCodes.VOLUME_NOT_FOUND;
 import static org.apache.hadoop.ozone.om.exceptions.OMException.ResultCodes.FILE_ALREADY_EXISTS;
-import static org.apache.hadoop.ozone.om.lock.OzoneManagerLock.Resource.BUCKET_LOCK;
+import static  org.apache.hadoop.ozone.om.lock.OzoneManagerLock.Resource.BUCKET_LOCK;
 import static org.apache.hadoop.ozone.om.request.file.OMFileRequest.OMDirectoryResult.DIRECTORY_EXISTS_IN_GIVENPATH;
 import static org.apache.hadoop.ozone.om.request.file.OMFileRequest.OMDirectoryResult.FILE_EXISTS_IN_GIVENPATH;
 import static org.apache.hadoop.ozone.om.request.file.OMFileRequest.OMDirectoryResult.NONE;
@@ -140,14 +139,12 @@ public class OMDirectoryCreateRequest extends OMKeyRequest {
       acquiredLock = omMetadataManager.getLock().acquireWriteLock(BUCKET_LOCK,
           volumeName, bucketName);
 
-      // Check volume exist.
-      if (omMetadataManager.getVolumeTable().isExist(volumeName)) {
-        throw new OMException("Volume not found " + volumeName,
-            VOLUME_NOT_FOUND);
-      }
+      // TODO: Not checking volume exist here, once we have full cache we can
+      //  add volume exist check also.
 
       OmBucketInfo omBucketInfo = omMetadataManager.getBucketTable().get(
               omMetadataManager.getBucketKey(volumeName, bucketName));
+
       if (omBucketInfo == null) {
         throw new OMException("Bucket not found " + bucketName,
             BUCKET_NOT_FOUND);
diff --git a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyDeleteRequest.java b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyDeleteRequest.java
index a81bb8d..ee4b9b2 100644
--- a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyDeleteRequest.java
+++ b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyDeleteRequest.java
@@ -49,10 +49,6 @@ import org.apache.hadoop.hdds.utils.db.cache.CacheValue;
 
 import static org.apache.hadoop.ozone.om.exceptions.OMException.ResultCodes
     .KEY_NOT_FOUND;
-import static org.apache.hadoop.ozone.om.exceptions.OMException.ResultCodes
-    .BUCKET_NOT_FOUND;
-import static org.apache.hadoop.ozone.om.exceptions.OMException.ResultCodes
-    .VOLUME_NOT_FOUND;
 import static org.apache.hadoop.ozone.om.lock.OzoneManagerLock.Resource.BUCKET_LOCK;
 
 /**
@@ -121,19 +117,12 @@ public class OMKeyDeleteRequest extends OMKeyRequest {
       acquiredLock = omMetadataManager.getLock().acquireWriteLock(BUCKET_LOCK,
           volumeName, bucketName);
 
-      // Check volume exist.
-      if (omMetadataManager.getVolumeTable().isExist(volumeName)) {
-        throw new OMException("Volume not found " + volumeName,
-            VOLUME_NOT_FOUND);
-      }
-
-      // Check bucket exist.
-      if (omMetadataManager.getBucketTable().isExist(bucketName)) {
-        throw new OMException("Bucket not found " + bucketName,
-            BUCKET_NOT_FOUND);
-      }
-
+      // Not doing bucket/volume checks here. In this way we can avoid db
+      // checks for them.
+      // TODO: Once we have volume/bucket full cache, we can add
+      // them back, as these checks will be inexpensive at that time.
       OmKeyInfo omKeyInfo = omMetadataManager.getKeyTable().get(objectKey);
+
       if (omKeyInfo == null) {
         throw new OMException("Key not found", KEY_NOT_FOUND);
       }
diff --git a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyRenameRequest.java b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyRenameRequest.java
index 744b00b..526473c 100644
--- a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyRenameRequest.java
+++ b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyRenameRequest.java
@@ -50,9 +50,6 @@ import org.apache.hadoop.hdds.utils.db.cache.CacheKey;
 import org.apache.hadoop.hdds.utils.db.cache.CacheValue;
 
 import static org.apache.hadoop.ozone.om.exceptions.OMException.ResultCodes.KEY_NOT_FOUND;
-import static org.apache.hadoop.ozone.om.exceptions.OMException.ResultCodes.BUCKET_NOT_FOUND;
-import static org.apache.hadoop.ozone.om.exceptions.OMException.ResultCodes.VOLUME_NOT_FOUND;
-
 import static org.apache.hadoop.ozone.om.lock.OzoneManagerLock.Resource.BUCKET_LOCK;
 
 /**
@@ -126,17 +123,10 @@ public class OMKeyRenameRequest extends OMKeyRequest {
       acquiredLock = omMetadataManager.getLock().acquireWriteLock(BUCKET_LOCK,
           volumeName, bucketName);
 
-      // Check volume exist.
-      if (omMetadataManager.getVolumeTable().isExist(volumeName)) {
-        throw new OMException("Volume not found " + volumeName,
-            VOLUME_NOT_FOUND);
-      }
-
-      // Check bucket exist.
-      if (omMetadataManager.getBucketTable().isExist(bucketName)) {
-        throw new OMException("Bucket not found " + bucketName,
-            BUCKET_NOT_FOUND);
-      }
+      // Not doing bucket/volume checks here. In this way we can avoid db
+      // checks for them.
+      // TODO: Once we have volume/bucket full cache, we can add
+      // them back, as these checks will be inexpensive at that time.
 
       // fromKeyName should exist
       String fromKey = omMetadataManager.getOzoneKey(


---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-commits-help@hadoop.apache.org