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

lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/paimon.git


The following commit(s) were added to refs/heads/master by this push:
     new ac92d1d08 [core] Rename snapshots to tags in expiration classes
ac92d1d08 is described below

commit ac92d1d084921cc8d3d6310140f0a7e776c0af25
Author: Jingsong <[email protected]>
AuthorDate: Sun Aug 11 21:19:21 2024 +0800

    [core] Rename snapshots to tags in expiration classes
---
 .../apache/paimon/operation/FileDeletionBase.java  | 29 +++++++++++-----------
 .../apache/paimon/table/ExpireChangelogImpl.java   |  6 ++---
 .../apache/paimon/table/ExpireSnapshotsImpl.java   |  6 ++---
 3 files changed, 20 insertions(+), 21 deletions(-)

diff --git 
a/paimon-core/src/main/java/org/apache/paimon/operation/FileDeletionBase.java 
b/paimon-core/src/main/java/org/apache/paimon/operation/FileDeletionBase.java
index 978735bab..0ce94bb9b 100644
--- 
a/paimon-core/src/main/java/org/apache/paimon/operation/FileDeletionBase.java
+++ 
b/paimon-core/src/main/java/org/apache/paimon/operation/FileDeletionBase.java
@@ -77,12 +77,11 @@ public abstract class FileDeletionBase<T extends Snapshot> {
 
     protected boolean changelogDecoupled;
 
-    /** Used to record which snapshot is cached. */
-    private long cachedSnapshotId = 0;
+    /** Used to record which tag is cached. */
+    private long cachedTag = 0;
 
-    /** Used to cache data files used by current snapshot. */
-    private final Map<BinaryRow, Map<Integer, Set<String>>> 
cachedSnapshotDataFiles =
-            new HashMap<>();
+    /** Used to cache data files used by current tag. */
+    private final Map<BinaryRow, Map<Integer, Set<String>>> cachedTagDataFiles 
= new HashMap<>();
 
     public FileDeletionBase(
             FileIO fileIO,
@@ -328,18 +327,18 @@ public abstract class FileDeletionBase<T extends 
Snapshot> {
         cleanUnusedStatisticsManifests(snapshot, skippingSet);
     }
 
-    public Predicate<ManifestEntry> dataFileSkipper(
-            List<Snapshot> skippingSnapshots, long expiringSnapshotId) throws 
Exception {
-        int index = SnapshotManager.findPreviousSnapshot(skippingSnapshots, 
expiringSnapshotId);
-        // refresh snapshot data files
+    public Predicate<ManifestEntry> createDataFileSkipperForTags(
+            List<Snapshot> taggedSnapshots, long expiringSnapshotId) throws 
Exception {
+        int index = SnapshotManager.findPreviousSnapshot(taggedSnapshots, 
expiringSnapshotId);
+        // refresh tag data files
         if (index >= 0) {
-            Snapshot previousSnapshot = skippingSnapshots.get(index);
-            if (previousSnapshot.id() != cachedSnapshotId) {
-                cachedSnapshotId = previousSnapshot.id();
-                cachedSnapshotDataFiles.clear();
-                addMergedDataFiles(cachedSnapshotDataFiles, previousSnapshot);
+            Snapshot previousTag = taggedSnapshots.get(index);
+            if (previousTag.id() != cachedTag) {
+                cachedTag = previousTag.id();
+                cachedTagDataFiles.clear();
+                addMergedDataFiles(cachedTagDataFiles, previousTag);
             }
-            return entry -> containsDataFile(cachedSnapshotDataFiles, entry);
+            return entry -> containsDataFile(cachedTagDataFiles, entry);
         }
         return entry -> false;
     }
diff --git 
a/paimon-core/src/main/java/org/apache/paimon/table/ExpireChangelogImpl.java 
b/paimon-core/src/main/java/org/apache/paimon/table/ExpireChangelogImpl.java
index 72f655bba..246a85cbd 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/ExpireChangelogImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/ExpireChangelogImpl.java
@@ -134,11 +134,11 @@ public class ExpireChangelogImpl implements 
ExpireSnapshots {
             LOG.debug("Changelog expire range is [" + earliestId + ", " + 
endExclusiveId + ")");
         }
 
-        List<Snapshot> referencedSnapshots = tagManager.taggedSnapshots();
+        List<Snapshot> taggedSnapshots = tagManager.taggedSnapshots();
 
         List<Snapshot> skippingSnapshots =
                 SnapshotManager.findOverlappedSnapshots(
-                        referencedSnapshots, earliestId, endExclusiveId);
+                        taggedSnapshots, earliestId, endExclusiveId);
         skippingSnapshots.add(snapshotManager.changelog(endExclusiveId));
         Set<String> manifestSkippSet = 
changelogDeletion.manifestSkippingSet(skippingSnapshots);
         for (long id = earliestId; id < endExclusiveId; id++) {
@@ -148,7 +148,7 @@ public class ExpireChangelogImpl implements ExpireSnapshots 
{
             Changelog changelog = snapshotManager.longLivedChangelog(id);
             Predicate<ManifestEntry> skipper;
             try {
-                skipper = 
changelogDeletion.dataFileSkipper(referencedSnapshots, id);
+                skipper = 
changelogDeletion.createDataFileSkipperForTags(taggedSnapshots, id);
             } catch (Exception e) {
                 LOG.info(
                         String.format(
diff --git 
a/paimon-core/src/main/java/org/apache/paimon/table/ExpireSnapshotsImpl.java 
b/paimon-core/src/main/java/org/apache/paimon/table/ExpireSnapshotsImpl.java
index c49db6498..71abd90e6 100644
--- a/paimon-core/src/main/java/org/apache/paimon/table/ExpireSnapshotsImpl.java
+++ b/paimon-core/src/main/java/org/apache/paimon/table/ExpireSnapshotsImpl.java
@@ -153,7 +153,7 @@ public class ExpireSnapshotsImpl implements ExpireSnapshots 
{
                     "Snapshot expire range is [" + beginInclusiveId + ", " + 
endExclusiveId + ")");
         }
 
-        List<Snapshot> referencedSnapshots = tagManager.taggedSnapshots();
+        List<Snapshot> taggedSnapshots = tagManager.taggedSnapshots();
 
         // delete merge tree files
         // deleted merge tree files in a snapshot are not used by the next 
snapshot, so the range of
@@ -166,7 +166,7 @@ public class ExpireSnapshotsImpl implements ExpireSnapshots 
{
             // expire merge tree files and collect changed buckets
             Predicate<ManifestEntry> skipper;
             try {
-                skipper = 
snapshotDeletion.dataFileSkipper(referencedSnapshots, id);
+                skipper = 
snapshotDeletion.createDataFileSkipperForTags(taggedSnapshots, id);
             } catch (Exception e) {
                 LOG.info(
                         String.format(
@@ -199,7 +199,7 @@ public class ExpireSnapshotsImpl implements ExpireSnapshots 
{
         // delete manifests and indexFiles
         List<Snapshot> skippingSnapshots =
                 SnapshotManager.findOverlappedSnapshots(
-                        referencedSnapshots, beginInclusiveId, endExclusiveId);
+                        taggedSnapshots, beginInclusiveId, endExclusiveId);
         skippingSnapshots.add(snapshotManager.snapshot(endExclusiveId));
         Set<String> skippingSet = 
snapshotDeletion.manifestSkippingSet(skippingSnapshots);
         for (long id = beginInclusiveId; id < endExclusiveId; id++) {

Reply via email to