This is an automated email from the ASF dual-hosted git repository. fokko pushed a commit to branch fd-bump-thrift in repository https://gitbox.apache.org/repos/asf/parquet-mr.git
commit 1320eeef8c73c957529d98d9363547de98cf1b20 Author: Fokko Driesprong <[email protected]> AuthorDate: Thu Apr 13 15:59:39 2023 +0200 PARQUET-2268: Bump Thrift to 0.18.1 --- README.md | 10 ++-- parquet-format-structures/pom.xml | 7 +++ .../apache/parquet/format/InterningProtocol.java | 56 ++++++++++++++++++++++ .../thrift/BufferedProtocolReadToWrite.java | 10 ++++ .../org/apache/parquet/thrift/ParquetProtocol.java | 11 +++++ pom.xml | 3 +- 6 files changed, 91 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 378868e51..bc4971a24 100644 --- a/README.md +++ b/README.md @@ -35,19 +35,19 @@ Parquet-MR uses Maven to build and depends on the thrift compiler (protoc is now To build and install the thrift compiler, run: ``` -wget -nv http://archive.apache.org/dist/thrift/0.16.0/thrift-0.16.0.tar.gz -tar xzf thrift-0.16.0.tar.gz -cd thrift-0.16.0 +wget -nv http://archive.apache.org/dist/thrift/0.18.1/thrift-0.18.1.tar.gz +tar xzf thrift-0.18.1.tar.gz +cd thrift-0.18.1 chmod +x ./configure ./configure --disable-libs sudo make install ``` -If you're on OSX and use homebrew, you can instead install Thrift 0.16.0 with `brew` and ensure that it comes first in your `PATH`. +If you're on OSX and use homebrew, you can instead install Thrift 0.18.1 with `brew` and ensure that it comes first in your `PATH`. ``` brew install thrift -export PATH="/usr/local/opt/[email protected]/bin:$PATH" +export PATH="/usr/local/opt/[email protected]/bin:$PATH" ``` ### Build Parquet with Maven diff --git a/parquet-format-structures/pom.xml b/parquet-format-structures/pom.xml index 2be6c795a..df63eb9cf 100644 --- a/parquet-format-structures/pom.xml +++ b/parquet-format-structures/pom.xml @@ -109,6 +109,7 @@ <exclude>**/*.java</exclude> <exclude>META-INF/LICENSE.txt</exclude> <exclude>META-INF/NOTICE.txt</exclude> + <exclude>META-INF/MANIFEST.MF</exclude> </excludes> </filter> </filters> @@ -156,6 +157,12 @@ <artifactId>libthrift</artifactId> <version>${format.thrift.version}</version> </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-api</artifactId> + <version>${slf4j.version}</version> + <scope>test</scope> + </dependency> </dependencies> <profiles> diff --git a/parquet-format-structures/src/main/java/org/apache/parquet/format/InterningProtocol.java b/parquet-format-structures/src/main/java/org/apache/parquet/format/InterningProtocol.java index a1a6466bd..833b928a1 100644 --- a/parquet-format-structures/src/main/java/org/apache/parquet/format/InterningProtocol.java +++ b/parquet-format-structures/src/main/java/org/apache/parquet/format/InterningProtocol.java @@ -20,6 +20,7 @@ package org.apache.parquet.format; import java.nio.ByteBuffer; +import java.util.UUID; import org.apache.thrift.TException; import org.apache.thrift.protocol.TField; @@ -47,183 +48,238 @@ public class InterningProtocol extends TProtocol { return delegate.getTransport(); } + @Override public void writeMessageBegin(TMessage message) throws TException { delegate.writeMessageBegin(message); } + @Override public void writeMessageEnd() throws TException { delegate.writeMessageEnd(); } + @Override public int hashCode() { return delegate.hashCode(); } + @Override public void writeStructBegin(TStruct struct) throws TException { delegate.writeStructBegin(struct); } + @Override public void writeStructEnd() throws TException { delegate.writeStructEnd(); } + @Override public void writeFieldBegin(TField field) throws TException { delegate.writeFieldBegin(field); } + @Override public void writeFieldEnd() throws TException { delegate.writeFieldEnd(); } + @Override public void writeFieldStop() throws TException { delegate.writeFieldStop(); } + @Override public void writeMapBegin(TMap map) throws TException { delegate.writeMapBegin(map); } + @Override public void writeMapEnd() throws TException { delegate.writeMapEnd(); } + @Override public void writeListBegin(TList list) throws TException { delegate.writeListBegin(list); } + @Override public void writeListEnd() throws TException { delegate.writeListEnd(); } + @Override public void writeSetBegin(TSet set) throws TException { delegate.writeSetBegin(set); } + @Override public void writeSetEnd() throws TException { delegate.writeSetEnd(); } + @Override public void writeBool(boolean b) throws TException { delegate.writeBool(b); } + @Override public void writeByte(byte b) throws TException { delegate.writeByte(b); } + @Override public void writeI16(short i16) throws TException { delegate.writeI16(i16); } + @Override public void writeI32(int i32) throws TException { delegate.writeI32(i32); } + @Override public void writeI64(long i64) throws TException { delegate.writeI64(i64); } + @Override + public void writeUuid(UUID uuid) throws TException { + delegate.writeUuid(uuid); + } + + @Override public void writeDouble(double dub) throws TException { delegate.writeDouble(dub); } + @Override public void writeString(String str) throws TException { delegate.writeString(str); } + @Override public void writeBinary(ByteBuffer buf) throws TException { delegate.writeBinary(buf); } + @Override public TMessage readMessageBegin() throws TException { return delegate.readMessageBegin(); } + @Override public void readMessageEnd() throws TException { delegate.readMessageEnd(); } + @Override public TStruct readStructBegin() throws TException { return delegate.readStructBegin(); } + @Override public void readStructEnd() throws TException { delegate.readStructEnd(); } + @Override public TField readFieldBegin() throws TException { return delegate.readFieldBegin(); } + @Override public void readFieldEnd() throws TException { delegate.readFieldEnd(); } + @Override public TMap readMapBegin() throws TException { return delegate.readMapBegin(); } + @Override public void readMapEnd() throws TException { delegate.readMapEnd(); } + @Override public TList readListBegin() throws TException { return delegate.readListBegin(); } + @Override public void readListEnd() throws TException { delegate.readListEnd(); } + @Override public TSet readSetBegin() throws TException { return delegate.readSetBegin(); } + @Override public void readSetEnd() throws TException { delegate.readSetEnd(); } + @Override public boolean equals(Object obj) { return delegate.equals(obj); } + @Override public boolean readBool() throws TException { return delegate.readBool(); } + @Override public byte readByte() throws TException { return delegate.readByte(); } + @Override public short readI16() throws TException { return delegate.readI16(); } + @Override public int readI32() throws TException { return delegate.readI32(); } + @Override public long readI64() throws TException { return delegate.readI64(); } + @Override + public UUID readUuid() throws TException { + return delegate.readUuid(); + } + + @Override public double readDouble() throws TException { return delegate.readDouble(); } + @Override public String readString() throws TException { // this is where we intern the strings return delegate.readString().intern(); } + @Override public ByteBuffer readBinary() throws TException { return delegate.readBinary(); } + @Override public void reset() { delegate.reset(); } + @Override public String toString() { return delegate.toString(); } diff --git a/parquet-thrift/src/main/java/org/apache/parquet/thrift/BufferedProtocolReadToWrite.java b/parquet-thrift/src/main/java/org/apache/parquet/thrift/BufferedProtocolReadToWrite.java index 254386b04..6fcdeb2ee 100644 --- a/parquet-thrift/src/main/java/org/apache/parquet/thrift/BufferedProtocolReadToWrite.java +++ b/parquet-thrift/src/main/java/org/apache/parquet/thrift/BufferedProtocolReadToWrite.java @@ -21,6 +21,7 @@ package org.apache.parquet.thrift; import java.nio.ByteBuffer; import java.util.ArrayList; import java.util.List; +import java.util.UUID; import org.apache.thrift.TException; import org.apache.thrift.protocol.TField; @@ -623,6 +624,10 @@ public class BufferedProtocolReadToWrite implements ProtocolPipe { public void writeI64(long l) throws TException { } + @Override + public void writeUuid(UUID uuid) throws TException { + } + @Override public void writeDouble(double v) throws TException { } @@ -714,6 +719,11 @@ public class BufferedProtocolReadToWrite implements ProtocolPipe { return 0; } + @Override + public UUID readUuid() throws TException { + return null; + } + @Override public double readDouble() throws TException { return 0; diff --git a/parquet-thrift/src/main/java/org/apache/parquet/thrift/ParquetProtocol.java b/parquet-thrift/src/main/java/org/apache/parquet/thrift/ParquetProtocol.java index b26cdcb7f..b104ad70c 100644 --- a/parquet-thrift/src/main/java/org/apache/parquet/thrift/ParquetProtocol.java +++ b/parquet-thrift/src/main/java/org/apache/parquet/thrift/ParquetProtocol.java @@ -20,6 +20,7 @@ package org.apache.parquet.thrift; import java.lang.reflect.Method; import java.nio.ByteBuffer; +import java.util.UUID; import org.apache.thrift.TException; import org.apache.thrift.protocol.TField; @@ -162,6 +163,11 @@ public abstract class ParquetProtocol extends TProtocol { throw exception(); } + @Override + public void writeUuid(UUID uuid) throws TException { + throw exception(); + } + @Override public void writeString(String str) throws TException { throw exception(); @@ -264,6 +270,11 @@ public abstract class ParquetProtocol extends TProtocol { throw exception(); } + @Override + public UUID readUuid() throws TException { + throw exception(); + } + @Override public String readString() throws TException { throw exception(); diff --git a/pom.xml b/pom.xml index b2fea27a3..e99a7c87d 100644 --- a/pom.xml +++ b/pom.xml @@ -89,7 +89,7 @@ <pig.version>0.16.0</pig.version> <pig.classifier>h2</pig.classifier> <thrift-maven-plugin.version>0.10.0</thrift-maven-plugin.version> - <thrift.version>0.16.0</thrift.version> + <thrift.version>0.18.1</thrift.version> <format.thrift.version>${thrift.version}</format.thrift.version> <fastutil.version>8.4.2</fastutil.version> <semver.api.version>0.9.33</semver.api.version> @@ -310,6 +310,7 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> + <version>3.4.1</version> <executions> <execution> <phase>package</phase>
