You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iceberg.apache.org by ru...@apache.org on 2021/11/17 22:43:54 UTC
[iceberg] branch master updated: Core: BaseFile returns wrong field when accessing position via index (#3178)
This is an automated email from the ASF dual-hosted git repository.
russellspitzer pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iceberg.git
The following commit(s) were added to refs/heads/master by this push:
new fb5cfbc Core: BaseFile returns wrong field when accessing position via index (#3178)
fb5cfbc is described below
commit fb5cfbc69ad4339ac6baf5ace9bb1d9152a627c1
Author: Szehon Ho <sz...@gmail.com>
AuthorDate: Wed Nov 17 23:43:40 2021 +0100
Core: BaseFile returns wrong field when accessing position via index (#3178)
---
core/src/main/java/org/apache/iceberg/BaseFile.java | 2 +-
core/src/test/java/org/apache/iceberg/TestManifestReader.java | 2 ++
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/core/src/main/java/org/apache/iceberg/BaseFile.java b/core/src/main/java/org/apache/iceberg/BaseFile.java
index 84af7e7..b566b77 100644
--- a/core/src/main/java/org/apache/iceberg/BaseFile.java
+++ b/core/src/main/java/org/apache/iceberg/BaseFile.java
@@ -332,7 +332,7 @@ abstract class BaseFile<F>
case 16:
return sortOrderId;
case 17:
- return pos;
+ return fileOrdinal;
default:
throw new UnsupportedOperationException("Unknown field ordinal: " + pos);
}
diff --git a/core/src/test/java/org/apache/iceberg/TestManifestReader.java b/core/src/test/java/org/apache/iceberg/TestManifestReader.java
index b6a7f47..8061e33 100644
--- a/core/src/test/java/org/apache/iceberg/TestManifestReader.java
+++ b/core/src/test/java/org/apache/iceberg/TestManifestReader.java
@@ -128,6 +128,7 @@ public class TestManifestReader extends TableTestBase {
long expectedPos = 0L;
for (DataFile file : reader) {
Assert.assertEquals("Position should match", (Long) expectedPos, file.pos());
+ Assert.assertEquals("Position from field index should match", expectedPos, ((BaseFile) file).get(17));
expectedPos += 1;
}
}
@@ -141,6 +142,7 @@ public class TestManifestReader extends TableTestBase {
long expectedPos = 0L;
for (DeleteFile file : reader) {
Assert.assertEquals("Position should match", (Long) expectedPos, file.pos());
+ Assert.assertEquals("Position from field index should match", expectedPos, ((BaseFile) file).get(17));
expectedPos += 1;
}
}