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)