[ 
https://issues.apache.org/jira/browse/HIVE-21939?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Zhenyu Zheng updated HIVE-21939:
--------------------------------
    Description: 
When I try to build master of Hive from source code on "aarch64" server, I met 
following error:

[ERROR] Failed to execute goal 
com.github.os72:protoc-jar-maven-plugin:3.5.1.1:run (default) on project 
hive-standalone-metastore-common: Error resolving artifact: 
com.google.protobuf:protoc:2.5.0: Could not find artifact 
com.google.protobuf:protoc:exe:linux-aarch_64:2.5.0 in central 
([https://repo.maven.apache.org/maven2)]

that is because Hive using the "com.google.protobuf:protoc:2.5.0" as required 
artifact, which does not have released package for "aarch64" platform.
 
In order to fix this, I bumped the protobuf used in standalone-metadata to 
2.6.1 and added a new profile, this profile will identify
the hardware architecture and if it is Aarch64, it will override the protobuf 
[group.id|http://group.id/] and package to com.github.os72 which
includes ARM support. For X86 platform, Hive will still download the protobuf 
packages from org.google repo. With this method,
we can make Hive able to run on Aarch64 and keep the influence to existing x86 
users to the minimum.

  was:
When I try to build master of Hive from source code on "aarch64" server, I met 
following error:

[ERROR] Failed to execute goal 
com.github.os72:protoc-jar-maven-plugin:3.5.1.1:run (default) on project 
hive-standalone-metastore-common: Error resolving artifact: 
com.google.protobuf:protoc:2.5.0: Could not find artifact 
com.google.protobuf:protoc:exe:linux-aarch_64:2.5.0 in central 
([https://repo.maven.apache.org/maven2)]

that is because Hive using the "com.google.protobuf:protoc:2.5.0" as required 
artifact, which does not have released package for "aarch64" platform.

Hadoop has the same problem and after some discussion, we upgraded protobuf to 
version 3.7.1(https://issues.apache.org/jira/browse/HADOOP-13363) and the work 
is mostly done. We can do the same in Hive.


> protoc:2.5.0  dependence has broken building on aarch64
> -------------------------------------------------------
>
>                 Key: HIVE-21939
>                 URL: https://issues.apache.org/jira/browse/HIVE-21939
>             Project: Hive
>          Issue Type: Bug
>            Reporter: liusheng
>            Assignee: Zhenyu Zheng
>            Priority: Blocker
>              Labels: pull-request-available
>         Attachments: HIVE-21939.1.patch, HIVE-21939.2.patch, 
> hive_build_with_protobuf_371.log
>
>          Time Spent: 40m
>  Remaining Estimate: 0h
>
> When I try to build master of Hive from source code on "aarch64" server, I 
> met following error:
> [ERROR] Failed to execute goal 
> com.github.os72:protoc-jar-maven-plugin:3.5.1.1:run (default) on project 
> hive-standalone-metastore-common: Error resolving artifact: 
> com.google.protobuf:protoc:2.5.0: Could not find artifact 
> com.google.protobuf:protoc:exe:linux-aarch_64:2.5.0 in central 
> ([https://repo.maven.apache.org/maven2)]
> that is because Hive using the "com.google.protobuf:protoc:2.5.0" as required 
> artifact, which does not have released package for "aarch64" platform.
>  
> In order to fix this, I bumped the protobuf used in standalone-metadata to 
> 2.6.1 and added a new profile, this profile will identify
> the hardware architecture and if it is Aarch64, it will override the protobuf 
> [group.id|http://group.id/] and package to com.github.os72 which
> includes ARM support. For X86 platform, Hive will still download the protobuf 
> packages from org.google repo. With this method,
> we can make Hive able to run on Aarch64 and keep the influence to existing 
> x86 users to the minimum.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to