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]