You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Michael Stack (Jira)" <ji...@apache.org> on 2021/06/02 04:20:00 UTC

[jira] [Created] (HBASE-25960) Build includes unshaded netty .so; clashes w/ downstreamers who would use a different version of netty

Michael Stack created HBASE-25960:
-------------------------------------

             Summary: Build includes unshaded netty .so; clashes w/ downstreamers who would use a different version of netty
                 Key: HBASE-25960
                 URL: https://issues.apache.org/jira/browse/HBASE-25960
             Project: HBase
          Issue Type: Bug
          Components: build
            Reporter: Michael Stack


A coworker was trying to use hbase client in a fat application that uses a different netty version to what hbase uses internally. Their app would fail to launch because it kept bumping into an incompatible netty .so lib. Here are the unshaded netty .so's we bundle looking at hbase-2.4.1...:

./lib/hbase-shaded-netty-3.4.1.jar has:

{code}
META-INF/native/libnetty_transport_native_epoll_aarch_64.so
META-INF/native/liborg_apache_hbase_thirdparty_netty_transport_native_epoll_x86_64.so
META-INF/native/libnetty_transport_native_epoll_x86_64.so
{code}

(HBASE-25959 should fix the non-relocation of libnetty_transport_native_epoll_aarch_64).

./lib/shaded-clients/hbase-shaded-client-byo-hadoop-2.4.1.1-apple.jar has the same three .sos as does ./lib/shaded-clients/hbase-shaded-mapreduce-2.4.1.1-apple.jar
and ./lib/shaded-clients/hbase-shaded-client-2.4.1.1-apple.jar

We even bundle ./lib/netty-all-4.1.17.Final.jar which unsurprisingly has the netty .sos in it.

Looking at published builds of hbase-thirdparty, I see that these too include the above trio of .sos... The hbase-shaded-netty includes them in 3.4.1 https://repo1.maven.org/maven2/org/apache/hbase/thirdparty/hbase-shaded-netty/3.4.1/ as does 3.5.0.

I just tried running a build of hbase-thirdparty and it does NOT include the extras....

META-INF/native/liborg_apache_hbase_thirdparty_netty_transport_native_epoll_aarch_64.so
META-INF/native/liborg_apache_hbase_thirdparty_netty_transport_native_epoll_x86_64.so

(it has the fix for aarch included... when I built)

Here is link to the snapshot I made:

https://repository.apache.org/content/repositories/orgapachehbase-1451/org/apache/hbase/thirdparty/hbase-shaded-netty/3.5.1-stack4/






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