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

weichiu 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 253917f286 HDDS-13247. Refactor duplicated code from 
OMSnapshotMoveTableKeysRequest and OMSnapshotMoveDeletedKeysRequest into a 
shared helper method. (#8807)
253917f286 is described below

commit 253917f286af59d041637a0ed1d0b29d4cba5646
Author: Wei-Chiu Chuang <[email protected]>
AuthorDate: Sat Jul 26 11:21:52 2025 -0700

    HDDS-13247. Refactor duplicated code from OMSnapshotMoveTableKeysRequest 
and OMSnapshotMoveDeletedKeysRequest into a shared helper method. (#8807)
    
    Generated-by: Google Gemini 2.5 Pro + Gemini Cli.
---
 .../snapshot/OMSnapshotMoveDeletedKeysRequest.java | 13 +----
 .../snapshot/OMSnapshotMoveTableKeysRequest.java   | 13 +----
 .../om/request/snapshot/OMSnapshotMoveUtils.java   | 56 ++++++++++++++++++++++
 3 files changed, 58 insertions(+), 24 deletions(-)

diff --git 
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotMoveDeletedKeysRequest.java
 
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotMoveDeletedKeysRequest.java
index f446eee769..8728903917 100644
--- 
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotMoveDeletedKeysRequest.java
+++ 
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotMoveDeletedKeysRequest.java
@@ -22,9 +22,6 @@
 import java.io.IOException;
 import java.util.List;
 import org.apache.hadoop.hdds.protocol.proto.HddsProtos;
-import org.apache.hadoop.hdds.utils.TransactionInfo;
-import org.apache.hadoop.hdds.utils.db.cache.CacheKey;
-import org.apache.hadoop.hdds.utils.db.cache.CacheValue;
 import org.apache.hadoop.ozone.om.OmMetadataManagerImpl;
 import org.apache.hadoop.ozone.om.OzoneManager;
 import org.apache.hadoop.ozone.om.SnapshotChainManager;
@@ -82,15 +79,7 @@ public OMClientResponse validateAndUpdateCache(OzoneManager 
ozoneManager, Execut
       List<HddsProtos.KeyValue> renamedKeysList = 
moveDeletedKeysRequest.getRenamedKeysList();
       List<String> movedDirs = 
moveDeletedKeysRequest.getDeletedDirsToMoveList();
 
-      // Update lastTransactionInfo for fromSnapshot and the nextSnapshot.
-      
fromSnapshot.setLastTransactionInfo(TransactionInfo.valueOf(context.getTermIndex()).toByteString());
-      omMetadataManager.getSnapshotInfoTable().addCacheEntry(new 
CacheKey<>(fromSnapshot.getTableKey()),
-          CacheValue.get(context.getIndex(), fromSnapshot));
-      if (nextSnapshot != null) {
-        
nextSnapshot.setLastTransactionInfo(TransactionInfo.valueOf(context.getTermIndex()).toByteString());
-        omMetadataManager.getSnapshotInfoTable().addCacheEntry(new 
CacheKey<>(nextSnapshot.getTableKey()),
-            CacheValue.get(context.getIndex(), nextSnapshot));
-      }
+      OMSnapshotMoveUtils.updateCache(ozoneManager, fromSnapshot, 
nextSnapshot, context);
       omClientResponse = new OMSnapshotMoveDeletedKeysResponse(
           omResponse.build(), fromSnapshot, nextSnapshot,
           nextDBKeysList, reclaimKeysList, renamedKeysList, movedDirs);
diff --git 
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotMoveTableKeysRequest.java
 
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotMoveTableKeysRequest.java
index 7348fe41b6..c8c894d806 100644
--- 
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotMoveTableKeysRequest.java
+++ 
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotMoveTableKeysRequest.java
@@ -26,9 +26,6 @@
 import java.util.List;
 import java.util.Set;
 import org.apache.hadoop.hdds.protocol.proto.HddsProtos;
-import org.apache.hadoop.hdds.utils.TransactionInfo;
-import org.apache.hadoop.hdds.utils.db.cache.CacheKey;
-import org.apache.hadoop.hdds.utils.db.cache.CacheValue;
 import org.apache.hadoop.ozone.om.OmMetadataManagerImpl;
 import org.apache.hadoop.ozone.om.OmSnapshotInternalMetrics;
 import org.apache.hadoop.ozone.om.OzoneManager;
@@ -159,15 +156,7 @@ public OMClientResponse 
validateAndUpdateCache(OzoneManager ozoneManager, Execut
             OMException.ResultCodes.INVALID_SNAPSHOT_ERROR);
       }
 
-      // Update lastTransactionInfo for fromSnapshot and the nextSnapshot.
-      
fromSnapshot.setLastTransactionInfo(TransactionInfo.valueOf(context.getTermIndex()).toByteString());
-      omMetadataManager.getSnapshotInfoTable().addCacheEntry(new 
CacheKey<>(fromSnapshot.getTableKey()),
-          CacheValue.get(context.getIndex(), fromSnapshot));
-      if (nextSnapshot != null) {
-        
nextSnapshot.setLastTransactionInfo(TransactionInfo.valueOf(context.getTermIndex()).toByteString());
-        omMetadataManager.getSnapshotInfoTable().addCacheEntry(new 
CacheKey<>(nextSnapshot.getTableKey()),
-            CacheValue.get(context.getIndex(), nextSnapshot));
-      }
+      OMSnapshotMoveUtils.updateCache(ozoneManager, fromSnapshot, 
nextSnapshot, context);
       omClientResponse = new 
OMSnapshotMoveTableKeysResponse(omResponse.build(), fromSnapshot, nextSnapshot,
           moveTableKeysRequest.getDeletedKeysList(), 
moveTableKeysRequest.getDeletedDirsList(),
           moveTableKeysRequest.getRenamedKeysList());
diff --git 
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotMoveUtils.java
 
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotMoveUtils.java
new file mode 100644
index 0000000000..d9d104f6c2
--- /dev/null
+++ 
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/snapshot/OMSnapshotMoveUtils.java
@@ -0,0 +1,56 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.hadoop.ozone.om.request.snapshot;
+
+import java.io.IOException;
+import org.apache.hadoop.hdds.utils.TransactionInfo;
+import org.apache.hadoop.hdds.utils.db.cache.CacheKey;
+import org.apache.hadoop.hdds.utils.db.cache.CacheValue;
+import org.apache.hadoop.ozone.om.OmMetadataManagerImpl;
+import org.apache.hadoop.ozone.om.OzoneManager;
+import org.apache.hadoop.ozone.om.execution.flowcontrol.ExecutionContext;
+import org.apache.hadoop.ozone.om.helpers.SnapshotInfo;
+
+/**
+ * Utility class for snapshot move requests.
+ */
+public final class OMSnapshotMoveUtils {
+
+  private OMSnapshotMoveUtils() {
+  }
+
+  public static void updateCache(OzoneManager ozoneManager, SnapshotInfo 
fromSnapshot, SnapshotInfo toSnapshot,
+      ExecutionContext context) throws IOException {
+    OmMetadataManagerImpl omMetadataManager = (OmMetadataManagerImpl)
+        ozoneManager.getMetadataManager();
+
+    // Update lastTransactionInfo for fromSnapshot and the nextSnapshot.
+    fromSnapshot.setLastTransactionInfo(TransactionInfo.valueOf(
+        context.getTermIndex()).toByteString());
+    omMetadataManager.getSnapshotInfoTable().addCacheEntry(
+        new CacheKey<>(fromSnapshot.getTableKey()),
+        CacheValue.get(context.getIndex(), fromSnapshot));
+    if (toSnapshot != null) {
+      toSnapshot.setLastTransactionInfo(TransactionInfo.valueOf(
+          context.getTermIndex()).toByteString());
+      omMetadataManager.getSnapshotInfoTable().addCacheEntry(
+          new CacheKey<>(toSnapshot.getTableKey()),
+          CacheValue.get(context.getIndex(), toSnapshot));
+    }
+  }
+}


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

Reply via email to