This is an automated email from the ASF dual-hosted git repository.
chenliang613 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/carbondata.git
The following commit(s) were added to refs/heads/master by this push:
new f370d20093 [CARBONDATA-4349] Upgrade thrift version (#4355)
f370d20093 is described below
commit f370d200934b753b0a550e0fab296c935fbdf81e
Author: Jacky Li <[email protected]>
AuthorDate: Sun Jun 30 21:30:23 2024 +0800
[CARBONDATA-4349] Upgrade thrift version (#4355)
* upgrade thrift version
* change to use 0.20.0
---------
Co-authored-by: jacky <[email protected]>
---
.../org/apache/carbondata/core/reader/ThriftReader.java | 13 +++++++++++--
.../java/org/apache/carbondata/core/util/CarbonUtil.java | 6 +++---
.../org/apache/carbondata/core/writer/ThriftWriter.java | 13 +++++++++++--
format/pom.xml | 9 +++++++--
pom.xml | 2 ++
5 files changed, 34 insertions(+), 9 deletions(-)
diff --git
a/core/src/main/java/org/apache/carbondata/core/reader/ThriftReader.java
b/core/src/main/java/org/apache/carbondata/core/reader/ThriftReader.java
index d0873237a6..0a54adb73b 100644
--- a/core/src/main/java/org/apache/carbondata/core/reader/ThriftReader.java
+++ b/core/src/main/java/org/apache/carbondata/core/reader/ThriftReader.java
@@ -31,6 +31,7 @@ import org.apache.thrift.TException;
import org.apache.thrift.protocol.TCompactProtocol;
import org.apache.thrift.protocol.TProtocol;
import org.apache.thrift.transport.TIOStreamTransport;
+import org.apache.thrift.transport.TTransportException;
/**
* A simple class for reading Thrift objects (of a single type) from a
fileName.
@@ -89,7 +90,11 @@ public class ThriftReader {
*/
public ThriftReader(byte[] fileData) {
dataInputStream = new DataInputStream(new ByteArrayInputStream(fileData));
- binaryIn = new TCompactProtocol(new TIOStreamTransport(dataInputStream));
+ try {
+ binaryIn = new TCompactProtocol(new TIOStreamTransport(dataInputStream));
+ } catch (TTransportException e) {
+ throw new RuntimeException(e);
+ }
}
/**
@@ -98,7 +103,11 @@ public class ThriftReader {
public void open() throws IOException {
Configuration conf = configuration != null ? configuration :
FileFactory.getConfiguration();
dataInputStream = FileFactory.getDataInputStream(fileName, conf);
- binaryIn = new TCompactProtocol(new TIOStreamTransport(dataInputStream));
+ try {
+ binaryIn = new TCompactProtocol(new TIOStreamTransport(dataInputStream));
+ } catch (TTransportException e) {
+ throw new IOException(e);
+ }
}
/**
diff --git a/core/src/main/java/org/apache/carbondata/core/util/CarbonUtil.java
b/core/src/main/java/org/apache/carbondata/core/util/CarbonUtil.java
index 19040cf84e..bf01c81795 100644
--- a/core/src/main/java/org/apache/carbondata/core/util/CarbonUtil.java
+++ b/core/src/main/java/org/apache/carbondata/core/util/CarbonUtil.java
@@ -1413,8 +1413,8 @@ public final class CarbonUtil {
public static byte[] getByteArray(TBase t) {
ByteArrayOutputStream stream = new ByteArrayOutputStream();
byte[] thriftByteArray = null;
- TProtocol binaryOut = new TCompactProtocol(new TIOStreamTransport(stream));
try {
+ TProtocol binaryOut = new TCompactProtocol(new
TIOStreamTransport(stream));
t.write(binaryOut);
stream.flush();
thriftByteArray = stream.toByteArray();
@@ -1439,9 +1439,9 @@ public final class CarbonUtil {
public static DataChunk3 readDataChunk3(InputStream stream) throws
IOException {
TBaseCreator creator = DataChunk3::new;
- TProtocol binaryIn = new TCompactProtocol(new TIOStreamTransport(stream));
TBase t = creator.create();
try {
+ TProtocol binaryIn = new TCompactProtocol(new
TIOStreamTransport(stream));
t.read(binaryIn);
} catch (TException e) {
throw new IOException(e);
@@ -1461,9 +1461,9 @@ public final class CarbonUtil {
private static TBase read(byte[] data, TBaseCreator creator, int offset, int
length)
throws IOException {
ByteArrayInputStream stream = new ByteArrayInputStream(data, offset,
length);
- TProtocol binaryIn = new TCompactProtocol(new TIOStreamTransport(stream));
TBase t = creator.create();
try {
+ TProtocol binaryIn = new TCompactProtocol(new
TIOStreamTransport(stream));
t.read(binaryIn);
} catch (TException e) {
throw new IOException(e);
diff --git
a/core/src/main/java/org/apache/carbondata/core/writer/ThriftWriter.java
b/core/src/main/java/org/apache/carbondata/core/writer/ThriftWriter.java
index 3314aaf9eb..bff7eee574 100644
--- a/core/src/main/java/org/apache/carbondata/core/writer/ThriftWriter.java
+++ b/core/src/main/java/org/apache/carbondata/core/writer/ThriftWriter.java
@@ -31,6 +31,7 @@ import org.apache.thrift.TException;
import org.apache.thrift.protocol.TCompactProtocol;
import org.apache.thrift.protocol.TProtocol;
import org.apache.thrift.transport.TIOStreamTransport;
+import org.apache.thrift.transport.TTransportException;
/**
* Simple class that makes it easy to write Thrift objects to disk.
@@ -80,7 +81,11 @@ public class ThriftWriter {
*/
public void open() throws IOException {
dataOutputStream = FileFactory.getDataOutputStream(fileName, bufferSize,
append);
- binaryOut = new TCompactProtocol(new TIOStreamTransport(dataOutputStream));
+ try {
+ binaryOut = new TCompactProtocol(new
TIOStreamTransport(dataOutputStream));
+ } catch (TTransportException e) {
+ throw new IOException(e);
+ }
}
/**
@@ -92,7 +97,11 @@ public class ThriftWriter {
public void open(FileWriteOperation fileWriteOperation) throws IOException {
atomicFileOperationsWriter =
AtomicFileOperationFactory.getAtomicFileOperations(fileName);
dataOutputStream =
atomicFileOperationsWriter.openForWrite(fileWriteOperation);
- binaryOut = new TCompactProtocol(new TIOStreamTransport(dataOutputStream));
+ try {
+ binaryOut = new TCompactProtocol(new
TIOStreamTransport(dataOutputStream));
+ } catch (TTransportException e) {
+ throw new IOException(e);
+ }
}
/**
diff --git a/format/pom.xml b/format/pom.xml
index 2ba968977c..143213f659 100644
--- a/format/pom.xml
+++ b/format/pom.xml
@@ -37,7 +37,12 @@
<dependency>
<groupId>org.apache.thrift</groupId>
<artifactId>libthrift</artifactId>
- <version>0.9.3</version>
+ <version>0.20.0</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.annotation</groupId>
+ <artifactId>javax.annotation-api</artifactId>
+ <version>1.3.2</version>
</dependency>
</dependencies>
@@ -77,4 +82,4 @@
</profile>
</profiles>
-</project>
\ No newline at end of file
+</project>
diff --git a/pom.xml b/pom.xml
index 804b0c8f2f..de26e2b762 100644
--- a/pom.xml
+++ b/pom.xml
@@ -122,6 +122,8 @@
<properties>
<!-- default properties-->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <maven.compiler.source>8</maven.compiler.source>
+ <maven.compiler.target>8</maven.compiler.target>
<snappy.version>1.1.2.6</snappy.version>
<hadoop.version>2.7.2</hadoop.version>
<httpclient.version>4.3.4</httpclient.version>