This is an automated email from the ASF dual-hosted git repository.
pifta 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 7a07625101 HDDS-11232. Spare InfoBucket RPC call for the
FileSystem#getFileStatus calls for the general case. (#6988)
7a07625101 is described below
commit 7a07625101d54b067d1acbee2e4057ea03587da3
Author: Istvan Fajth <[email protected]>
AuthorDate: Fri Jul 26 23:59:04 2024 +0200
HDDS-11232. Spare InfoBucket RPC call for the FileSystem#getFileStatus
calls for the general case. (#6988)
---
.../org/apache/hadoop/ozone/client/rpc/RpcClient.java | 2 ++
.../fs/ozone/BasicRootedOzoneClientAdapterImpl.java | 17 ++++++++---------
2 files changed, 10 insertions(+), 9 deletions(-)
diff --git
a/hadoop-ozone/client/src/main/java/org/apache/hadoop/ozone/client/rpc/RpcClient.java
b/hadoop-ozone/client/src/main/java/org/apache/hadoop/ozone/client/rpc/RpcClient.java
index 97a7ac4c62..3ddceadb46 100644
---
a/hadoop-ozone/client/src/main/java/org/apache/hadoop/ozone/client/rpc/RpcClient.java
+++
b/hadoop-ozone/client/src/main/java/org/apache/hadoop/ozone/client/rpc/RpcClient.java
@@ -2156,6 +2156,8 @@ public class RpcClient implements ClientProtocol {
@Override
public OzoneFileStatus getOzoneFileStatus(String volumeName,
String bucketName, String keyName) throws IOException {
+ verifyVolumeName(volumeName);
+ verifyBucketName(bucketName);
OmKeyArgs keyArgs = new OmKeyArgs.Builder()
.setVolumeName(volumeName)
.setBucketName(bucketName)
diff --git
a/hadoop-ozone/ozonefs-common/src/main/java/org/apache/hadoop/fs/ozone/BasicRootedOzoneClientAdapterImpl.java
b/hadoop-ozone/ozonefs-common/src/main/java/org/apache/hadoop/fs/ozone/BasicRootedOzoneClientAdapterImpl.java
index 109e19d13c..890efd56e8 100644
---
a/hadoop-ozone/ozonefs-common/src/main/java/org/apache/hadoop/fs/ozone/BasicRootedOzoneClientAdapterImpl.java
+++
b/hadoop-ozone/ozonefs-common/src/main/java/org/apache/hadoop/fs/ozone/BasicRootedOzoneClientAdapterImpl.java
@@ -659,20 +659,19 @@ public class BasicRootedOzoneClientAdapterImpl
* valid bucket path or valid snapshot path.
* Throws exception in case of failure.
*/
- private FileStatusAdapter getFileStatusForKeyOrSnapshot(
- OFSPath ofsPath, URI uri, Path qualifiedPath, String userName)
+ private FileStatusAdapter getFileStatusForKeyOrSnapshot(OFSPath ofsPath, URI
uri, Path qualifiedPath, String userName)
throws IOException {
+ String volumeName = ofsPath.getVolumeName();
+ String bucketName = ofsPath.getBucketName();
String key = ofsPath.getKeyName();
try {
- OzoneBucket bucket = getBucket(ofsPath, false);
if (ofsPath.isSnapshotPath()) {
- OzoneVolume volume = objectStore.getVolume(ofsPath.getVolumeName());
- return getFileStatusAdapterWithSnapshotIndicator(
- volume, bucket, uri);
+ OzoneVolume volume = objectStore.getVolume(volumeName);
+ OzoneBucket bucket = getBucket(volumeName, bucketName, false);
+ return getFileStatusAdapterWithSnapshotIndicator(volume, bucket, uri);
} else {
- OzoneFileStatus status = bucket.getFileStatus(key);
- return toFileStatusAdapter(status, userName, uri, qualifiedPath,
- ofsPath.getNonKeyPath());
+ OzoneFileStatus status = proxy.getOzoneFileStatus(volumeName,
bucketName, key);
+ return toFileStatusAdapter(status, userName, uri, qualifiedPath,
ofsPath.getNonKeyPath());
}
} catch (OMException e) {
if (e.getResult() == OMException.ResultCodes.FILE_NOT_FOUND) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]