This is an automated email from the ASF dual-hosted git repository.
sammichen 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 949da050a9 HDDS-5455. Check invalid keyName when creating new key
(#2424)
949da050a9 is described below
commit 949da050a9b460bf24159e18dc2b9612e9e445f1
Author: Symious <[email protected]>
AuthorDate: Tue Oct 24 11:09:42 2023 +0800
HDDS-5455. Check invalid keyName when creating new key (#2424)
---
.../hadoop/ozone/om/exceptions/OMException.java | 4 +-
.../src/main/proto/OmClientProtocol.proto | 3 ++
.../om/ratis/utils/OzoneManagerRatisUtils.java | 5 ++-
.../hadoop/ozone/om/request/OMClientRequest.java | 7 ++--
.../om/request/bucket/OMBucketCreateRequest.java | 5 ++-
.../om/request/bucket/OMBucketDeleteRequest.java | 5 ++-
.../om/request/bucket/OMBucketSetOwnerRequest.java | 5 ++-
.../request/bucket/OMBucketSetPropertyRequest.java | 5 ++-
.../om/request/bucket/acl/OMBucketAclRequest.java | 11 ++---
.../request/bucket/acl/OMBucketAddAclRequest.java | 2 +-
.../bucket/acl/OMBucketRemoveAclRequest.java | 2 +-
.../request/bucket/acl/OMBucketSetAclRequest.java | 2 +-
.../om/request/file/OMDirectoryCreateRequest.java | 7 ++--
.../file/OMDirectoryCreateRequestWithFSO.java | 7 ++--
.../ozone/om/request/file/OMFileCreateRequest.java | 5 ++-
.../request/file/OMFileCreateRequestWithFSO.java | 5 ++-
.../om/request/file/OMRecoverLeaseRequest.java | 7 ++--
.../om/request/key/OMAllocateBlockRequest.java | 7 ++--
.../request/key/OMAllocateBlockRequestWithFSO.java | 5 ++-
.../ozone/om/request/key/OMKeyCommitRequest.java | 7 ++--
.../om/request/key/OMKeyCommitRequestWithFSO.java | 5 ++-
.../ozone/om/request/key/OMKeyCreateRequest.java | 7 ++--
.../om/request/key/OMKeyCreateRequestWithFSO.java | 5 ++-
.../ozone/om/request/key/OMKeyDeleteRequest.java | 5 ++-
.../om/request/key/OMKeyDeleteRequestWithFSO.java | 5 ++-
.../ozone/om/request/key/OMKeyRenameRequest.java | 5 ++-
.../om/request/key/OMKeyRenameRequestWithFSO.java | 5 ++-
.../ozone/om/request/key/OMKeySetTimesRequest.java | 11 ++---
.../request/key/OMKeySetTimesRequestWithFSO.java | 9 ++--
.../ozone/om/request/key/OMKeysDeleteRequest.java | 7 ++--
.../ozone/om/request/key/OMKeysRenameRequest.java | 7 ++--
.../om/request/key/OMOpenKeysDeleteRequest.java | 5 ++-
.../ozone/om/request/key/acl/OMKeyAclRequest.java | 11 ++---
.../om/request/key/acl/OMKeyAclRequestWithFSO.java | 9 ++--
.../om/request/key/acl/OMKeyAddAclRequest.java | 2 +-
.../request/key/acl/OMKeyAddAclRequestWithFSO.java | 2 +-
.../om/request/key/acl/OMKeyRemoveAclRequest.java | 2 +-
.../key/acl/OMKeyRemoveAclRequestWithFSO.java | 2 +-
.../om/request/key/acl/OMKeySetAclRequest.java | 2 +-
.../request/key/acl/OMKeySetAclRequestWithFSO.java | 2 +-
.../request/key/acl/prefix/OMPrefixAclRequest.java | 11 ++---
.../key/acl/prefix/OMPrefixAddAclRequest.java | 4 +-
.../key/acl/prefix/OMPrefixRemoveAclRequest.java | 4 +-
.../key/acl/prefix/OMPrefixSetAclRequest.java | 4 +-
.../S3InitiateMultipartUploadRequest.java | 7 ++--
.../S3InitiateMultipartUploadRequestWithFSO.java | 5 ++-
.../multipart/S3MultipartUploadAbortRequest.java | 7 ++--
.../S3MultipartUploadAbortRequestWithFSO.java | 4 +-
.../S3MultipartUploadCommitPartRequest.java | 7 ++--
.../S3MultipartUploadCompleteRequest.java | 9 ++--
.../S3MultipartUploadCompleteRequestWithFSO.java | 2 +-
.../om/request/s3/security/S3GetSecretRequest.java | 7 ++--
.../s3/tenant/OMTenantAssignAdminRequest.java | 7 ++--
.../tenant/OMTenantAssignUserAccessIdRequest.java | 7 ++--
.../request/s3/tenant/OMTenantCreateRequest.java | 9 ++--
.../request/s3/tenant/OMTenantDeleteRequest.java | 5 ++-
.../s3/tenant/OMTenantRevokeAdminRequest.java | 7 ++--
.../tenant/OMTenantRevokeUserAccessIdRequest.java | 7 ++--
.../security/OMCancelDelegationTokenRequest.java | 7 ++--
.../security/OMGetDelegationTokenRequest.java | 7 ++--
.../security/OMRenewDelegationTokenRequest.java | 7 ++--
.../request/snapshot/OMSnapshotCreateRequest.java | 5 ++-
.../request/snapshot/OMSnapshotDeleteRequest.java | 5 ++-
.../om/request/volume/OMVolumeCreateRequest.java | 5 ++-
.../om/request/volume/OMVolumeDeleteRequest.java | 5 ++-
.../om/request/volume/OMVolumeSetOwnerRequest.java | 5 ++-
.../om/request/volume/OMVolumeSetQuotaRequest.java | 5 ++-
.../om/request/volume/acl/OMVolumeAclRequest.java | 11 ++---
.../request/volume/acl/OMVolumeAddAclRequest.java | 4 +-
.../volume/acl/OMVolumeRemoveAclRequest.java | 4 +-
.../request/volume/acl/OMVolumeSetAclRequest.java | 4 +-
.../om/request/key/TestOMKeyCreateRequest.java | 49 ++++++++++++++++++++++
72 files changed, 278 insertions(+), 172 deletions(-)
diff --git
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/exceptions/OMException.java
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/exceptions/OMException.java
index f214930590..20b4fb1ed0 100644
---
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/exceptions/OMException.java
+++
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/exceptions/OMException.java
@@ -265,6 +265,8 @@ public class OMException extends IOException {
RENAME_OPEN_FILE,
UNAUTHORIZED,
- S3_SECRET_ALREADY_EXISTS
+ S3_SECRET_ALREADY_EXISTS,
+
+ INVALID_PATH
}
}
diff --git
a/hadoop-ozone/interface-client/src/main/proto/OmClientProtocol.proto
b/hadoop-ozone/interface-client/src/main/proto/OmClientProtocol.proto
index fb3c6925fc..8025fc42bb 100644
--- a/hadoop-ozone/interface-client/src/main/proto/OmClientProtocol.proto
+++ b/hadoop-ozone/interface-client/src/main/proto/OmClientProtocol.proto
@@ -507,6 +507,7 @@ enum Status {
TENANT_NOT_EMPTY = 85;
FEATURE_NOT_ENABLED = 86;
+
INVALID_SNAPSHOT_ERROR = 87;
CONTAINS_SNAPSHOT = 88;
@@ -515,6 +516,8 @@ enum Status {
UNAUTHORIZED = 91;
S3_SECRET_ALREADY_EXISTS = 92;
+
+ INVALID_PATH = 93;
}
/**
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/ratis/utils/OzoneManagerRatisUtils.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/ratis/utils/OzoneManagerRatisUtils.java
index 636c3af209..3ab65346e7 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/ratis/utils/OzoneManagerRatisUtils.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/ratis/utils/OzoneManagerRatisUtils.java
@@ -21,6 +21,7 @@ import com.google.common.base.Preconditions;
import com.google.common.base.Strings;
import com.google.protobuf.ServiceException;
import java.io.File;
+import java.nio.file.InvalidPathException;
import java.nio.file.Paths;
import org.apache.hadoop.hdds.conf.ConfigurationSource;
@@ -399,9 +400,11 @@ public final class OzoneManagerRatisUtils {
* @param exception
* @return OzoneManagerProtocolProtos.Status
*/
- public static Status exceptionToResponseStatus(IOException exception) {
+ public static Status exceptionToResponseStatus(Exception exception) {
if (exception instanceof OMException) {
return Status.values()[((OMException) exception).getResult().ordinal()];
+ } else if (exception instanceof InvalidPathException) {
+ return Status.INVALID_PATH;
} else {
// Doing this here, because when DB error happens we need to return
// correct error code, so that in applyTransaction we can
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/OMClientRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/OMClientRequest.java
index 29c7372315..48c68cb5aa 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/OMClientRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/OMClientRequest.java
@@ -56,6 +56,7 @@ import org.slf4j.LoggerFactory;
import javax.annotation.Nonnull;
import java.io.IOException;
import java.net.InetAddress;
+import java.nio.file.InvalidPathException;
import java.util.LinkedHashMap;
import java.util.Map;
@@ -434,7 +435,7 @@ public abstract class OMClientRequest implements
RequestAuditor {
* @return error response need to be returned to client - OMResponse.
*/
protected OMResponse createErrorOMResponse(
- @Nonnull OMResponse.Builder omResponse, @Nonnull IOException ex) {
+ @Nonnull OMResponse.Builder omResponse, @Nonnull Exception ex) {
omResponse.setSuccess(false);
String errorMsg = exceptionErrorMessage(ex);
@@ -460,8 +461,8 @@ public abstract class OMClientRequest implements
RequestAuditor {
}
}
- private String exceptionErrorMessage(IOException ex) {
- if (ex instanceof OMException) {
+ private String exceptionErrorMessage(Exception ex) {
+ if (ex instanceof OMException || ex instanceof InvalidPathException) {
return ex.getMessage();
} else {
return org.apache.hadoop.util.StringUtils.stringifyException(ex);
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketCreateRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketCreateRequest.java
index faddb9227a..f9f9a87b6b 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketCreateRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketCreateRequest.java
@@ -66,6 +66,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.ArrayList;
import java.util.List;
@@ -182,7 +183,7 @@ public class OMBucketCreateRequest extends OMClientRequest {
String volumeKey = metadataManager.getVolumeKey(volumeName);
String bucketKey = metadataManager.getBucketKey(volumeName, bucketName);
- IOException exception = null;
+ Exception exception = null;
boolean acquiredBucketLock = false;
boolean acquiredVolumeLock = false;
OMClientResponse omClientResponse = null;
@@ -245,7 +246,7 @@ public class OMBucketCreateRequest extends OMClientRequest {
CreateBucketResponse.newBuilder().build());
omClientResponse = new OMBucketCreateResponse(omResponse.build(),
omBucketInfo, omVolumeArgs.copyObject());
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
omClientResponse = new OMBucketCreateResponse(
createErrorOMResponse(omResponse, exception));
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketDeleteRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketDeleteRequest.java
index e76bd7e13d..36105c899f 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketDeleteRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketDeleteRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.bucket;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Iterator;
import java.util.Map;
@@ -101,7 +102,7 @@ public class OMBucketDeleteRequest extends OMClientRequest {
auditMap.put(OzoneConsts.BUCKET, bucketName);
OzoneManagerProtocolProtos.UserInfo userInfo =
getOmRequest().getUserInfo();
- IOException exception = null;
+ Exception exception = null;
boolean acquiredBucketLock = false, acquiredVolumeLock = false;
boolean success = true;
@@ -182,7 +183,7 @@ public class OMBucketDeleteRequest extends OMClientRequest {
// Add to double buffer.
omClientResponse = new OMBucketDeleteResponse(omResponse.build(),
volumeName, bucketName, omVolumeArgs.copyObject());
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
success = false;
exception = ex;
omClientResponse = new OMBucketDeleteResponse(
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketSetOwnerRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketSetOwnerRequest.java
index 4fdbe68959..6c0914bb1d 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketSetOwnerRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketSetOwnerRequest.java
@@ -46,6 +46,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import static
org.apache.hadoop.ozone.om.lock.OzoneManagerLock.Resource.BUCKET_LOCK;
@@ -106,7 +107,7 @@ public class OMBucketSetOwnerRequest extends
OMClientRequest {
AuditLogger auditLogger = ozoneManager.getAuditLogger();
OzoneManagerProtocolProtos.UserInfo userInfo =
getOmRequest().getUserInfo();
- IOException exception = null;
+ Exception exception = null;
boolean acquiredBucketLock = false, success = true;
OMClientResponse omClientResponse = null;
try {
@@ -166,7 +167,7 @@ public class OMBucketSetOwnerRequest extends
OMClientRequest {
SetBucketPropertyResponse.newBuilder().setResponse(true).build());
omClientResponse = new OMBucketSetOwnerResponse(
omResponse.build(), omBucketInfo);
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
success = false;
exception = ex;
omClientResponse = new OMBucketSetOwnerResponse(
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketSetPropertyRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketSetPropertyRequest.java
index 5b4a1bf6fa..6f9fbc8aa7 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketSetPropertyRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/OMBucketSetPropertyRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.bucket;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.List;
import com.google.common.base.Preconditions;
@@ -118,7 +119,7 @@ public class OMBucketSetPropertyRequest extends
OMClientRequest {
AuditLogger auditLogger = ozoneManager.getAuditLogger();
OzoneManagerProtocolProtos.UserInfo userInfo =
getOmRequest().getUserInfo();
- IOException exception = null;
+ Exception exception = null;
boolean acquiredBucketLock = false, success = true;
OMClientResponse omClientResponse = null;
try {
@@ -200,7 +201,7 @@ public class OMBucketSetPropertyRequest extends
OMClientRequest {
SetBucketPropertyResponse.newBuilder().build());
omClientResponse = new OMBucketSetPropertyResponse(
omResponse.build(), omBucketInfo);
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
success = false;
exception = ex;
omClientResponse = new OMBucketSetPropertyResponse(
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketAclRequest.java
index 04648e18f7..4c6c60c73d 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketAclRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.bucket.acl;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.List;
import java.util.Map;
import java.util.function.BiPredicate;
@@ -75,7 +76,7 @@ public abstract class OMBucketAclRequest extends
OMClientRequest {
OMResponse.Builder omResponse = onInit();
OMClientResponse omClientResponse = null;
- IOException exception = null;
+ Exception exception = null;
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
boolean lockAcquired = false;
@@ -134,9 +135,9 @@ public abstract class OMBucketAclRequest extends
OMClientRequest {
omClientResponse = onSuccess(omResponse, omBucketInfo, operationResult);
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
- omClientResponse = onFailure(omResponse, ex);
+ omClientResponse = onFailure(omResponse, exception);
} finally {
addResponseToDoubleBuffer(transactionLogIndex, omClientResponse,
ozoneManagerDoubleBufferHelper);
@@ -196,7 +197,7 @@ public abstract class OMBucketAclRequest extends
OMClientRequest {
* Get the om client response on failure case with lock.
*/
OMClientResponse onFailure(OMResponse.Builder omResponse,
- IOException exception) {
+ Exception exception) {
return new OMBucketAclResponse(
createErrorOMResponse(omResponse, exception));
}
@@ -205,7 +206,7 @@ public abstract class OMBucketAclRequest extends
OMClientRequest {
* Completion hook for final processing before return without lock.
* Usually used for logging without lock and metric update.
*/
- abstract void onComplete(boolean operationResult, IOException exception,
+ abstract void onComplete(boolean operationResult, Exception exception,
OMMetrics omMetrics, AuditLogger auditLogger,
Map<String, String> auditMap);
}
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketAddAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketAddAclRequest.java
index 9b7861f690..0b3cad7ee8 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketAddAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketAddAclRequest.java
@@ -112,7 +112,7 @@ public class OMBucketAddAclRequest extends
OMBucketAclRequest {
}
@Override
- void onComplete(boolean operationResult, IOException exception,
+ void onComplete(boolean operationResult, Exception exception,
OMMetrics omMetrics, AuditLogger auditLogger,
Map<String, String> auditMap) {
auditLog(auditLogger, buildAuditMessage(OMAction.ADD_ACL, auditMap,
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketRemoveAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketRemoveAclRequest.java
index 814fd0403b..52a6d8e00d 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketRemoveAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketRemoveAclRequest.java
@@ -110,7 +110,7 @@ public class OMBucketRemoveAclRequest extends
OMBucketAclRequest {
}
@Override
- void onComplete(boolean operationResult, IOException exception,
+ void onComplete(boolean operationResult, Exception exception,
OMMetrics omMetrics, AuditLogger auditLogger,
Map<String, String> auditMap) {
auditLog(auditLogger, buildAuditMessage(OMAction.REMOVE_ACL, auditMap,
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketSetAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketSetAclRequest.java
index 6132b09f2b..40a119103d 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketSetAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/bucket/acl/OMBucketSetAclRequest.java
@@ -109,7 +109,7 @@ public class OMBucketSetAclRequest extends
OMBucketAclRequest {
}
@Override
- void onComplete(boolean operationResult, IOException exception,
+ void onComplete(boolean operationResult, Exception exception,
OMMetrics omMetrics, AuditLogger auditLogger,
Map<String, String> auditMap) {
auditLog(auditLogger, buildAuditMessage(OMAction.SET_ACL, auditMap,
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 44f45bbdb7..272c80a5bd 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
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.file;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
@@ -151,7 +152,7 @@ public class OMDirectoryCreateRequest extends OMKeyRequest {
Map<String, String> auditMap = buildKeyArgsAuditMap(keyArgs);
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
boolean acquiredLock = false;
- IOException exception = null;
+ Exception exception = null;
OMClientResponse omClientResponse = null;
Result result = Result.FAILURE;
List<OmKeyInfo> missingParentInfos;
@@ -227,7 +228,7 @@ public class OMDirectoryCreateRequest extends OMKeyRequest {
omClientResponse = new OMDirectoryCreateResponse(omResponse.build(),
result);
}
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
omClientResponse = new OMDirectoryCreateResponse(
createErrorOMResponse(omResponse, exception), result);
@@ -308,7 +309,7 @@ public class OMDirectoryCreateRequest extends OMKeyRequest {
private void logResult(CreateDirectoryRequest createDirectoryRequest,
KeyArgs keyArgs, OMMetrics omMetrics, Result result,
- IOException exception, int numMissingParents) {
+ Exception exception, int numMissingParents) {
String volumeName = keyArgs.getVolumeName();
String bucketName = keyArgs.getBucketName();
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMDirectoryCreateRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMDirectoryCreateRequestWithFSO.java
index 61ada892d6..45be065a6f 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMDirectoryCreateRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMDirectoryCreateRequestWithFSO.java
@@ -50,6 +50,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
@@ -103,7 +104,7 @@ public class OMDirectoryCreateRequestWithFSO extends
OMDirectoryCreateRequest {
Map<String, String> auditMap = buildKeyArgsAuditMap(keyArgs);
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
boolean acquiredLock = false;
- IOException exception = null;
+ Exception exception = null;
OMClientResponse omClientResponse = null;
Result result = Result.FAILURE;
List<OmDirectoryInfo> missingParentInfos;
@@ -186,7 +187,7 @@ public class OMDirectoryCreateRequestWithFSO extends
OMDirectoryCreateRequest {
omClientResponse =
new OMDirectoryCreateResponseWithFSO(omResponse.build(), result);
}
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
omClientResponse = new OMDirectoryCreateResponseWithFSO(
createErrorOMResponse(omResponse, exception), result);
@@ -211,7 +212,7 @@ public class OMDirectoryCreateRequestWithFSO extends
OMDirectoryCreateRequest {
private void logResult(CreateDirectoryRequest createDirectoryRequest,
KeyArgs keyArgs, OMMetrics omMetrics, int numKeys,
Result result,
- IOException exception) {
+ Exception exception) {
String volumeName = keyArgs.getVolumeName();
String bucketName = keyArgs.getBucketName();
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMFileCreateRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMFileCreateRequest.java
index f0bc1f5639..73d20b622a 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMFileCreateRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMFileCreateRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.file;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
@@ -199,7 +200,7 @@ public class OMFileCreateRequest extends OMKeyRequest {
OMClientResponse omClientResponse = null;
OMResponse.Builder omResponse = OmResponseUtil.getOMResponseBuilder(
getOmRequest());
- IOException exception = null;
+ Exception exception = null;
Result result = null;
try {
keyArgs = resolveBucketLink(ozoneManager, keyArgs, auditMap);
@@ -303,7 +304,7 @@ public class OMFileCreateRequest extends OMKeyRequest {
omKeyInfo, missingParentInfos, clientID, omBucketInfo.copyObject());
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omMetrics.incNumCreateFileFails();
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMFileCreateRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMFileCreateRequestWithFSO.java
index 792be15f27..7520377377 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMFileCreateRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMFileCreateRequestWithFSO.java
@@ -46,6 +46,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
@@ -106,7 +107,7 @@ public class OMFileCreateRequestWithFSO extends
OMFileCreateRequest {
OMClientResponse omClientResponse = null;
OMResponse.Builder omResponse = OmResponseUtil.getOMResponseBuilder(
getOmRequest());
- IOException exception = null;
+ Exception exception = null;
Result result = null;
try {
keyArgs = resolveBucketLink(ozoneManager, keyArgs, auditMap);
@@ -230,7 +231,7 @@ public class OMFileCreateRequestWithFSO extends
OMFileCreateRequest {
omBucketInfo.copyObject(), volumeId);
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omMetrics.incNumCreateFileFails();
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMRecoverLeaseRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMRecoverLeaseRequest.java
index 8fc9134dde..78376f7700 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMRecoverLeaseRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/file/OMRecoverLeaseRequest.java
@@ -51,6 +51,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Iterator;
@@ -123,7 +124,7 @@ public class OMRecoverLeaseRequest extends OMKeyRequest {
omMetadataManager = ozoneManager.getMetadataManager();
OMClientResponse omClientResponse = null;
- IOException exception = null;
+ Exception exception = null;
// increment metric
OMMetrics omMetrics = ozoneManager.getMetrics();
@@ -155,14 +156,14 @@ public class OMRecoverLeaseRequest extends OMKeyRequest {
omMetrics.incNumRecoverLease();
LOG.debug("Key recovered. Volume:{}, Bucket:{}, Key:{}", volumeName,
bucketName, keyName);
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
LOG.error("Fail for recovering lease. Volume:{}, Bucket:{}, Key:{}",
volumeName, bucketName, keyName, ex);
exception = ex;
omMetrics.incNumRecoverLeaseFails();
omResponse.setCmdType(RecoverLease);
omClientResponse = new OMRecoverLeaseResponse(
- createErrorOMResponse(omResponse, ex), getBucketLayout());
+ createErrorOMResponse(omResponse, exception), getBucketLayout());
} finally {
addResponseToDoubleBuffer(transactionLogIndex, omClientResponse,
ozoneManagerDoubleBufferHelper);
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMAllocateBlockRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMAllocateBlockRequest.java
index 39700a0d6f..753ca9c2d2 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMAllocateBlockRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMAllocateBlockRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.key;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Collections;
import java.util.List;
import java.util.Map;
@@ -177,7 +178,7 @@ public class OMAllocateBlockRequest extends OMKeyRequest {
OMClientResponse omClientResponse = null;
OmKeyInfo openKeyInfo = null;
- IOException exception = null;
+ Exception exception = null;
OmBucketInfo omBucketInfo = null;
boolean acquiredLock = false;
@@ -244,13 +245,13 @@ public class OMAllocateBlockRequest extends OMKeyRequest {
LOG.debug("Allocated block for Volume:{}, Bucket:{}, OpenKey:{}",
volumeName, bucketName, openKeyName);
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
omMetrics.incNumBlockAllocateCallFails();
exception = ex;
omClientResponse = new OMAllocateBlockResponse(createErrorOMResponse(
omResponse, exception), getBucketLayout());
LOG.error("Allocate Block failed. Volume:{}, Bucket:{}, OpenKey:{}. " +
- "Exception:{}", volumeName, bucketName, openKeyName, exception);
+ "Exception:{}", volumeName, bucketName, openKeyName, exception);
} finally {
addResponseToDoubleBuffer(trxnLogIndex, omClientResponse,
omDoubleBufferHelper);
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMAllocateBlockRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMAllocateBlockRequestWithFSO.java
index 8bc98ec4b8..ae389d7ef4 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMAllocateBlockRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMAllocateBlockRequestWithFSO.java
@@ -50,6 +50,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Collections;
@@ -108,7 +109,7 @@ public class OMAllocateBlockRequestWithFSO extends
OMAllocateBlockRequest {
OMClientResponse omClientResponse = null;
OmKeyInfo openKeyInfo = null;
- IOException exception = null;
+ Exception exception = null;
OmBucketInfo omBucketInfo = null;
boolean acquiredLock = false;
@@ -174,7 +175,7 @@ public class OMAllocateBlockRequestWithFSO extends
OMAllocateBlockRequest {
openKeyInfo, omBucketInfo.copyObject(), volumeId);
LOG.debug("Allocated block for Volume:{}, Bucket:{}, OpenKey:{}",
volumeName, bucketName, openKeyName);
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
omMetrics.incNumBlockAllocateCallFails();
exception = ex;
omClientResponse = new OMAllocateBlockResponseWithFSO(
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCommitRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCommitRequest.java
index 69e24bf41e..2994077763 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCommitRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCommitRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.key;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -145,7 +146,7 @@ public class OMKeyCommitRequest extends OMKeyRequest {
OMResponse.Builder omResponse = OmResponseUtil.getOMResponseBuilder(
getOmRequest());
- IOException exception = null;
+ Exception exception = null;
OmKeyInfo omKeyInfo = null;
OmBucketInfo omBucketInfo = null;
OMClientResponse omClientResponse = null;
@@ -326,7 +327,7 @@ public class OMKeyCommitRequest extends OMKeyRequest {
oldKeyVersionsToDeleteMap, isHSync);
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omClientResponse = new OMKeyCommitResponse(createErrorOMResponse(
@@ -391,7 +392,7 @@ public class OMKeyCommitRequest extends OMKeyRequest {
protected void processResult(CommitKeyRequest commitKeyRequest,
String volumeName, String bucketName,
String keyName, OMMetrics omMetrics,
- IOException exception, OmKeyInfo omKeyInfo,
+ Exception exception, OmKeyInfo omKeyInfo,
Result result) {
switch (result) {
case SUCCESS:
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCommitRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCommitRequestWithFSO.java
index 89ed0573e9..5cee1e5958 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCommitRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCommitRequestWithFSO.java
@@ -18,6 +18,7 @@
package org.apache.hadoop.ozone.om.request.key;
+import java.nio.file.InvalidPathException;
import java.util.HashMap;
import com.google.common.annotations.VisibleForTesting;
@@ -94,7 +95,7 @@ public class OMKeyCommitRequestWithFSO extends
OMKeyCommitRequest {
OMResponse.Builder omResponse = OmResponseUtil.getOMResponseBuilder(
getOmRequest());
- IOException exception = null;
+ Exception exception = null;
OmKeyInfo omKeyInfo = null;
OmBucketInfo omBucketInfo = null;
OMClientResponse omClientResponse = null;
@@ -270,7 +271,7 @@ public class OMKeyCommitRequestWithFSO extends
OMKeyCommitRequest {
oldKeyVersionsToDeleteMap, volumeId, isHSync);
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omClientResponse = new OMKeyCommitResponseWithFSO(createErrorOMResponse(
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCreateRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCreateRequest.java
index b40db65696..91d830ffaa 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCreateRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCreateRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.key;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
@@ -204,7 +205,7 @@ public class OMKeyCreateRequest extends OMKeyRequest {
OMClientResponse omClientResponse = null;
OMResponse.Builder omResponse = OmResponseUtil.getOMResponseBuilder(
getOmRequest());
- IOException exception = null;
+ Exception exception = null;
Result result = null;
List<OmKeyInfo> missingParentInfos = null;
int numMissingParents = 0;
@@ -331,7 +332,7 @@ public class OMKeyCreateRequest extends OMKeyRequest {
omKeyInfo, missingParentInfos, clientID, bucketInfo.copyObject());
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omMetrics.incNumKeyAllocateFails();
@@ -359,7 +360,7 @@ public class OMKeyCreateRequest extends OMKeyRequest {
}
protected void logResult(CreateKeyRequest createKeyRequest,
- OMMetrics omMetrics, IOException exception, Result result,
+ OMMetrics omMetrics, Exception exception, Result result,
int numMissingParents) {
switch (result) {
case SUCCESS:
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCreateRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCreateRequestWithFSO.java
index de6ed6b545..2c31afd050 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCreateRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyCreateRequestWithFSO.java
@@ -45,6 +45,7 @@ import org.apache.hadoop.ozone.security.acl.IAccessAuthorizer;
import org.apache.hadoop.ozone.security.acl.OzoneObj;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
@@ -93,7 +94,7 @@ public class OMKeyCreateRequestWithFSO extends
OMKeyCreateRequest {
OMClientResponse omClientResponse = null;
OzoneManagerProtocolProtos.OMResponse.Builder omResponse =
OmResponseUtil.getOMResponseBuilder(getOmRequest());
- IOException exception = null;
+ Exception exception = null;
Result result;
List<OmDirectoryInfo> missingParentInfos;
int numKeysCreated = 0;
@@ -217,7 +218,7 @@ public class OMKeyCreateRequestWithFSO extends
OMKeyCreateRequest {
omBucketInfo.copyObject(), volumeId);
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omMetrics.incNumKeyAllocateFails();
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 87214cd87b..54c2a130a6 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
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.key;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Map;
import org.apache.hadoop.ozone.om.helpers.BucketLayout;
@@ -112,7 +113,7 @@ public class OMKeyDeleteRequest extends OMKeyRequest {
OMResponse.Builder omResponse =
OmResponseUtil.getOMResponseBuilder(getOmRequest());
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
- IOException exception = null;
+ Exception exception = null;
boolean acquiredLock = false;
OMClientResponse omClientResponse = null;
Result result = null;
@@ -168,7 +169,7 @@ public class OMKeyDeleteRequest extends OMKeyRequest {
omBucketInfo.copyObject());
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omClientResponse =
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyDeleteRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyDeleteRequestWithFSO.java
index 9a2ddeb726..319b34cafa 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyDeleteRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyDeleteRequestWithFSO.java
@@ -46,6 +46,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Map;
import static
org.apache.hadoop.ozone.om.exceptions.OMException.ResultCodes.DIRECTORY_NOT_EMPTY;
@@ -89,7 +90,7 @@ public class OMKeyDeleteRequestWithFSO extends
OMKeyDeleteRequest {
OMResponse.Builder omResponse = OmResponseUtil.getOMResponseBuilder(
getOmRequest());
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
- IOException exception = null;
+ Exception exception = null;
boolean acquiredLock = false;
OMClientResponse omClientResponse = null;
Result result = null;
@@ -170,7 +171,7 @@ public class OMKeyDeleteRequestWithFSO extends
OMKeyDeleteRequest {
omBucketInfo.copyObject(), keyStatus.isDirectory(), volumeId);
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omClientResponse = new OMKeyDeleteResponseWithFSO(
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 c4f686d782..7a94de8013 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
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.key;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Map;
import com.google.common.base.Preconditions;
@@ -133,7 +134,7 @@ public class OMKeyRenameRequest extends OMKeyRequest {
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
boolean acquiredLock = false;
OMClientResponse omClientResponse = null;
- IOException exception = null;
+ Exception exception = null;
OmKeyInfo fromKeyValue = null;
String toKey = null, fromKey = null;
Result result = null;
@@ -204,7 +205,7 @@ public class OMKeyRenameRequest extends OMKeyRequest {
fromKeyName, toKeyName, fromKeyValue, getBucketLayout());
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omClientResponse = new OMKeyRenameResponse(createErrorOMResponse(
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyRenameRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyRenameRequestWithFSO.java
index 1fbfdfa341..a98ba2ad90 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyRenameRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeyRenameRequestWithFSO.java
@@ -53,6 +53,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Map;
import static org.apache.hadoop.ozone.OmUtils.normalizeKey;
@@ -98,7 +99,7 @@ public class OMKeyRenameRequestWithFSO extends
OMKeyRenameRequest {
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
boolean acquiredLock = false;
OMClientResponse omClientResponse = null;
- IOException exception = null;
+ Exception exception = null;
OmKeyInfo fromKeyValue;
Result result;
try {
@@ -222,7 +223,7 @@ public class OMKeyRenameRequestWithFSO extends
OMKeyRenameRequest {
result = Result.SUCCESS;
}
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omClientResponse = new OMKeyRenameResponseWithFSO(createErrorOMResponse(
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeySetTimesRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeySetTimesRequest.java
index 6dce387d1b..c056a9c7e0 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeySetTimesRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeySetTimesRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.key;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.LinkedHashMap;
import java.util.Map;
@@ -131,12 +132,12 @@ public class OMKeySetTimesRequest extends OMKeyRequest {
* @return OMClientResponse
*/
protected OMClientResponse onFailure(OMResponse.Builder omResponse,
- IOException exception) {
+ Exception exception) {
return new OMKeySetTimesResponse(createErrorOMResponse(
omResponse, exception), getBucketLayout());
}
- protected void onComplete(Result result, IOException exception,
+ protected void onComplete(Result result, Exception exception,
AuditLogger auditLogger, Map<String, String> auditMap) {
switch (result) {
case SUCCESS:
@@ -177,7 +178,7 @@ public class OMKeySetTimesRequest extends OMKeyRequest {
OMResponse.Builder omResponse = onInit();
OMClientResponse omClientResponse = null;
- IOException exception = null;
+ Exception exception = null;
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
boolean lockAcquired = false;
@@ -222,10 +223,10 @@ public class OMKeySetTimesRequest extends OMKeyRequest {
omClientResponse = onSuccess(omResponse, omKeyInfo, operationResult);
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
- omClientResponse = onFailure(omResponse, ex);
+ omClientResponse = onFailure(omResponse, exception);
} finally {
addResponseToDoubleBuffer(trxnLogIndex, omClientResponse,
omDoubleBufferHelper);
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeySetTimesRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeySetTimesRequestWithFSO.java
index a6b90a00b2..eff1187344 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeySetTimesRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeySetTimesRequestWithFSO.java
@@ -39,6 +39,7 @@ import org.apache.hadoop.ozone.security.acl.IAccessAuthorizer;
import org.apache.hadoop.ozone.security.acl.OzoneObj;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.LinkedHashMap;
import java.util.Map;
@@ -68,7 +69,7 @@ public class OMKeySetTimesRequestWithFSO extends
OMKeySetTimesRequest {
OzoneManagerProtocolProtos.OMResponse.Builder omResponse = onInit();
OMClientResponse omClientResponse = null;
- IOException exception = null;
+ Exception exception = null;
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
boolean lockAcquired = false;
@@ -123,10 +124,10 @@ public class OMKeySetTimesRequestWithFSO extends
OMKeySetTimesRequest {
omClientResponse = onSuccess(omResponse, omKeyInfo, operationResult,
isDirectory, volumeId, bucketId);
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
- omClientResponse = onFailure(omResponse, ex);
+ omClientResponse = onFailure(omResponse, exception);
} finally {
addResponseToDoubleBuffer(trxnLogIndex, omClientResponse,
omDoubleBufferHelper);
@@ -159,7 +160,7 @@ public class OMKeySetTimesRequestWithFSO extends
OMKeySetTimesRequest {
@Override
protected OMClientResponse onFailure(OMResponse.Builder omResponse,
- IOException exception) {
+ Exception exception) {
return new OMKeySetTimesResponseWithFSO(createErrorOMResponse(
omResponse, exception), getBucketLayout());
}
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeysDeleteRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeysDeleteRequest.java
index 8911c68bc7..d22c167e89 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeysDeleteRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeysDeleteRequest.java
@@ -53,6 +53,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
@@ -89,7 +90,7 @@ public class OMKeysDeleteRequest extends OMKeyRequest {
List<String> deleteKeys = new ArrayList<>(deleteKeyArgs.getKeysList());
- IOException exception = null;
+ Exception exception = null;
OMClientResponse omClientResponse = null;
Result result = null;
@@ -184,10 +185,10 @@ public class OMKeysDeleteRequest extends OMKeyRequest {
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
- createErrorOMResponse(omResponse, ex);
+ createErrorOMResponse(omResponse, exception);
// reset deleteKeys as request failed.
deleteKeys = new ArrayList<>();
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeysRenameRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeysRenameRequest.java
index 911c1a73a8..a9c12d444a 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeysRenameRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMKeysRenameRequest.java
@@ -54,6 +54,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
@@ -104,7 +105,7 @@ public class OMKeysRenameRequest extends OMKeyRequest {
getOmRequest());
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
- IOException exception = null;
+ Exception exception = null;
OmKeyInfo fromKeyValue = null;
Result result = null;
Map<String, String> auditMap = new LinkedHashMap<>();
@@ -223,10 +224,10 @@ public class OMKeysRenameRequest extends OMKeyRequest {
newOmRenameKeys);
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
- createErrorOMResponse(omResponse, ex);
+ createErrorOMResponse(omResponse, exception);
omResponse.setRenameKeysResponse(RenameKeysResponse.newBuilder()
.setStatus(renameStatus).addAllUnRenamedKeys(unRenamedKeys).build());
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMOpenKeysDeleteRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMOpenKeysDeleteRequest.java
index 9b4442ca88..bef1193bb3 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMOpenKeysDeleteRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMOpenKeysDeleteRequest.java
@@ -36,6 +36,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Map;
import java.util.HashMap;
import java.util.List;
@@ -82,7 +83,7 @@ public class OMOpenKeysDeleteRequest extends OMKeyRequest {
OzoneManagerProtocolProtos.OMResponse.Builder omResponse =
OmResponseUtil.getOMResponseBuilder(getOmRequest());
- IOException exception = null;
+ Exception exception = null;
OMClientResponse omClientResponse = null;
Result result = null;
Map<String, OmKeyInfo> deletedOpenKeys = new HashMap<>();
@@ -99,7 +100,7 @@ public class OMOpenKeysDeleteRequest extends OMKeyRequest {
deletedOpenKeys, ozoneManager.isRatisEnabled(), getBucketLayout());
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omClientResponse =
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAclRequest.java
index b13ce21ea8..a230dc9c09 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAclRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.key.acl;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Map;
import org.apache.commons.lang3.tuple.Pair;
@@ -70,7 +71,7 @@ public abstract class OMKeyAclRequest extends OMClientRequest
{
OMResponse.Builder omResponse = onInit();
OMClientResponse omClientResponse = null;
- IOException exception = null;
+ Exception exception = null;
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
boolean lockAcquired = false;
@@ -132,10 +133,10 @@ public abstract class OMKeyAclRequest extends
OMClientRequest {
omClientResponse = onSuccess(omResponse, omKeyInfo, operationResult);
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
- omClientResponse = onFailure(omResponse, ex);
+ omClientResponse = onFailure(omResponse, exception);
} finally {
addResponseToDoubleBuffer(trxnLogIndex, omClientResponse,
omDoubleBufferHelper);
@@ -223,7 +224,7 @@ public abstract class OMKeyAclRequest extends
OMClientRequest {
* @return OMClientResponse
*/
OMClientResponse onFailure(OMResponse.Builder omResponse,
- IOException exception) {
+ Exception exception) {
return new OMKeyAclResponse(createErrorOMResponse(omResponse, exception),
getBucketLayout());
}
@@ -235,7 +236,7 @@ public abstract class OMKeyAclRequest extends
OMClientRequest {
* @param exception
*/
abstract void onComplete(Result result, boolean operationResult,
- IOException exception, long trxnLogIndex, AuditLogger auditLogger,
+ Exception exception, long trxnLogIndex, AuditLogger auditLogger,
Map<String, String> auditMap);
/**
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAclRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAclRequestWithFSO.java
index ebd4c5dd8d..1f3ccf1077 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAclRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAclRequestWithFSO.java
@@ -39,6 +39,7 @@ import org.apache.hadoop.ozone.security.acl.IAccessAuthorizer;
import org.apache.hadoop.ozone.security.acl.OzoneObj;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Map;
import static
org.apache.hadoop.ozone.om.exceptions.OMException.ResultCodes.KEY_NOT_FOUND;
@@ -63,7 +64,7 @@ public abstract class OMKeyAclRequestWithFSO extends
OMKeyAclRequest {
OzoneManagerProtocolProtos.OMResponse.Builder omResponse = onInit();
OMClientResponse omClientResponse = null;
- IOException exception = null;
+ Exception exception = null;
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
boolean lockAcquired = false;
@@ -134,10 +135,10 @@ public abstract class OMKeyAclRequestWithFSO extends
OMKeyAclRequest {
omClientResponse = onSuccess(omResponse, omKeyInfo, operationResult,
isDirectory, volumeId, bucketId);
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
- omClientResponse = onFailure(omResponse, ex);
+ omClientResponse = onFailure(omResponse, exception);
} finally {
addResponseToDoubleBuffer(trxnLogIndex, omClientResponse,
omDoubleBufferHelper);
@@ -165,7 +166,7 @@ public abstract class OMKeyAclRequestWithFSO extends
OMKeyAclRequest {
@Override
OMClientResponse onFailure(
OzoneManagerProtocolProtos.OMResponse.Builder omResp,
- IOException exception) {
+ Exception exception) {
return new OMKeyAclResponseWithFSO(
createErrorOMResponse(omResp, exception), getBucketLayout());
}
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAddAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAddAclRequest.java
index febad17a09..f9b25ab8dc 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAddAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAddAclRequest.java
@@ -115,7 +115,7 @@ public class OMKeyAddAclRequest extends OMKeyAclRequest {
@Override
void onComplete(Result result, boolean operationResult,
- IOException exception, long trxnLogIndex, AuditLogger auditLogger,
+ Exception exception, long trxnLogIndex, AuditLogger auditLogger,
Map<String, String> auditMap) {
switch (result) {
case SUCCESS:
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAddAclRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAddAclRequestWithFSO.java
index 8364b65cdb..8c984acf98 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAddAclRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyAddAclRequestWithFSO.java
@@ -99,7 +99,7 @@ public class OMKeyAddAclRequestWithFSO extends
OMKeyAclRequestWithFSO {
}
@Override void onComplete(Result result, boolean operationResult,
- IOException exception, long trxnLogIndex, AuditLogger auditLogger,
+ Exception exception, long trxnLogIndex, AuditLogger auditLogger,
Map<String, String> auditMap) {
switch (result) {
case SUCCESS:
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyRemoveAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyRemoveAclRequest.java
index a97a076cde..8b9ef499ea 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyRemoveAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyRemoveAclRequest.java
@@ -115,7 +115,7 @@ public class OMKeyRemoveAclRequest extends OMKeyAclRequest {
@Override
void onComplete(Result result, boolean operationResult,
- IOException exception, long trxnLogIndex, AuditLogger auditLogger,
+ Exception exception, long trxnLogIndex, AuditLogger auditLogger,
Map<String, String> auditMap) {
switch (result) {
case SUCCESS:
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyRemoveAclRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyRemoveAclRequestWithFSO.java
index a00b365dad..6e7080aac9 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyRemoveAclRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeyRemoveAclRequestWithFSO.java
@@ -107,7 +107,7 @@ public class OMKeyRemoveAclRequestWithFSO extends
OMKeyAclRequestWithFSO {
@Override
void onComplete(Result result, boolean operationResult,
- IOException exception, long trxnLogIndex, AuditLogger auditLogger,
+ Exception exception, long trxnLogIndex, AuditLogger auditLogger,
Map<String, String> auditMap) {
switch (result) {
case SUCCESS:
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeySetAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeySetAclRequest.java
index be8935f867..7abc7a4a62 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeySetAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeySetAclRequest.java
@@ -116,7 +116,7 @@ public class OMKeySetAclRequest extends OMKeyAclRequest {
@Override
void onComplete(Result result, boolean operationResult,
- IOException exception, long trxnLogIndex, AuditLogger auditLogger,
+ Exception exception, long trxnLogIndex, AuditLogger auditLogger,
Map<String, String> auditMap) {
switch (result) {
case SUCCESS:
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeySetAclRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeySetAclRequestWithFSO.java
index 54aa001f6e..b79394ea63 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeySetAclRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/OMKeySetAclRequestWithFSO.java
@@ -105,7 +105,7 @@ public class OMKeySetAclRequestWithFSO extends
OMKeyAclRequestWithFSO {
@Override
void onComplete(Result result, boolean operationResult,
- IOException exception, long trxnLogIndex, AuditLogger auditLogger,
+ Exception exception, long trxnLogIndex, AuditLogger auditLogger,
Map<String, String> auditMap) {
switch (result) {
case SUCCESS:
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixAclRequest.java
index d150993d6a..a246e5ff6b 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixAclRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.key.acl.prefix;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Map;
import org.apache.hadoop.ozone.audit.AuditLogger;
@@ -60,7 +61,7 @@ public abstract class OMPrefixAclRequest extends
OMClientRequest {
OMResponse.Builder omResponse = onInit();
OMClientResponse omClientResponse = null;
- IOException exception = null;
+ Exception exception = null;
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
boolean lockAcquired = false;
@@ -131,10 +132,10 @@ public abstract class OMPrefixAclRequest extends
OMClientRequest {
omClientResponse = onSuccess(omResponse, omPrefixInfo, opResult);
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
- omClientResponse = onFailure(omResponse, ex);
+ omClientResponse = onFailure(omResponse, exception);
} finally {
addResponseToDoubleBuffer(trxnLogIndex, omClientResponse,
omDoubleBufferHelper);
@@ -184,7 +185,7 @@ public abstract class OMPrefixAclRequest extends
OMClientRequest {
* @return OMClientResponse
*/
abstract OMClientResponse onFailure(OMResponse.Builder omResponse,
- IOException exception);
+ Exception exception);
/**
* Completion hook for final processing before return without lock.
@@ -193,7 +194,7 @@ public abstract class OMPrefixAclRequest extends
OMClientRequest {
* @param exception
* @param omMetrics
*/
- abstract void onComplete(boolean operationResult, IOException exception,
+ abstract void onComplete(boolean operationResult, Exception exception,
OMMetrics omMetrics, Result result, long trxnLogIndex,
AuditLogger auditLogger, Map<String, String> auditMap);
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixAddAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixAddAclRequest.java
index 2a5efe1126..fe75928795 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixAddAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixAddAclRequest.java
@@ -90,13 +90,13 @@ public class OMPrefixAddAclRequest extends
OMPrefixAclRequest {
@Override
OMClientResponse onFailure(OMResponse.Builder omResponse,
- IOException exception) {
+ Exception exception) {
return new OMPrefixAclResponse(createErrorOMResponse(omResponse,
exception));
}
@Override
- void onComplete(boolean operationResult, IOException exception,
+ void onComplete(boolean operationResult, Exception exception,
OMMetrics omMetrics, Result result, long trxnLogIndex,
AuditLogger auditLogger, Map<String, String> auditMap) {
switch (result) {
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixRemoveAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixRemoveAclRequest.java
index 4131d58ba2..67b7041216 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixRemoveAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixRemoveAclRequest.java
@@ -87,13 +87,13 @@ public class OMPrefixRemoveAclRequest extends
OMPrefixAclRequest {
@Override
OMClientResponse onFailure(OMResponse.Builder omResponse,
- IOException exception) {
+ Exception exception) {
return new OMPrefixAclResponse(createErrorOMResponse(omResponse,
exception));
}
@Override
- void onComplete(boolean operationResult, IOException exception,
+ void onComplete(boolean operationResult, Exception exception,
OMMetrics omMetrics, Result result, long trxnLogIndex,
AuditLogger auditLogger, Map<String, String> auditMap) {
switch (result) {
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixSetAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixSetAclRequest.java
index 87e7073a3d..6e93e8ffe5 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixSetAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/acl/prefix/OMPrefixSetAclRequest.java
@@ -88,13 +88,13 @@ public class OMPrefixSetAclRequest extends
OMPrefixAclRequest {
@Override
OMClientResponse onFailure(OMResponse.Builder omResponse,
- IOException exception) {
+ Exception exception) {
return new OMPrefixAclResponse(createErrorOMResponse(omResponse,
exception));
}
@Override
- void onComplete(boolean operationResult, IOException exception,
+ void onComplete(boolean operationResult, Exception exception,
OMMetrics omMetrics, Result result, long trxnLogIndex,
AuditLogger auditLogger, Map<String, String> auditMap) {
switch (result) {
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3InitiateMultipartUploadRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3InitiateMultipartUploadRequest.java
index 409a5f2f18..b271837806 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3InitiateMultipartUploadRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3InitiateMultipartUploadRequest.java
@@ -58,6 +58,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.Collections;
@@ -130,7 +131,7 @@ public class S3InitiateMultipartUploadRequest extends
OMKeyRequest {
ozoneManager.getMetrics().incNumInitiateMultipartUploads();
boolean acquiredBucketLock = false;
- IOException exception = null;
+ Exception exception = null;
OmMultipartKeyInfo multipartKeyInfo = null;
OmKeyInfo omKeyInfo = null;
Result result = null;
@@ -238,7 +239,7 @@ public class S3InitiateMultipartUploadRequest extends
OMKeyRequest {
.build(), multipartKeyInfo, omKeyInfo, getBucketLayout());
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omClientResponse = new S3InitiateMultipartUploadResponse(
@@ -261,7 +262,7 @@ public class S3InitiateMultipartUploadRequest extends
OMKeyRequest {
protected void logResult(OzoneManager ozoneManager,
MultipartInfoInitiateRequest multipartInfoInitiateRequest,
Map<String, String> auditMap, String volumeName, String bucketName,
- String keyName, IOException exception, Result result) {
+ String keyName, Exception exception, Result result) {
// audit log
auditLog(ozoneManager.getAuditLogger(), buildAuditMessage(
OMAction.INITIATE_MULTIPART_UPLOAD, auditMap,
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3InitiateMultipartUploadRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3InitiateMultipartUploadRequestWithFSO.java
index 1cf0c60b66..3df957d60f 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3InitiateMultipartUploadRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3InitiateMultipartUploadRequestWithFSO.java
@@ -44,6 +44,7 @@ import
org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos.OMRespo
import org.apache.hadoop.ozone.protocolPB.OMPBHelper;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.Collections;
@@ -89,7 +90,7 @@ public class S3InitiateMultipartUploadRequestWithFSO
ozoneManager.getMetrics().incNumInitiateMultipartUploads();
boolean acquiredBucketLock = false;
- IOException exception = null;
+ Exception exception = null;
OmMultipartKeyInfo multipartKeyInfo = null;
OmKeyInfo omKeyInfo = null;
List<OmDirectoryInfo> missingParentInfos;
@@ -225,7 +226,7 @@ public class S3InitiateMultipartUploadRequestWithFSO
bucketInfo.copyObject());
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omClientResponse = new S3InitiateMultipartUploadResponseWithFSO(
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadAbortRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadAbortRequest.java
index df2a31825e..0b13b40295 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadAbortRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadAbortRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.s3.multipart;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Map;
import org.apache.hadoop.ozone.om.helpers.BucketLayout;
@@ -112,7 +113,7 @@ public class S3MultipartUploadAbortRequest extends
OMKeyRequest {
ozoneManager.getMetrics().incNumAbortMultipartUploads();
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
boolean acquiredLock = false;
- IOException exception = null;
+ Exception exception = null;
OmMultipartKeyInfo multipartKeyInfo = null;
String multipartKey = null;
OMResponse.Builder omResponse = OmResponseUtil.getOMResponseBuilder(
@@ -190,7 +191,7 @@ public class S3MultipartUploadAbortRequest extends
OMKeyRequest {
multipartKey, multipartOpenKey, omResponse, omBucketInfo);
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omClientResponse = getOmClientResponse(exception, omResponse);
@@ -228,7 +229,7 @@ public class S3MultipartUploadAbortRequest extends
OMKeyRequest {
return omClientResponse;
}
- protected OMClientResponse getOmClientResponse(IOException exception,
+ protected OMClientResponse getOmClientResponse(Exception exception,
OMResponse.Builder omResponse) {
return new S3MultipartUploadAbortResponse(createErrorOMResponse(omResponse,
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadAbortRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadAbortRequestWithFSO.java
index fbbb994bea..3fad0f1245 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadAbortRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadAbortRequestWithFSO.java
@@ -28,8 +28,6 @@ import
org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos.Multipa
import
org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos.OMRequest;
import
org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos.OMResponse;
-import java.io.IOException;
-
/**
* Handles Abort of multipart upload request.
*/
@@ -42,7 +40,7 @@ public class S3MultipartUploadAbortRequestWithFSO
}
@Override
- protected OMClientResponse getOmClientResponse(IOException exception,
+ protected OMClientResponse getOmClientResponse(Exception exception,
OMResponse.Builder omResponse) {
return new S3MultipartUploadAbortResponseWithFSO(createErrorOMResponse(
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCommitPartRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCommitPartRequest.java
index fbd2f4e20e..b2d794b1d7 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCommitPartRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCommitPartRequest.java
@@ -60,6 +60,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Map;
import java.util.stream.Collectors;
@@ -114,7 +115,7 @@ public class S3MultipartUploadCommitPartRequest extends
OMKeyRequest {
boolean acquiredLock = false;
- IOException exception = null;
+ Exception exception = null;
String partName = null;
OMResponse.Builder omResponse = OmResponseUtil.getOMResponseBuilder(
getOmRequest());
@@ -244,7 +245,7 @@ public class S3MultipartUploadCommitPartRequest extends
OMKeyRequest {
omBucketInfo.copyObject());
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omClientResponse =
@@ -304,7 +305,7 @@ public class S3MultipartUploadCommitPartRequest extends
OMKeyRequest {
private void logResult(OzoneManager ozoneManager,
MultipartCommitUploadPartRequest multipartCommitUploadPartRequest,
KeyArgs keyArgs, Map<String, String> auditMap, String volumeName,
- String bucketName, String keyName, IOException exception,
+ String bucketName, String keyName, Exception exception,
String partName, Result result) {
// audit log
// Add MPU related information.
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCompleteRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCompleteRequest.java
index ab6d6f8b95..34ff8d6ef6 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCompleteRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCompleteRequest.java
@@ -22,6 +22,7 @@ import org.apache.commons.codec.digest.DigestUtils;
import org.apache.commons.lang3.StringUtils;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@@ -129,7 +130,7 @@ public class S3MultipartUploadCompleteRequest extends
OMKeyRequest {
OMResponse.Builder omResponse = OmResponseUtil.getOMResponseBuilder(
getOmRequest());
OMClientResponse omClientResponse = null;
- IOException exception = null;
+ Exception exception = null;
Result result = null;
try {
keyArgs = resolveBucketLink(ozoneManager, keyArgs, auditMap);
@@ -268,7 +269,7 @@ public class S3MultipartUploadCompleteRequest extends
OMKeyRequest {
OMException.ResultCodes.INVALID_REQUEST);
}
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omClientResponse = getOmClientResponse(omResponse, exception);
@@ -288,7 +289,7 @@ public class S3MultipartUploadCompleteRequest extends
OMKeyRequest {
}
protected S3MultipartUploadCompleteResponse getOmClientResponse(
- OMResponse.Builder omResponse, IOException exception) {
+ OMResponse.Builder omResponse, Exception exception) {
return new S3MultipartUploadCompleteResponse(
createErrorOMResponse(omResponse, exception), getBucketLayout());
}
@@ -328,7 +329,7 @@ public class S3MultipartUploadCompleteRequest extends
OMKeyRequest {
MultipartUploadCompleteRequest multipartUploadCompleteRequest,
List<OzoneManagerProtocolProtos.Part> partsList,
Map<String, String> auditMap, String volumeName,
- String bucketName, String keyName, IOException exception,
+ String bucketName, String keyName, Exception exception,
Result result) {
auditMap.put(OzoneConsts.MULTIPART_LIST, partsList.toString()
.replaceAll("\\n", " "));
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCompleteRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCompleteRequestWithFSO.java
index 80ac2de8d3..35867bb84e 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCompleteRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3MultipartUploadCompleteRequestWithFSO.java
@@ -151,7 +151,7 @@ public class S3MultipartUploadCompleteRequestWithFSO
@Override
protected S3MultipartUploadCompleteResponse getOmClientResponse(
OzoneManagerProtocolProtos.OMResponse.Builder omResponse,
- IOException exception) {
+ Exception exception) {
return new S3MultipartUploadCompleteResponseWithFSO(
createErrorOMResponse(omResponse, exception), getBucketLayout());
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/security/S3GetSecretRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/security/S3GetSecretRequest.java
index 7f55db1066..978e8f7791 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/security/S3GetSecretRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/security/S3GetSecretRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.s3.security;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.atomic.AtomicReference;
@@ -132,7 +133,7 @@ public class S3GetSecretRequest extends OMClientRequest {
OMClientResponse omClientResponse = null;
OMResponse.Builder omResponse = OmResponseUtil.getOMResponseBuilder(
getOmRequest());
- IOException exception = null;
+ Exception exception = null;
final GetS3SecretRequest getS3SecretRequest =
getOmRequest().getGetS3SecretRequest();
@@ -207,11 +208,11 @@ public class S3GetSecretRequest extends OMClientRequest {
});
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
omClientResponse = new S3GetSecretResponse(null,
ozoneManager.getS3SecretManager(),
- createErrorOMResponse(omResponse, ex));
+ createErrorOMResponse(omResponse, exception));
} finally {
addResponseToDoubleBuffer(transactionLogIndex, omClientResponse,
ozoneManagerDoubleBufferHelper);
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantAssignAdminRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantAssignAdminRequest.java
index 874fc06eb4..379ace4ccc 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantAssignAdminRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantAssignAdminRequest.java
@@ -45,6 +45,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.HashMap;
import java.util.Map;
@@ -174,7 +175,7 @@ public class OMTenantAssignAdminRequest extends
OMClientRequest {
final boolean delegated = request.getDelegated();
boolean acquiredVolumeLock = false;
- IOException exception = null;
+ Exception exception = null;
String volumeName = null;
@@ -216,11 +217,11 @@ public class OMTenantAssignAdminRequest extends
OMClientRequest {
omClientResponse = new OMTenantAssignAdminResponse(omResponse.build(),
accessId, newOmDBAccessIdInfo);
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
// Prepare omClientResponse
omClientResponse = new OMTenantAssignAdminResponse(
- createErrorOMResponse(omResponse, ex));
+ createErrorOMResponse(omResponse, exception));
} finally {
addResponseToDoubleBuffer(transactionLogIndex, omClientResponse,
ozoneManagerDoubleBufferHelper);
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantAssignUserAccessIdRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantAssignUserAccessIdRequest.java
index 3fdc1323ff..4b85cb228f 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantAssignUserAccessIdRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantAssignUserAccessIdRequest.java
@@ -50,6 +50,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
@@ -221,7 +222,7 @@ public class OMTenantAssignUserAccessIdRequest extends
OMClientRequest {
final String userPrincipal = request.getUserPrincipal();
Preconditions.checkState(accessId.equals(request.getAccessId()));
- IOException exception = null;
+ Exception exception = null;
String volumeName = null;
@@ -327,12 +328,12 @@ public class OMTenantAssignUserAccessIdRequest extends
OMClientRequest {
omResponse.build(), s3SecretValue, userPrincipal,
accessId, omDBAccessIdInfo, principalInfo,
ozoneManager.getS3SecretManager());
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
omResponse.setTenantAssignUserAccessIdResponse(
TenantAssignUserAccessIdResponse.newBuilder().build());
omClientResponse = new OMTenantAssignUserAccessIdResponse(
- createErrorOMResponse(omResponse, ex));
+ createErrorOMResponse(omResponse, exception));
} finally {
addResponseToDoubleBuffer(transactionLogIndex, omClientResponse,
ozoneManagerDoubleBufferHelper);
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 d61ad27d27..d176bdf51d 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
@@ -53,6 +53,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.HashMap;
import java.util.Map;
@@ -247,7 +248,7 @@ public class OMTenantCreateRequest extends OMVolumeRequest {
"CreateTenantRequest's volumeName value should match VolumeInfo's");
final String dbVolumeKey = omMetadataManager.getVolumeKey(volumeName);
- IOException exception = null;
+ Exception exception = null;
try {
// Check ACL: requires volume CREATE permission.
@@ -349,10 +350,10 @@ public class OMTenantCreateRequest extends
OMVolumeRequest {
omClientResponse = new OMTenantCreateResponse(omResponse.build(),
omVolumeArgs, volumeList, omDBTenantState);
- } catch (IOException ex) {
- omClientResponse = new OMTenantCreateResponse(
- createErrorOMResponse(omResponse, ex));
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
+ omClientResponse = new OMTenantCreateResponse(
+ createErrorOMResponse(omResponse, exception));
} finally {
addResponseToDoubleBuffer(transactionLogIndex, omClientResponse,
ozoneManagerDoubleBufferHelper);
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantDeleteRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantDeleteRequest.java
index 84962eb954..9dba156887 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantDeleteRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantDeleteRequest.java
@@ -48,6 +48,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.HashMap;
import java.util.Map;
@@ -123,7 +124,7 @@ public class OMTenantDeleteRequest extends OMVolumeRequest {
String volumeName = null;
boolean decVolumeRefCount = true;
- IOException exception = null;
+ Exception exception = null;
OmVolumeArgs omVolumeArgs = null;
try {
@@ -206,7 +207,7 @@ public class OMTenantDeleteRequest extends OMVolumeRequest {
omResponse.setDeleteTenantResponse(deleteTenantResponse).build(),
volumeName, omVolumeArgs, tenantId);
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
omClientResponse = new OMTenantDeleteResponse(
createErrorOMResponse(omResponse, exception));
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantRevokeAdminRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantRevokeAdminRequest.java
index 44e03ad2f8..b78c959c50 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantRevokeAdminRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantRevokeAdminRequest.java
@@ -45,6 +45,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.HashMap;
import java.util.Map;
@@ -164,7 +165,7 @@ public class OMTenantRevokeAdminRequest extends
OMClientRequest {
final String tenantId = request.getTenantId();
boolean acquiredVolumeLock = false;
- IOException exception = null;
+ Exception exception = null;
String volumeName = null;
@@ -206,11 +207,11 @@ public class OMTenantRevokeAdminRequest extends
OMClientRequest {
omClientResponse = new OMTenantRevokeAdminResponse(omResponse.build(),
accessId, newOmDBAccessIdInfo);
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
// Prepare omClientResponse
omClientResponse = new OMTenantRevokeAdminResponse(
- createErrorOMResponse(omResponse, ex));
+ createErrorOMResponse(omResponse, exception));
} finally {
addResponseToDoubleBuffer(transactionLogIndex, omClientResponse,
ozoneManagerDoubleBufferHelper);
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantRevokeUserAccessIdRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantRevokeUserAccessIdRequest.java
index b82d8c38b8..dffcaa2d65 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantRevokeUserAccessIdRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantRevokeUserAccessIdRequest.java
@@ -49,6 +49,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.HashMap;
import java.util.Map;
@@ -174,7 +175,7 @@ public class OMTenantRevokeUserAccessIdRequest extends
OMClientRequest {
final String tenantId = request.getTenantId();
boolean acquiredVolumeLock = false;
- IOException exception = null;
+ Exception exception = null;
String userPrincipal = null;
@@ -223,11 +224,11 @@ public class OMTenantRevokeUserAccessIdRequest extends
OMClientRequest {
omResponse.build(), accessId, userPrincipal, principalInfo,
s3SecretManager);
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
// Prepare omClientResponse
omClientResponse = new OMTenantRevokeUserAccessIdResponse(
- createErrorOMResponse(omResponse, ex));
+ createErrorOMResponse(omResponse, exception));
} finally {
addResponseToDoubleBuffer(transactionLogIndex, omClientResponse,
ozoneManagerDoubleBufferHelper);
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/security/OMCancelDelegationTokenRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/security/OMCancelDelegationTokenRequest.java
index c4f3afac76..4558d5857b 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/security/OMCancelDelegationTokenRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/security/OMCancelDelegationTokenRequest.java
@@ -41,6 +41,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Map;
import static org.apache.hadoop.ozone.om.OzoneManagerUtils.buildTokenAuditMap;
@@ -98,7 +99,7 @@ public class OMCancelDelegationTokenRequest extends
OMClientRequest {
OMResponse.Builder omResponse = OmResponseUtil.getOMResponseBuilder(
getOmRequest());
OzoneTokenIdentifier ozoneTokenIdentifier = null;
- IOException exception = null;
+ Exception exception = null;
try {
ozoneTokenIdentifier =
@@ -118,11 +119,11 @@ public class OMCancelDelegationTokenRequest extends
OMClientRequest {
CancelDelegationTokenResponseProto.newBuilder().setResponse(
SecurityProtos.CancelDelegationTokenResponseProto
.newBuilder())).build());
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
LOG.error("Error in cancel DelegationToken {}", ozoneTokenIdentifier,
ex);
exception = ex;
omClientResponse = new OMCancelDelegationTokenResponse(null,
- createErrorOMResponse(omResponse, ex));
+ createErrorOMResponse(omResponse, exception));
} finally {
addResponseToDoubleBuffer(transactionLogIndex, omClientResponse,
ozoneManagerDoubleBufferHelper);
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/security/OMGetDelegationTokenRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/security/OMGetDelegationTokenRequest.java
index 9646612598..9b0cbad9e2 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/security/OMGetDelegationTokenRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/security/OMGetDelegationTokenRequest.java
@@ -44,6 +44,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.LinkedHashMap;
import java.util.Map;
@@ -165,7 +166,7 @@ public class OMGetDelegationTokenRequest extends
OMClientRequest {
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
- IOException exception = null;
+ Exception exception = null;
try {
OzoneTokenIdentifier ozoneTokenIdentifier = OzoneTokenIdentifier.
@@ -191,12 +192,12 @@ public class OMGetDelegationTokenRequest extends
OMClientRequest {
omResponse.setGetDelegationTokenResponse(
updateGetDelegationTokenRequest
.getGetDelegationTokenResponse()).build());
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
LOG.error("Error in Updating DelegationToken {}",
ozoneTokenIdentifierToken, ex);
exception = ex;
omClientResponse = new OMGetDelegationTokenResponse(null, -1L,
- createErrorOMResponse(omResponse, ex));
+ createErrorOMResponse(omResponse, exception));
} finally {
addResponseToDoubleBuffer(transactionLogIndex, omClientResponse,
ozoneManagerDoubleBufferHelper);
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/security/OMRenewDelegationTokenRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/security/OMRenewDelegationTokenRequest.java
index ec22173f21..ffd164cd22 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/security/OMRenewDelegationTokenRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/security/OMRenewDelegationTokenRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.security;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Map;
import org.apache.hadoop.ozone.OzoneConsts;
@@ -149,7 +150,7 @@ public class OMRenewDelegationTokenRequest extends
OMClientRequest {
OMClientResponse omClientResponse = null;
OMResponse.Builder omResponse = OmResponseUtil.getOMResponseBuilder(
getOmRequest());
- IOException exception = null;
+ Exception exception = null;
try {
@@ -174,12 +175,12 @@ public class OMRenewDelegationTokenRequest extends
OMClientRequest {
omResponse.setRenewDelegationTokenResponse(
updateRenewDelegationTokenRequest
.getRenewDelegationTokenResponse()).build());
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
LOG.error("Error in Updating Renew DelegationToken {}",
ozoneTokenIdentifierToken, ex);
exception = ex;
omClientResponse = new OMRenewDelegationTokenResponse(null, -1L,
- createErrorOMResponse(omResponse, ex));
+ createErrorOMResponse(omResponse, exception));
} finally {
addResponseToDoubleBuffer(transactionLogIndex, omClientResponse,
ozoneManagerDoubleBufferHelper);
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotCreateRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotCreateRequest.java
index 59426a2bf2..0dcce3cf11 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotCreateRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotCreateRequest.java
@@ -56,6 +56,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.UUID;
import static org.apache.hadoop.hdds.HddsUtils.fromProtobuf;
@@ -131,7 +132,7 @@ public class OMSnapshotCreateRequest extends
OMClientRequest {
omMetrics.incNumSnapshotCreates();
boolean acquiredBucketLock = false, acquiredSnapshotLock = false;
- IOException exception = null;
+ Exception exception = null;
OmMetadataManagerImpl omMetadataManager = (OmMetadataManagerImpl)
ozoneManager.getMetadataManager();
@@ -190,7 +191,7 @@ public class OMSnapshotCreateRequest extends
OMClientRequest {
.setSnapshotInfo(snapshotInfo.getProtobuf()));
omClientResponse = new OMSnapshotCreateResponse(
omResponse.build(), snapshotInfo);
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
omClientResponse = new OMSnapshotCreateResponse(
createErrorOMResponse(omResponse, exception));
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotDeleteRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotDeleteRequest.java
index e2af6ffc5b..3c0e20bb19 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotDeleteRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotDeleteRequest.java
@@ -48,6 +48,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import static
org.apache.hadoop.ozone.om.exceptions.OMException.ResultCodes.FILE_NOT_FOUND;
import static
org.apache.hadoop.ozone.om.lock.OzoneManagerLock.Resource.BUCKET_LOCK;
@@ -116,7 +117,7 @@ public class OMSnapshotDeleteRequest extends
OMClientRequest {
boolean acquiredBucketLock = false;
boolean acquiredSnapshotLock = false;
- IOException exception = null;
+ Exception exception = null;
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
OMResponse.Builder omResponse = OmResponseUtil.getOMResponseBuilder(
@@ -191,7 +192,7 @@ public class OMSnapshotDeleteRequest extends
OMClientRequest {
// No longer need to invalidate the entry in the snapshot cache here.
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
omClientResponse = new OMSnapshotDeleteResponse(
createErrorOMResponse(omResponse, exception));
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeCreateRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeCreateRequest.java
index aa6cec9600..0606dd663e 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeCreateRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeCreateRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.volume;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Map;
import com.google.common.annotations.VisibleForTesting;
@@ -115,7 +116,7 @@ public class OMVolumeCreateRequest extends OMVolumeRequest {
// Doing this here, so we can do protobuf conversion outside of lock.
boolean acquiredVolumeLock = false;
boolean acquiredUserLock = false;
- IOException exception = null;
+ Exception exception = null;
OMClientResponse omClientResponse = null;
OmVolumeArgs omVolumeArgs = null;
Map<String, String> auditMap = null;
@@ -168,7 +169,7 @@ public class OMVolumeCreateRequest extends OMVolumeRequest {
LOG.debug("volume:{} successfully created", omVolumeArgs.getVolume());
}
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
omClientResponse = new OMVolumeCreateResponse(
createErrorOMResponse(omResponse, exception));
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeDeleteRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeDeleteRequest.java
index a6f20d504b..c3a2c66c4d 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeDeleteRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeDeleteRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.volume;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import com.google.common.base.Preconditions;
import org.apache.hadoop.ozone.om.ratis.utils.OzoneManagerDoubleBufferHelper;
@@ -83,7 +84,7 @@ public class OMVolumeDeleteRequest extends OMVolumeRequest {
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
boolean acquiredUserLock = false;
boolean acquiredVolumeLock = false;
- IOException exception = null;
+ Exception exception = null;
String owner = null;
OMClientResponse omClientResponse = null;
try {
@@ -140,7 +141,7 @@ public class OMVolumeDeleteRequest extends OMVolumeRequest {
omClientResponse = new OMVolumeDeleteResponse(omResponse.build(),
volume, owner, newVolumeList);
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
omClientResponse = new OMVolumeDeleteResponse(
createErrorOMResponse(omResponse, exception));
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeSetOwnerRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeSetOwnerRequest.java
index 6ea5f7098a..5955124a40 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeSetOwnerRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeSetOwnerRequest.java
@@ -45,6 +45,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.Map;
import static
org.apache.hadoop.ozone.om.lock.OzoneManagerLock.Resource.VOLUME_LOCK;
@@ -105,7 +106,7 @@ public class OMVolumeSetOwnerRequest extends
OMVolumeRequest {
boolean acquiredUserLocks = false;
boolean acquiredVolumeLock = false;
- IOException exception = null;
+ Exception exception = null;
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
String oldOwner = null;
OMClientResponse omClientResponse = null;
@@ -176,7 +177,7 @@ public class OMVolumeSetOwnerRequest extends
OMVolumeRequest {
SetVolumePropertyResponse.newBuilder().setResponse(true).build());
omClientResponse = new OMVolumeSetOwnerResponse(omResponse.build(),
oldOwner, oldOwnerVolumeList, newOwnerVolumeList, omVolumeArgs);
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
omClientResponse = new OMVolumeSetOwnerResponse(
createErrorOMResponse(omResponse, exception));
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeSetQuotaRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeSetQuotaRequest.java
index 5d31882cd6..ed18318b1d 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeSetQuotaRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/OMVolumeSetQuotaRequest.java
@@ -19,6 +19,7 @@
package org.apache.hadoop.ozone.om.request.volume;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.List;
import java.util.Map;
@@ -112,7 +113,7 @@ public class OMVolumeSetQuotaRequest extends
OMVolumeRequest {
String.valueOf(setVolumePropertyRequest.getQuotaInBytes()));
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
- IOException exception = null;
+ Exception exception = null;
boolean acquireVolumeLock = false;
OMClientResponse omClientResponse = null;
try {
@@ -156,7 +157,7 @@ public class OMVolumeSetQuotaRequest extends
OMVolumeRequest {
SetVolumePropertyResponse.newBuilder().build());
omClientResponse = new OMVolumeSetQuotaResponse(omResponse.build(),
omVolumeArgs);
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
exception = ex;
omClientResponse = new OMVolumeSetQuotaResponse(
createErrorOMResponse(omResponse, exception));
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeAclRequest.java
index f710e43611..5c36e84926 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeAclRequest.java
@@ -38,6 +38,7 @@ import org.apache.hadoop.hdds.utils.db.cache.CacheValue;
import org.apache.ratis.util.function.CheckedBiConsumer;
import java.io.IOException;
+import java.nio.file.InvalidPathException;
import java.util.List;
import java.util.Map;
@@ -76,7 +77,7 @@ public abstract class OMVolumeAclRequest extends
OMVolumeRequest {
OMResponse.Builder omResponse = onInit();
OMClientResponse omClientResponse = null;
- IOException exception = null;
+ Exception exception = null;
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
boolean lockAcquired = false;
@@ -126,11 +127,11 @@ public abstract class OMVolumeAclRequest extends
OMVolumeRequest {
omClientResponse = onSuccess(omResponse, omVolumeArgs, applyAcl);
result = Result.SUCCESS;
- } catch (IOException ex) {
+ } catch (IOException | InvalidPathException ex) {
result = Result.FAILURE;
exception = ex;
omMetrics.incNumVolumeUpdateFails();
- omClientResponse = onFailure(omResponse, ex);
+ omClientResponse = onFailure(omResponse, exception);
} finally {
addResponseToDoubleBuffer(trxnLogIndex, omClientResponse,
omDoubleBufferHelper);
@@ -190,12 +191,12 @@ public abstract class OMVolumeAclRequest extends
OMVolumeRequest {
* Get the OM client response on failure case with lock.
*/
abstract OMClientResponse onFailure(OMResponse.Builder omResponse,
- IOException ex);
+ Exception ex);
/**
* Completion hook for final processing before return without lock.
* Usually used for logging without lock.
*/
- abstract void onComplete(Result result, IOException ex, long trxnLogIndex,
+ abstract void onComplete(Result result, Exception ex, long trxnLogIndex,
AuditLogger auditLogger, Map<String, String> auditMap);
}
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeAddAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeAddAclRequest.java
index 359603efb9..5c0632e6b3 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeAddAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeAddAclRequest.java
@@ -113,12 +113,12 @@ public class OMVolumeAddAclRequest extends
OMVolumeAclRequest {
@Override
OMClientResponse onFailure(OMResponse.Builder omResponse,
- IOException ex) {
+ Exception ex) {
return new OMVolumeAclOpResponse(createErrorOMResponse(omResponse, ex));
}
@Override
- void onComplete(Result result, IOException ex, long trxnLogIndex,
+ void onComplete(Result result, Exception ex, long trxnLogIndex,
AuditLogger auditLogger, Map<String, String> auditMap) {
switch (result) {
case SUCCESS:
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeRemoveAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeRemoveAclRequest.java
index 3981d3a2a2..b865ca78b8 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeRemoveAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeRemoveAclRequest.java
@@ -113,12 +113,12 @@ public class OMVolumeRemoveAclRequest extends
OMVolumeAclRequest {
@Override
OMClientResponse onFailure(OMResponse.Builder omResponse,
- IOException ex) {
+ Exception ex) {
return new OMVolumeAclOpResponse(createErrorOMResponse(omResponse, ex));
}
@Override
- void onComplete(Result result, IOException ex, long trxnLogIndex,
+ void onComplete(Result result, Exception ex, long trxnLogIndex,
AuditLogger auditLogger, Map<String, String> auditMap) {
switch (result) {
case SUCCESS:
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeSetAclRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeSetAclRequest.java
index 0ca2b40c89..0bb240785a 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeSetAclRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/volume/acl/OMVolumeSetAclRequest.java
@@ -110,12 +110,12 @@ public class OMVolumeSetAclRequest extends
OMVolumeAclRequest {
@Override
OMClientResponse onFailure(OMResponse.Builder omResponse,
- IOException ex) {
+ Exception ex) {
return new OMVolumeAclOpResponse(createErrorOMResponse(omResponse, ex));
}
@Override
- void onComplete(Result result, IOException ex, long trxnLogIndex,
+ void onComplete(Result result, Exception ex, long trxnLogIndex,
AuditLogger auditLogger, Map<String, String> auditMap) {
switch (result) {
case SUCCESS:
diff --git
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/request/key/TestOMKeyCreateRequest.java
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/request/key/TestOMKeyCreateRequest.java
index 943d64e2fe..45ac1c4334 100644
---
a/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/request/key/TestOMKeyCreateRequest.java
+++
b/hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/request/key/TestOMKeyCreateRequest.java
@@ -35,6 +35,8 @@ import org.apache.hadoop.hdds.client.ReplicationConfig;
import org.apache.hadoop.hdds.conf.OzoneConfiguration;
import org.apache.hadoop.ozone.OzoneAcl;
import org.apache.hadoop.ozone.OzoneConsts;
+import org.apache.hadoop.ozone.om.PrefixManager;
+import org.apache.hadoop.ozone.om.PrefixManagerImpl;
import org.apache.hadoop.ozone.om.exceptions.OMException;
import org.apache.hadoop.ozone.om.helpers.BucketLayout;
import org.apache.hadoop.ozone.om.helpers.OmBucketInfo;
@@ -427,6 +429,53 @@ public class TestOMKeyCreateRequest extends
TestOMKeyRequest {
}
+
+ @Test
+ public void testValidateAndUpdateCacheWithInvalidPath() throws Exception {
+
+ PrefixManager prefixManager = new PrefixManagerImpl(
+ ozoneManager.getMetadataManager(), true);
+ when(ozoneManager.getPrefixManager()).thenReturn(prefixManager);
+ when(ozoneManager.getOzoneLockProvider()).thenReturn(
+ new OzoneLockProvider(keyPathLockEnabled, enableFileSystemPaths));
+ OMRequest modifiedOmRequest =
+ doPreExecute(createKeyRequest(
+ false, 0, String.valueOf('\u0000')));
+
+ OMKeyCreateRequest omKeyCreateRequest =
+ getOMKeyCreateRequest(modifiedOmRequest);
+
+
+ long id = modifiedOmRequest.getCreateKeyRequest().getClientID();
+
+ String openKey = getOpenKey(id);
+
+ // Add volume and bucket entries to DB.
+ addVolumeAndBucketToDB(volumeName, bucketName,
+ omMetadataManager, getBucketLayout());
+
+ // Before calling
+ OmKeyInfo omKeyInfo =
+ omMetadataManager.getOpenKeyTable(getBucketLayout()).get(openKey);
+
+ Assert.assertNull(omKeyInfo);
+
+ OMClientResponse omKeyCreateResponse =
+ omKeyCreateRequest.validateAndUpdateCache(ozoneManager, 100L,
+ ozoneManagerDoubleBufferHelper);
+
+ Assert.assertEquals(OzoneManagerProtocolProtos.Status.INVALID_PATH,
+ omKeyCreateResponse.getOMResponse().getStatus());
+
+
+
+ // As We got an error, openKey Table should not have entry.
+ omKeyInfo =
+ omMetadataManager.getOpenKeyTable(getBucketLayout()).get(openKey);
+
+ Assert.assertNull(omKeyInfo);
+
+ }
/**
* This method calls preExecute and verify the modified request.
* @param originalOMRequest
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]