This is an automated email from the ASF dual-hosted git repository.
ivandika 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 acc8a868642 HDDS-13723. Add detailed lock information for
omMetadataManager locks (#9157)
acc8a868642 is described below
commit acc8a86864215a5e6dbc6ef99b75f4ea88f5d66c
Author: sreejasahithi <[email protected]>
AuthorDate: Sat Nov 22 06:28:20 2025 +0530
HDDS-13723. Add detailed lock information for omMetadataManager locks
(#9157)
---
.../ozone/om/request/key/OMDirectoriesPurgeRequestWithFSO.java | 7 +++++--
.../s3/multipart/S3ExpiredMultipartUploadsAbortRequest.java | 8 +++-----
2 files changed, 8 insertions(+), 7 deletions(-)
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMDirectoriesPurgeRequestWithFSO.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMDirectoriesPurgeRequestWithFSO.java
index aa197108195..0da27c7c2d6 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMDirectoriesPurgeRequestWithFSO.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/OMDirectoriesPurgeRequestWithFSO.java
@@ -125,7 +125,8 @@ public OMClientResponse validateAndUpdateCache(OzoneManager
ozoneManager, Execut
return new
OMDirectoriesPurgeResponseWithFSO(createErrorOMResponse(omResponse, e));
}
List<String[]> bucketLockKeys = getBucketLockKeySet(purgeDirsRequest);
- boolean lockAcquired =
omMetadataManager.getLock().acquireWriteLocks(BUCKET_LOCK,
bucketLockKeys).isLockAcquired();
+
mergeOmLockDetails(omMetadataManager.getLock().acquireWriteLocks(BUCKET_LOCK,
bucketLockKeys));
+ boolean lockAcquired = getOmLockDetails().isLockAcquired();
if (!lockAcquired && !purgeDirsRequest.getBucketNameInfosList().isEmpty())
{
OMException oe = new OMException("Unable to acquire write locks on
buckets while performing DirectoryPurge",
OMException.ResultCodes.KEY_DELETION_ERROR);
@@ -256,7 +257,9 @@ public OMClientResponse validateAndUpdateCache(OzoneManager
ozoneManager, Execut
volBucketInfoMap.entrySet()) {
entry.setValue(entry.getValue().copyObject());
}
- omMetadataManager.getLock().releaseWriteLocks(BUCKET_LOCK,
bucketLockKeys);
+ if (lockAcquired) {
+
mergeOmLockDetails(omMetadataManager.getLock().releaseWriteLocks(BUCKET_LOCK,
bucketLockKeys));
+ }
}
return new OMDirectoriesPurgeResponseWithFSO(
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3ExpiredMultipartUploadsAbortRequest.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3ExpiredMultipartUploadsAbortRequest.java
index 745a2523ea5..393f5746503 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3ExpiredMultipartUploadsAbortRequest.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/multipart/S3ExpiredMultipartUploadsAbortRequest.java
@@ -38,7 +38,6 @@
import org.apache.hadoop.ozone.om.helpers.OmMultipartAbortInfo;
import org.apache.hadoop.ozone.om.helpers.OmMultipartKeyInfo;
import org.apache.hadoop.ozone.om.helpers.OmMultipartUpload;
-import org.apache.hadoop.ozone.om.lock.OMLockDetails;
import org.apache.hadoop.ozone.om.request.key.OMKeyRequest;
import org.apache.hadoop.ozone.om.request.util.OMMultipartUploadUtils;
import org.apache.hadoop.ozone.om.request.util.OmResponseUtil;
@@ -198,11 +197,10 @@ private void updateTableCache(OzoneManager ozoneManager,
OMMetadataManager omMetadataManager = ozoneManager.getMetadataManager();
OmBucketInfo omBucketInfo = null;
BucketLayout bucketLayout = null;
- OMLockDetails omLockDetails = null;
try {
- omLockDetails = omMetadataManager.getLock()
- .acquireWriteLock(BUCKET_LOCK, volumeName, bucketName);
- acquiredLock = omLockDetails.isLockAcquired();
+ mergeOmLockDetails(omMetadataManager.getLock()
+ .acquireWriteLock(BUCKET_LOCK, volumeName, bucketName));
+ acquiredLock = getOmLockDetails().isLockAcquired();
omBucketInfo = getBucketInfo(omMetadataManager, volumeName, bucketName);
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]