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

siyao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ozone.git


The following commit(s) were added to refs/heads/master by this push:
     new df0d1e81e3 HDDS-7368. [Multi-Tenant] Add Volume Existence check in 
preExecute for OMTenantCreateRequest (#3869)
df0d1e81e3 is described below

commit df0d1e81e3d5298ea30c8b37a939c2a9b0f8ae2d
Author: Aswin Shakil Balasubramanian <[email protected]>
AuthorDate: Mon Oct 24 11:07:45 2022 -0700

    HDDS-7368. [Multi-Tenant] Add Volume Existence check in preExecute for 
OMTenantCreateRequest (#3869)
---
 .../ozone/om/request/s3/tenant/OMTenantCreateRequest.java     | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git 
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantCreateRequest.java
 
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantCreateRequest.java
index d678b8f1d1..885f45beb3 100644
--- 
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantCreateRequest.java
+++ 
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantCreateRequest.java
@@ -152,6 +152,17 @@ public class OMTenantCreateRequest extends OMVolumeRequest 
{
     final String volumeName = request.getVolumeName();
     // Validate volume name
     OmUtils.validateVolumeName(volumeName);
+
+    final String dbVolumeKey = ozoneManager.getMetadataManager()
+        .getVolumeKey(volumeName);
+
+    // Check volume existence
+    if (ozoneManager.getMetadataManager().getVolumeTable()
+        .isExist(dbVolumeKey)) {
+      LOG.debug("volume: '{}' already exists", volumeName);
+      throw new OMException("Volume already exists", VOLUME_ALREADY_EXISTS);
+    }
+
     // TODO: Refactor this and OMVolumeCreateRequest to improve 
maintainability.
     final VolumeInfo volumeInfo = VolumeInfo.newBuilder()
         .setVolume(volumeName)


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to