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

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

    [ https://issues.apache.org/jira/browse/HBASE-25960?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17355475#comment-17355475 ] 

Michael Stack commented on HBASE-25960:
---------------------------------------

If I check the thirdparty libs, I see that 3.2.0 has the shaded lib only. 3.3.0 is where we include shaded and non-shaded.... Perhaps it something about how these libs are built?

> 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
>            Priority: Major
>
> 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)