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
 }

Reply via email to