This is an automated email from the ASF dual-hosted git repository.
fokko pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/parquet-java.git
The following commit(s) were added to refs/heads/master by this push:
new 942024944 GH-3215: Sort the list of org.apache.parquet.format.Encoding
(#3413)
942024944 is described below
commit 942024944eb71255928e02d71715bc4493e1d415
Author: Mikael Brännström <[email protected]>
AuthorDate: Sat Mar 7 22:32:33 2026 +0100
GH-3215: Sort the list of org.apache.parquet.format.Encoding (#3413)
* GH-3215: Sort the list of org.apache.parquet.format.Encoding created by
org.apache.parquet.format.converter.ParquetMetadataConverter::toFormatEncodings
* GH-3215: Reformat test case to address format violations failures.
---------
Co-authored-by: Peter Franzen <[email protected]>
Co-authored-by: Mikael Brännström <[email protected]>
---
.../format/converter/ParquetMetadataConverter.java | 4 +++-
.../format/converter/TestParquetMetadataConverter.java | 16 ++++++++++++++++
2 files changed, 19 insertions(+), 1 deletion(-)
diff --git
a/parquet-hadoop/src/main/java/org/apache/parquet/format/converter/ParquetMetadataConverter.java
b/parquet-hadoop/src/main/java/org/apache/parquet/format/converter/ParquetMetadataConverter.java
index 60150439a..3597898c3 100644
---
a/parquet-hadoop/src/main/java/org/apache/parquet/format/converter/ParquetMetadataConverter.java
+++
b/parquet-hadoop/src/main/java/org/apache/parquet/format/converter/ParquetMetadataConverter.java
@@ -703,11 +703,13 @@ public class ParquetMetadataConverter {
rowGroups.add(rowGroup);
}
- private List<Encoding>
toFormatEncodings(Set<org.apache.parquet.column.Encoding> encodings) {
+ // Visible for testing
+ List<Encoding> toFormatEncodings(Set<org.apache.parquet.column.Encoding>
encodings) {
List<Encoding> converted = new ArrayList<Encoding>(encodings.size());
for (org.apache.parquet.column.Encoding encoding : encodings) {
converted.add(getEncoding(encoding));
}
+ Collections.sort(converted);
return converted;
}
diff --git
a/parquet-hadoop/src/test/java/org/apache/parquet/format/converter/TestParquetMetadataConverter.java
b/parquet-hadoop/src/test/java/org/apache/parquet/format/converter/TestParquetMetadataConverter.java
index 264017a1f..e4851d8ec 100644
---
a/parquet-hadoop/src/test/java/org/apache/parquet/format/converter/TestParquetMetadataConverter.java
+++
b/parquet-hadoop/src/test/java/org/apache/parquet/format/converter/TestParquetMetadataConverter.java
@@ -759,6 +759,22 @@ public class TestParquetMetadataConverter {
assertEquals("java.util.Collections$UnmodifiableSet",
res3.getClass().getName());
}
+ @Test
+ public void testEncodingsOrder() {
+ ParquetMetadataConverter parquetMetadataConverter = new
ParquetMetadataConverter();
+
+ Set<org.apache.parquet.column.Encoding> columnEncodings =
+ new
HashSet<>(Arrays.asList(org.apache.parquet.column.Encoding.values()));
+
+ // Assert that the encodings are returned in ascending ordinal order
+ List<org.apache.parquet.format.Encoding> formatEncodings =
+ parquetMetadataConverter.toFormatEncodings(columnEncodings);
+ for (int i = 1; i < formatEncodings.size(); i++) {
+ assertTrue(formatEncodings.get(i - 1).ordinal()
+ < formatEncodings.get(i).ordinal());
+ }
+ }
+
@Test
public void testBinaryStatsV1() {
testBinaryStats(StatsHelper.V1);