This is an automated email from the ASF dual-hosted git repository.

jackie pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pinot.git


The following commit(s) were added to refs/heads/master by this push:
     new 1f17c465f2 Cleanup HTTP components dependencies and upgrade Thrift 
(#12905)
1f17c465f2 is described below

commit 1f17c465f2e31c31d87a1127c6fac08c83b95528
Author: Xiaotian (Jackie) Jiang <17555551+jackie-ji...@users.noreply.github.com>
AuthorDate: Thu Apr 11 14:56:21 2024 -0700

    Cleanup HTTP components dependencies and upgrade Thrift (#12905)
---
 .../pinot-input-format/pinot-thrift/pom.xml        |  4 ++
 .../inputformat/thrift/ThriftRecordExtractor.java  |  3 +-
 pom.xml                                            | 63 ++++++++++++++--------
 3 files changed, 47 insertions(+), 23 deletions(-)

diff --git a/pinot-plugins/pinot-input-format/pinot-thrift/pom.xml 
b/pinot-plugins/pinot-input-format/pinot-thrift/pom.xml
index bb5ed9c94d..ab2b565f1b 100644
--- a/pinot-plugins/pinot-input-format/pinot-thrift/pom.xml
+++ b/pinot-plugins/pinot-input-format/pinot-thrift/pom.xml
@@ -41,5 +41,9 @@
       <groupId>org.apache.thrift</groupId>
       <artifactId>libthrift</artifactId>
     </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-lang3</artifactId>
+    </dependency>
   </dependencies>
 </project>
diff --git 
a/pinot-plugins/pinot-input-format/pinot-thrift/src/main/java/org/apache/pinot/plugin/inputformat/thrift/ThriftRecordExtractor.java
 
b/pinot-plugins/pinot-input-format/pinot-thrift/src/main/java/org/apache/pinot/plugin/inputformat/thrift/ThriftRecordExtractor.java
index d10557d9b8..4be6374c85 100644
--- 
a/pinot-plugins/pinot-input-format/pinot-thrift/src/main/java/org/apache/pinot/plugin/inputformat/thrift/ThriftRecordExtractor.java
+++ 
b/pinot-plugins/pinot-input-format/pinot-thrift/src/main/java/org/apache/pinot/plugin/inputformat/thrift/ThriftRecordExtractor.java
@@ -97,7 +97,8 @@ public class ThriftRecordExtractor extends 
BaseRecordExtractor<TBase> {
   protected Object convertRecord(Object value) {
     TBase record = (TBase) value;
     Map<Object, Object> convertedRecord = new HashMap<>();
-    for (TFieldIdEnum tFieldIdEnum : 
FieldMetaData.getStructMetaDataMap(record.getClass()).keySet()) {
+    Set<TFieldIdEnum> tFieldIdEnums = 
FieldMetaData.getStructMetaDataMap(record.getClass()).keySet();
+    for (TFieldIdEnum tFieldIdEnum : tFieldIdEnums) {
       Object fieldValue = record.getFieldValue(tFieldIdEnum);
       if (fieldValue != null) {
         fieldValue = convert(fieldValue);
diff --git a/pom.xml b/pom.xml
index 3f5903d1b5..255f13e139 100644
--- a/pom.xml
+++ b/pom.xml
@@ -157,6 +157,7 @@
     <snappy-java.version>1.1.10.5</snappy-java.version>
     <zstd-jni.version>1.5.6-2</zstd-jni.version>
     <lz4-java.version>1.8.0</lz4-java.version>
+    <libthrift.verion>0.20.0</libthrift.verion>
     <log4j.version>2.23.1</log4j.version>
     <slf4j.version>2.0.12</slf4j.version>
     <netty.version>4.1.108.Final</netty.version>
@@ -211,6 +212,12 @@
     <javax.activation.version>1.1.1</javax.activation.version>
     <javax.jsp-api.version>2.2</javax.jsp-api.version>
 
+    <!-- HTTP Components Libraries -->
+    <httpclient.version>4.5.14</httpclient.version>
+    <httpcore.version>4.4.16</httpcore.version>
+    <httpclient5.version>5.3.1</httpclient5.version>
+    <httpcore5.version>5.2.4</httpcore5.version>
+
     <!-- Google Libraries -->
     <google.cloud.libraries.version>26.37.0</google.cloud.libraries.version>
     <google.auth.version>1.23.0</google.auth.version>
@@ -462,27 +469,6 @@
           </exclusion>
         </exclusions>
       </dependency>
-      <dependency>
-        <groupId>org.apache.httpcomponents</groupId>
-        <artifactId>httpmime</artifactId>
-        <version>4.5.13</version>
-      </dependency>
-      <dependency>
-        <groupId>org.apache.httpcomponents</groupId>
-        <artifactId>httpclient</artifactId>
-        <version>4.5.14</version>
-        <exclusions>
-          <exclusion>
-            <groupId>commons-logging</groupId>
-            <artifactId>commons-logging</artifactId>
-          </exclusion>
-        </exclusions>
-      </dependency>
-      <dependency>
-        <groupId>org.apache.httpcomponents</groupId>
-        <artifactId>httpcore</artifactId>
-        <version>4.4.16</version>
-      </dependency>
 
       <!-- netty BOM -->
       <dependency>
@@ -556,7 +542,7 @@
       <dependency>
         <groupId>org.apache.thrift</groupId>
         <artifactId>libthrift</artifactId>
-        <version>0.15.0</version>
+        <version>${libthrift.verion}</version>
       </dependency>
       <dependency>
         <groupId>org.quartz-scheduler</groupId>
@@ -847,6 +833,39 @@
         <version>${javax.jsp-api.version}</version>
       </dependency>
 
+      <!-- HTTP Components Libraries -->
+      <dependency>
+        <groupId>org.apache.httpcomponents</groupId>
+        <artifactId>httpmime</artifactId>
+        <version>${httpclient.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.httpcomponents</groupId>
+        <artifactId>httpclient</artifactId>
+        <version>${httpclient.version}</version>
+        <exclusions>
+          <exclusion>
+            <groupId>commons-logging</groupId>
+            <artifactId>commons-logging</artifactId>
+          </exclusion>
+        </exclusions>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.httpcomponents</groupId>
+        <artifactId>httpcore</artifactId>
+        <version>${httpcore.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.httpcomponents.client5</groupId>
+        <artifactId>httpclient5</artifactId>
+        <version>${httpclient5.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.httpcomponents.core5</groupId>
+        <artifactId>httpcore5</artifactId>
+        <version>${httpcore5.version}</version>
+      </dependency>
+
       <!-- Google Libraries -->
       <dependency>
         <groupId>com.google.cloud</groupId>


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org
For additional commands, e-mail: commits-h...@pinot.apache.org

Reply via email to