Skip to content

Commit 5eef533

Browse files
committed
Check parquet-mr version
1 parent 85f3c3c commit 5eef533

2 files changed

Lines changed: 19 additions & 6 deletions

File tree

parquet-column/src/main/java/org/apache/parquet/ValidInt96Stats.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ public static boolean hasValidInt96Stats(String createdBy) {
5050
try {
5151
ParsedVersion version = VersionParser.parse(createdBy);
5252
if ("parquet-mr".equals(version.application)) {
53-
return true;
53+
return version.version != null && version.version.compareTo("1.15.0") > 0;
5454
}
5555
if ("parquet-mr compatible Photon".equals(version.application)) {
5656
return true;

parquet-column/src/test/java/org/apache/parquet/ValidInt96StatsTest.java

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,24 @@ public void testNullAndEmpty() {
3333

3434
@Test
3535
public void testParquetMrValid() {
36-
assertTrue(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.12.3"));
37-
assertTrue(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.12.3 (build abcd)"));
38-
assertTrue(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.12.3-SNAPSHOT"));
39-
assertTrue(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.12.3rc1"));
40-
assertTrue(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.12.3rc1-SNAPSHOT"));
36+
// Versions > 1.15.0 should be valid
37+
assertTrue(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.16.0"));
38+
assertTrue(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.15.1"));
39+
assertTrue(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 2.0.0"));
40+
assertTrue(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.16.0 (build abcd)"));
41+
assertTrue(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.15.1-SNAPSHOT"));
42+
}
43+
44+
@Test
45+
public void testParquetMrInvalid() {
46+
// Versions <= 1.15.0 should be invalid
47+
assertFalse(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.15.0"));
48+
assertFalse(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.12.3"));
49+
assertFalse(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.14.0"));
50+
assertFalse(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.12.3 (build abcd)"));
51+
assertFalse(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.12.3-SNAPSHOT"));
52+
assertFalse(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.12.3rc1"));
53+
assertFalse(ValidInt96Stats.hasValidInt96Stats("parquet-mr version 1.12.3rc1-SNAPSHOT"));
4154
}
4255

4356
@Test

0 commit comments

Comments
 (0)