You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ozone.apache.org by si...@apache.org on 2022/11/18 01:43:08 UTC

[ozone] branch HDDS-6517-Snapshot updated: HDDS-7494. [Snapshot] Fix SnapshotInfo#dbTxSequenceNumber (de)serialization (#3965)

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

siyao pushed a commit to branch HDDS-6517-Snapshot
in repository https://gitbox.apache.org/repos/asf/ozone.git


The following commit(s) were added to refs/heads/HDDS-6517-Snapshot by this push:
     new 06ae2fe8d5 HDDS-7494. [Snapshot] Fix SnapshotInfo#dbTxSequenceNumber (de)serialization (#3965)
06ae2fe8d5 is described below

commit 06ae2fe8d5476ba895f72b5a055f33de546cc24f
Author: Siyao Meng <50...@users.noreply.github.com>
AuthorDate: Thu Nov 17 17:43:01 2022 -0800

    HDDS-7494. [Snapshot] Fix SnapshotInfo#dbTxSequenceNumber (de)serialization (#3965)
---
 .../ozone/rocksdiff/RocksDBCheckpointDiffer.java     |  3 +--
 .../apache/hadoop/ozone/om/helpers/SnapshotInfo.java | 20 ++++++++++++++++----
 .../hadoop/ozone/om/helpers/TestOmSnapshotInfo.java  |  5 +++++
 3 files changed, 22 insertions(+), 6 deletions(-)

diff --git a/hadoop-hdds/rocksdb-checkpoint-differ/src/main/java/org/apache/ozone/rocksdiff/RocksDBCheckpointDiffer.java b/hadoop-hdds/rocksdb-checkpoint-differ/src/main/java/org/apache/ozone/rocksdiff/RocksDBCheckpointDiffer.java
index 26884fb9fb..99ace91c80 100644
--- a/hadoop-hdds/rocksdb-checkpoint-differ/src/main/java/org/apache/ozone/rocksdiff/RocksDBCheckpointDiffer.java
+++ b/hadoop-hdds/rocksdb-checkpoint-differ/src/main/java/org/apache/ozone/rocksdiff/RocksDBCheckpointDiffer.java
@@ -223,8 +223,7 @@ public class RocksDBCheckpointDiffer {
       LOG.warn("Compaction log exists: {}. Will append", newCompactionLog);
     }
 
-    this.currentCompactionLogPath =
-        compactionLogDir + latestSequenceIdStr + COMPACTION_LOG_FILENAME_SUFFIX;
+    this.currentCompactionLogPath = newCompactionLog;
 
     // Create empty file if it doesn't exist
     appendToCurrentCompactionLog("");
diff --git a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/SnapshotInfo.java b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/SnapshotInfo.java
index 689cd439c5..38b3bb5ed2 100644
--- a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/SnapshotInfo.java
+++ b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/SnapshotInfo.java
@@ -138,7 +138,8 @@ public final class SnapshotInfo implements Auditable {
                        String pathPreviousSnapshotID,
                        String globalPreviousSnapshotID,
                        String snapshotPath,
-                       String checkpointDir) {
+                       String checkpointDir,
+                       long dbTxSequenceNumber) {
     this.snapshotID = snapshotID;
     this.name = name;
     this.volumeName = volumeName;
@@ -150,6 +151,7 @@ public final class SnapshotInfo implements Auditable {
     this.globalPreviousSnapshotID = globalPreviousSnapshotID;
     this.snapshotPath = snapshotPath;
     this.checkpointDir = checkpointDir;
+    this.dbTxSequenceNumber = dbTxSequenceNumber;
   }
 
   public void setName(String name) {
@@ -267,6 +269,7 @@ public final class SnapshotInfo implements Auditable {
     private String globalPreviousSnapshotID;
     private String snapshotPath;
     private String checkpointDir;
+    private long dbTxSequenceNumber;
 
     public Builder() {
       // default values
@@ -329,6 +332,11 @@ public final class SnapshotInfo implements Auditable {
       return this;
     }
 
+    public Builder setDbTxSequenceNumber(long dbTxSequenceNumber) {
+      this.dbTxSequenceNumber = dbTxSequenceNumber;
+      return this;
+    }
+
     public SnapshotInfo build() {
       Preconditions.checkNotNull(name);
       return new SnapshotInfo(
@@ -342,7 +350,8 @@ public final class SnapshotInfo implements Auditable {
           pathPreviousSnapshotID,
           globalPreviousSnapshotID,
           snapshotPath,
-          checkpointDir
+          checkpointDir,
+          dbTxSequenceNumber
       );
     }
   }
@@ -363,7 +372,8 @@ public final class SnapshotInfo implements Auditable {
         .setPathPreviousSnapshotID(pathPreviousSnapshotID)
         .setGlobalPreviousSnapshotID(globalPreviousSnapshotID)
         .setSnapshotPath(snapshotPath)
-        .setCheckpointDir(checkpointDir);
+        .setCheckpointDir(checkpointDir)
+        .setDbTxSequenceNumber(dbTxSequenceNumber);
     return sib.build();
   }
 
@@ -388,10 +398,12 @@ public final class SnapshotInfo implements Auditable {
         .setGlobalPreviousSnapshotID(snapshotInfoProto.
             getGlobalPreviousSnapshotID())
         .setSnapshotPath(snapshotInfoProto.getSnapshotPath())
-        .setCheckpointDir(snapshotInfoProto.getCheckpointDir());
+        .setCheckpointDir(snapshotInfoProto.getCheckpointDir())
+        .setDbTxSequenceNumber(snapshotInfoProto.getDbTxSequenceNumber());
 
     return osib.build();
   }
+
   @Override
   public Map<String, String> toAuditMap() {
     Map<String, String> auditMap = new LinkedHashMap<>();
diff --git a/hadoop-ozone/common/src/test/java/org/apache/hadoop/ozone/om/helpers/TestOmSnapshotInfo.java b/hadoop-ozone/common/src/test/java/org/apache/hadoop/ozone/om/helpers/TestOmSnapshotInfo.java
index 23c6dbb5e8..4fd9e2335c 100644
--- a/hadoop-ozone/common/src/test/java/org/apache/hadoop/ozone/om/helpers/TestOmSnapshotInfo.java
+++ b/hadoop-ozone/common/src/test/java/org/apache/hadoop/ozone/om/helpers/TestOmSnapshotInfo.java
@@ -49,6 +49,7 @@ public class TestOmSnapshotInfo {
       PATH_PREVIOUS_SNAPSHOT_ID;
   private static final String SNAPSHOT_PATH = "test/path";
   private static final String CHECKPOINT_DIR = "checkpoint.testdir";
+  private static final long DB_TX_SEQUENCE_NUMBER = 12345L;
 
   private SnapshotInfo createSnapshotInfo() {
     return new SnapshotInfo.Builder()
@@ -63,6 +64,7 @@ public class TestOmSnapshotInfo {
         .setGlobalPreviousSnapshotID(GLOBAL_PREVIOUS_SNAPSHOT_ID)
         .setSnapshotPath(SNAPSHOT_PATH)
         .setCheckpointDir(CHECKPOINT_DIR)
+        .setDbTxSequenceNumber(DB_TX_SEQUENCE_NUMBER)
         .build();
   }
 
@@ -79,6 +81,7 @@ public class TestOmSnapshotInfo {
         .setGlobalPreviousSnapshotID(GLOBAL_PREVIOUS_SNAPSHOT_ID)
         .setSnapshotPath(SNAPSHOT_PATH)
         .setCheckpointDir(CHECKPOINT_DIR)
+        .setDbTxSequenceNumber(DB_TX_SEQUENCE_NUMBER)
         .build();
   }
 
@@ -108,6 +111,8 @@ public class TestOmSnapshotInfo {
         snapshotInfoEntryActual.getBucketName());
     Assert.assertEquals(snapshotInfoEntryExpected.getSnapshotStatus(),
         snapshotInfoEntryActual.getSnapshotStatus());
+    Assert.assertEquals(snapshotInfoEntryExpected.getDbTxSequenceNumber(),
+        snapshotInfoEntryActual.getDbTxSequenceNumber());
     Assert.assertEquals(snapshotInfoEntryExpected, snapshotInfoEntryActual);
   }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@ozone.apache.org
For additional commands, e-mail: commits-help@ozone.apache.org