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

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


The following commit(s) were added to refs/heads/master by this push:
     new 21dc9a0  BIGTOP-3548: Hive build failure caused by 
protoc-jar-maven-plugin missing aarch64 support (#783)
21dc9a0 is described below

commit 21dc9a0a6e1d84b0d6de3f131dd2a24a30565f42
Author: Jun He <[email protected]>
AuthorDate: Thu Jun 10 17:59:41 2021 +0800

    BIGTOP-3548: Hive build failure caused by protoc-jar-maven-plugin missing 
aarch64 support (#783)
    
    This is a follow-up patch of 0cabb0791e430ec0f710371cecd20b10c9ae815c
    to solve the build failure on CentOS-7.
    The reason is protoc included in com.github.os72::protoc doesn't work
    with legacy centos-7 libc. so we use protoc built by bigtop_toolchain
    to create a local jar.
    
    Change-Id: I22b6158997adb946237121ed509159e21d7b6b45
    Signed-off-by: Jun He <[email protected]>
---
 bigtop-packages/src/common/hive/do-component-build | 11 +++-
 .../src/common/hive/patch6-HIVE-21939.diff         | 60 ----------------------
 2 files changed, 10 insertions(+), 61 deletions(-)

diff --git a/bigtop-packages/src/common/hive/do-component-build 
b/bigtop-packages/src/common/hive/do-component-build
index bfec827..31dc34a 100644
--- a/bigtop-packages/src/common/hive/do-component-build
+++ b/bigtop-packages/src/common/hive/do-component-build
@@ -32,11 +32,20 @@ HIVE_MAVEN_OPTS=" -Dhbase.version=$HBASE_VERSION \
 # Include common Maven Deployment logic
 . $(dirname ${0})/maven_deploy.sh
 
+# create com.google.protobuf:protoc artifact with local protoc built by 
toolchain
+# for non-x86 platforms
+if [ $HOSTTYPE = "powerpc64le" ] ; then
+  mvn install:install-file -DgroupId=com.google.protobuf -DartifactId=protoc 
-Dversion=2.5.0 \
+    -Dclassifier=linux-ppcle_64 -Dpackaging=exe -Dfile=/usr/local/bin/protoc
+elif [ $HOSTTYPE = "aarch64" ] ; then
+  mvn install:install-file -DgroupId=com.google.protobuf -DartifactId=protoc 
-Dversion=2.5.0 \
+    -Dclassifier=linux-aarch_64 -Dpackaging=exe -Dfile=/usr/local/bin/protoc
+fi
 export MAVEN_OPTS="${MAVEN_OPTS} -Xmx1500m -Xms1500m"
 mvn ${HIVE_MAVEN_OPTS} clean install ${EXTRA_GOALS} -Pdist "$@"
 
 mkdir -p build/dist
 tar -C build/dist --strip-components=1 -xzf 
packaging/target/apache-hive-${HIVE_VERSION}-bin.tar.gz
 
-# HIVE-13177 
+# HIVE-13177
 sed -i "s#jdbcStandaloneJarPath=\`ls 
\${HIVE_LIB}/hive-jdbc-\*-standalone.jar\`#jdbcStandaloneJarPath=#" 
build/dist/bin/ext/beeline.sh
diff --git a/bigtop-packages/src/common/hive/patch6-HIVE-21939.diff 
b/bigtop-packages/src/common/hive/patch6-HIVE-21939.diff
deleted file mode 100644
index 51d2c28..0000000
--- a/bigtop-packages/src/common/hive/patch6-HIVE-21939.diff
+++ /dev/null
@@ -1,60 +0,0 @@
-diff --git a/standalone-metastore/pom.xml b/standalone-metastore/pom.xml
-index 884dbfdf31..6d2ca187df 100644
---- a/standalone-metastore/pom.xml
-+++ b/standalone-metastore/pom.xml
-@@ -81,7 +81,9 @@
-     <log4j2.version>2.8.2</log4j2.version>
-     <mockito-all.version>1.10.19</mockito-all.version>
-     <orc.version>1.5.1</orc.version>
--    <protobuf.version>2.5.0</protobuf.version>
-+    <protobuf.group>com.google.protobuf</protobuf.group>
-+    <protobuf.version>2.6.1</protobuf.version>
-+    <protobuf-exc.version>2.6.1</protobuf-exc.version>
-     <sqlline.version>1.3.0</sqlline.version>
-     <storage-api.version>2.7.0</storage-api.version>
- 
-@@ -480,6 +482,35 @@
-       </build>
-     </profile>
-     -->
-+    <!-- use com.github.os72 on aarch64 and ppc64le platform -->
-+    <profile>
-+      <id>aarch64</id>
-+      <properties>
-+        <protobuf.group>com.github.os72</protobuf.group>
-+        <protobuf-exc.version>2.6.1-build3</protobuf-exc.version>
-+      </properties>
-+      <activation>
-+        <os>
-+          <family>unix</family>
-+          <name>Linux</name>
-+          <arch>aarch64</arch>
-+        </os>
-+      </activation>
-+    </profile>
-+    <profile>
-+      <id>ppc64le</id>
-+      <properties>
-+        <protobuf.group>com.github.os72</protobuf.group>
-+        <protobuf-exc.version>2.6.1-build3</protobuf-exc.version>
-+      </properties>
-+      <activation>
-+        <os>
-+          <family>unix</family>
-+          <name>Linux</name>
-+          <arch>ppc64le</arch>
-+        </os>
-+      </activation>
-+    </profile>
-   </profiles>
- 
-   <build>
-@@ -599,7 +630,7 @@
-               <goal>run</goal>
-             </goals>
-             <configuration>
--              
<protocArtifact>com.google.protobuf:protoc:2.5.0</protocArtifact>
-+              
<protocArtifact>${protobuf.group}:protoc:${protobuf-exc.version}</protocArtifact>
-               <addSources>none</addSources>
-               <inputDirectories>
-                 
<include>${basedir}/src/main/protobuf/org/apache/hadoop/hive/metastore</include>

Reply via email to