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

junhao 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 0ce5870557 [core] [fix] Fix row id push down, blob bunch check failed 
(#6553)
0ce5870557 is described below

commit 0ce5870557c028217389248a037b3b55aecb75c0
Author: YeJunHao <[email protected]>
AuthorDate: Fri Nov 7 11:16:09 2025 +0800

    [core] [fix] Fix row id push down, blob bunch check failed (#6553)
---
 .../main/java/org/apache/paimon/operation/DataEvolutionSplitRead.java | 3 ++-
 .../test/java/org/apache/paimon/operation/DataEvolutionReadTest.java  | 4 ++++
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git 
a/paimon-core/src/main/java/org/apache/paimon/operation/DataEvolutionSplitRead.java
 
b/paimon-core/src/main/java/org/apache/paimon/operation/DataEvolutionSplitRead.java
index 47a247be48..366aadc41e 100644
--- 
a/paimon-core/src/main/java/org/apache/paimon/operation/DataEvolutionSplitRead.java
+++ 
b/paimon-core/src/main/java/org/apache/paimon/operation/DataEvolutionSplitRead.java
@@ -466,7 +466,8 @@ public class DataEvolutionSplitRead implements 
SplitRead<InternalRow> {
                 if (rowIdPushDown) {
                     if (firstRowId < expectedNextFirstRowId) {
                         if (file.maxSequenceNumber() > 
latestMaxSequenceNumber) {
-                            files.remove(files.size() - 1);
+                            DataFileMeta lastFile = files.remove(files.size() 
- 1);
+                            rowCount -= lastFile.rowCount();
                         } else {
                             return;
                         }
diff --git 
a/paimon-core/src/test/java/org/apache/paimon/operation/DataEvolutionReadTest.java
 
b/paimon-core/src/test/java/org/apache/paimon/operation/DataEvolutionReadTest.java
index 6b9dd29b59..452813d9d9 100644
--- 
a/paimon-core/src/test/java/org/apache/paimon/operation/DataEvolutionReadTest.java
+++ 
b/paimon-core/src/test/java/org/apache/paimon/operation/DataEvolutionReadTest.java
@@ -336,6 +336,10 @@ public class DataEvolutionReadTest {
         blobBunch.add(blobEntry1);
         blobBunch.add(blobEntry2);
         assertThat(blobBunch.files).containsExactlyInAnyOrder(blobEntry2);
+
+        BlobBunch finalBlobBunch2 = blobBunch;
+        DataFileMeta blobEntry3 = createBlobFile("blob2", 250, 100, 2);
+        assertThatCode(() -> 
finalBlobBunch2.add(blobEntry3)).doesNotThrowAnyException();
     }
 
     /** Creates a normal (non-blob) file for testing. */

Reply via email to