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

rakeshr 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 4770eab  HDDS-5795. [FSO] Add unit test case with mpu open key during 
abort. (#2931)
4770eab is described below

commit 4770eab565d691383fe08750f1f81ff68bf99a05
Author: Jyotinder Singh <[email protected]>
AuthorDate: Fri Dec 17 21:06:40 2021 +0530

    HDDS-5795. [FSO] Add unit test case with mpu open key during abort. (#2931)
---
 .../TestS3MultipartUploadAbortResponse.java          | 20 +++++++++++++++++++-
 .../TestS3MultipartUploadAbortResponseWithFSO.java   | 16 ++++++++++++++++
 2 files changed, 35 insertions(+), 1 deletion(-)

diff --git 
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/response/s3/multipart/TestS3MultipartUploadAbortResponse.java
 
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/response/s3/multipart/TestS3MultipartUploadAbortResponse.java
index 1c4189a..b7046d8 100644
--- 
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/response/s3/multipart/TestS3MultipartUploadAbortResponse.java
+++ 
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/response/s3/multipart/TestS3MultipartUploadAbortResponse.java
@@ -55,12 +55,21 @@ public class TestS3MultipartUploadAbortResponse
         .setVolumeName(volumeName).setBucketName(bucketName)
         .setCreationTime(Time.now()).build();
     S3InitiateMultipartUploadResponse s3InitiateMultipartUploadResponse =
-        createS3InitiateMPUResponse(volumeName, bucketName, keyName,
+        getS3InitiateMultipartUploadResponse(volumeName, bucketName, keyName,
             multipartUploadID);
 
     s3InitiateMultipartUploadResponse.addToDBBatch(omMetadataManager,
         batchOperation);
 
+    omMetadataManager.getStore().commitBatchOperation(batchOperation);
+
+    // Make sure key is present in OpenKeyTable and MPU table before Abort.
+    Assert.assertNotNull(
+        omMetadataManager.getOpenKeyTable(getBucketLayout())
+            .get(multipartOpenKey));
+    Assert.assertNotNull(
+        omMetadataManager.getMultipartInfoTable().get(multipartKey));
+
     S3MultipartUploadAbortResponse s3MultipartUploadAbortResponse =
         createS3AbortMPUResponse(multipartKey, multipartOpenKey,
             s3InitiateMultipartUploadResponse.getOmMultipartKeyInfo(),
@@ -71,6 +80,7 @@ public class TestS3MultipartUploadAbortResponse
 
     omMetadataManager.getStore().commitBatchOperation(batchOperation);
 
+    // Key should be deleted from OpenKeyTable and MPU table after Abort.
     Assert.assertNull(
         omMetadataManager.getOpenKeyTable(getBucketLayout())
             .get(multipartOpenKey));
@@ -82,6 +92,14 @@ public class TestS3MultipartUploadAbortResponse
         omMetadataManager.getDeletedTable()) == 0);
   }
 
+  protected S3InitiateMultipartUploadResponse
+        getS3InitiateMultipartUploadResponse(
+      String volumeName, String bucketName, String keyName,
+      String multipartUploadID) {
+    return createS3InitiateMPUResponse(volumeName, bucketName, keyName,
+        multipartUploadID);
+  }
+
   @Test
   public void testAddDBToBatchWithParts() throws Exception {
 
diff --git 
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/response/s3/multipart/TestS3MultipartUploadAbortResponseWithFSO.java
 
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/response/s3/multipart/TestS3MultipartUploadAbortResponseWithFSO.java
index 3605f7f..019b2f1 100644
--- 
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/response/s3/multipart/TestS3MultipartUploadAbortResponseWithFSO.java
+++ 
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/response/s3/multipart/TestS3MultipartUploadAbortResponseWithFSO.java
@@ -22,6 +22,7 @@ import org.apache.commons.lang3.StringUtils;
 import org.apache.hadoop.ozone.om.helpers.OmBucketInfo;
 import org.apache.hadoop.ozone.om.helpers.OmKeyInfo;
 import org.apache.hadoop.ozone.om.helpers.OmMultipartKeyInfo;
+import org.apache.hadoop.ozone.om.helpers.BucketLayout;
 import org.apache.hadoop.ozone.om.helpers.OzoneFSUtils;
 import org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos;
 
@@ -44,6 +45,11 @@ public class TestS3MultipartUploadAbortResponseWithFSO
   }
 
   @Override
+  public BucketLayout getBucketLayout() {
+    return BucketLayout.FILE_SYSTEM_OPTIMIZED;
+  }
+
+  @Override
   protected String getMultipartOpenKey(String volumeName, String bucketName,
       String keyName, String multipartUploadID) {
     String fileName = StringUtils.substringAfter(keyName, dirName);
@@ -67,6 +73,16 @@ public class TestS3MultipartUploadAbortResponseWithFSO
   }
 
   @Override
+  protected S3InitiateMultipartUploadResponse
+      getS3InitiateMultipartUploadResponse(
+      String volumeName, String bucketName, String keyName,
+      String multipartUploadID) {
+    return createS3InitiateMPUResponseFSO(volumeName, bucketName, parentID,
+        keyName,
+        multipartUploadID, new ArrayList<>());
+  }
+
+  @Override
   protected S3MultipartUploadAbortResponse getS3MultipartUploadAbortResp(
       String multipartKey, String multipartOpenKey,
       OmMultipartKeyInfo omMultipartKeyInfo, OmBucketInfo omBucketInfo,

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

Reply via email to