This is an automated email from the ASF dual-hosted git repository.
gangwu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/parquet-mr.git
The following commit(s) were added to refs/heads/master by this push:
new d03b49bd2 PARQUET-2420 : ThriftParquetWriter Convert byte to
LogicalType int32 bitWidth 8 instead of primitive int32 (#1254)
d03b49bd2 is described below
commit d03b49bd20a5a151cf58b9ff91498f60f4751fdb
Author: Shreyas@Dview <[email protected]>
AuthorDate: Fri Jan 19 19:48:50 2024 +0530
PARQUET-2420 : ThriftParquetWriter Convert byte to LogicalType int32
bitWidth 8 instead of primitive int32 (#1254)
---
.../java/org/apache/parquet/thrift/ThriftSchemaConvertVisitor.java | 2 +-
.../java/org/apache/parquet/thrift/TestThriftSchemaConverter.java | 4 +++-
parquet-thrift/src/test/thrift/test.thrift | 3 ++-
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git
a/parquet-thrift/src/main/java/org/apache/parquet/thrift/ThriftSchemaConvertVisitor.java
b/parquet-thrift/src/main/java/org/apache/parquet/thrift/ThriftSchemaConvertVisitor.java
index 900296673..6adf0181d 100644
---
a/parquet-thrift/src/main/java/org/apache/parquet/thrift/ThriftSchemaConvertVisitor.java
+++
b/parquet-thrift/src/main/java/org/apache/parquet/thrift/ThriftSchemaConvertVisitor.java
@@ -362,7 +362,7 @@ class ThriftSchemaConvertVisitor implements
ThriftType.StateVisitor<ConvertedFie
@Override
public ConvertedField visit(ByteType byteType, State state) {
- return visitPrimitiveType(INT32, state);
+ return visitPrimitiveType(INT32, LogicalTypeAnnotation.intType(8, true),
state);
}
@Override
diff --git
a/parquet-thrift/src/test/java/org/apache/parquet/thrift/TestThriftSchemaConverter.java
b/parquet-thrift/src/test/java/org/apache/parquet/thrift/TestThriftSchemaConverter.java
index c01cb5fb9..8f9faf160 100644
---
a/parquet-thrift/src/test/java/org/apache/parquet/thrift/TestThriftSchemaConverter.java
+++
b/parquet-thrift/src/test/java/org/apache/parquet/thrift/TestThriftSchemaConverter.java
@@ -376,7 +376,9 @@ public class TestThriftSchemaConverter {
@Test
public void testLogicalTypeConvertion() throws Exception {
- String expected = "message ParquetSchema {\n" + " required int32 test_i16
(INTEGER(16,true)) = 1;" + "}";
+ String expected = "message ParquetSchema {\n" + " required int32 test_i16
(INTEGER(16,true)) = 1;\n"
+ + " required int32 test_i8 (INTEGER(8,true)) = 2;\n"
+ + "}\n";
ThriftSchemaConverter schemaConverter = new ThriftSchemaConverter();
final MessageType converted =
schemaConverter.convert(TestLogicalType.class);
assertEquals(MessageTypeParser.parseMessageType(expected), converted);
diff --git a/parquet-thrift/src/test/thrift/test.thrift
b/parquet-thrift/src/test/thrift/test.thrift
index 9b3ac859c..ef350d9e7 100644
--- a/parquet-thrift/src/test/thrift/test.thrift
+++ b/parquet-thrift/src/test/thrift/test.thrift
@@ -97,5 +97,6 @@ struct StructWithExtraField {
}
struct TestLogicalType {
- 1: required i16 test_i16
+ 1: required i16 test_i16,
+ 2: required byte test_i8
}