Skip to content

Commit a33480f

Browse files
committed
all reading files with no path_in_schema
1 parent 4c8f4d4 commit a33480f

File tree

3 files changed

+9
-10
lines changed

3 files changed

+9
-10
lines changed

parquet-hadoop/src/main/java/org/apache/parquet/format/converter/ParquetMetadataConverter.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -608,7 +608,6 @@ private void addRowGroup(
608608
ColumnMetaData metaData = new ColumnMetaData(
609609
getType(columnMetaData.getType()),
610610
toFormatEncodings(columnMetaData.getEncodings()),
611-
columnMetaData.getPath().toList(),
612611
toFormatCodec(columnMetaData.getCodec()),
613612
columnMetaData.getValueCount(),
614613
columnMetaData.getTotalUncompressedSize(),
@@ -619,6 +618,9 @@ private void addRowGroup(
619618
|| columnMetaData.hasDictionaryPage()) {
620619
metaData.setDictionary_page_offset(columnMetaData.getDictionaryPageOffset());
621620
}
621+
if (path != null) {
622+
metaData.setPath_in_schema(path.toList());
623+
}
622624
long bloomFilterOffset = columnMetaData.getBloomFilterOffset();
623625
if (bloomFilterOffset >= 0) {
624626
metaData.setBloom_filter_offset(bloomFilterOffset);
@@ -1830,6 +1832,9 @@ public ParquetMetadata fromParquetMetadata(
18301832
List<BlockMetaData> blocks = new ArrayList<BlockMetaData>();
18311833
List<RowGroup> row_groups = parquetMetadata.getRow_groups();
18321834

1835+
// needed to create path_in_schema for leaf columns
1836+
List<String[]> col_paths = messageType.getPaths();
1837+
18331838
if (row_groups != null) {
18341839
for (RowGroup rowGroup : row_groups) {
18351840
BlockMetaData blockMetaData = new BlockMetaData();
@@ -1859,7 +1864,7 @@ public ParquetMetadata fromParquetMetadata(
18591864
boolean lazyMetadataDecryption = false;
18601865

18611866
if (null == cryptoMetaData) { // Plaintext column
1862-
columnPath = getPath(metaData);
1867+
columnPath = ColumnPath.get(col_paths.get(columnOrdinal));
18631868
if (null != fileDecryptor && !fileDecryptor.plaintextFile()) {
18641869
// mark this column as plaintext in encrypted file decryptor
18651870
fileDecryptor.setColumnCryptoMetadata(
@@ -1876,7 +1881,7 @@ public ParquetMetadata fromParquetMetadata(
18761881
throw new ParquetCryptoRuntimeException(
18771882
"ColumnMetaData not set in Encryption with Footer key");
18781883
}
1879-
columnPath = getPath(metaData);
1884+
columnPath = ColumnPath.get(col_paths.get(columnOrdinal));
18801885
if (!encryptedFooter) { // Unencrypted footer. Decrypt full column metadata, using footer
18811886
// key
18821887
ByteArrayInputStream tempInputStream =
@@ -1983,11 +1988,6 @@ private static IndexReference toOffsetIndexReference(ColumnChunk columnChunk) {
19831988
return null;
19841989
}
19851990

1986-
private static ColumnPath getPath(ColumnMetaData metaData) {
1987-
String[] path = metaData.path_in_schema.toArray(new String[0]);
1988-
return ColumnPath.get(path);
1989-
}
1990-
19911991
// Visible for testing
19921992
MessageType fromParquetSchema(List<SchemaElement> schema, List<ColumnOrder> columnOrders) {
19931993
Iterator<SchemaElement> iterator = schema.iterator();

parquet-hadoop/src/test/java/org/apache/parquet/format/converter/TestParquetMetadataConverter.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -525,7 +525,6 @@ private FileMetaData metadata(long... sizes) {
525525
columnChunk.setMeta_data(new ColumnMetaData(
526526
INT32,
527527
Collections.<org.apache.parquet.format.Encoding>emptyList(),
528-
Collections.<String>emptyList(),
529528
UNCOMPRESSED,
530529
10l,
531530
size * 2,

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@
8484
<shade.prefix>shaded.parquet</shade.prefix>
8585
<!-- Guarantees no newer classes/methods/constants are used by parquet. -->
8686
<hadoop.version>3.3.0</hadoop.version>
87-
<parquet.format.version>2.12.0</parquet.format.version>
87+
<parquet.format.version>2.13.0-SNAPSHOT-nopath</parquet.format.version>
8888
<previous.version>1.17.0</previous.version>
8989
<thrift.executable>thrift</thrift.executable>
9090
<format.thrift.executable>${thrift.executable}</format.thrift.executable>

0 commit comments

Comments
 (0)