You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kudu.apache.org by "Peter Palaga (Jira)" <ji...@apache.org> on 2020/11/16 09:30:00 UTC

[jira] [Commented] (KUDU-3188) Consider to stop shading dependencies in kudu-client

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

Peter Palaga commented on KUDU-3188:
------------------------------------

We have found yet another solution based on "unshading" Netty on our side. This will work as long as Kudu client brings a Netty version close enough to the one used by Quarkus Netty extension. See https://github.com/apache/camel-quarkus/pull/2008 for details.

> Consider to stop shading dependencies in kudu-client
> ----------------------------------------------------
>
>                 Key: KUDU-3188
>                 URL: https://issues.apache.org/jira/browse/KUDU-3188
>             Project: Kudu
>          Issue Type: Improvement
>          Components: client
>            Reporter: Peter Palaga
>            Assignee: Grant Henke
>            Priority: Major
>
> My motivation for asking this is the following:
> I work on Apache Camel Quarkus, where we basically port Camel components to Quarkus incl. native compilation using GraalVM. Java code typically needs to get prepared for native compilation with GraalVM by registering classes for reflection, requesting class initialization at runtime, setting class/method substitutions, etc.
> As you may know there is [Kudu Camel component|https://camel.apache.org/components/latest/kudu-component.html] that is using kudu-client internally. Porting it to GraalVM is currently quite cumbersome due to shading.
> If Netty was a standard dependency of kudu-client, we could simply re-use the work done in [quarkus-netty-extension|https://github.com/quarkusio/quarkus/blob/master/extensions/netty/deployment/src/main/java/io/quarkus/netty/deployment/NettyProcessor.java] by depending on it in camel-quarkus-kudu. But because netty is shaded in kudu-client, we have no better choice than copy & adapt all the quarkus-netty-extension code to Camel Quarkus and maintain it there: https://github.com/apache/camel-quarkus/pull/1667/files Needless to say, we'd prefer not maintaining the copied code in Camel Quarkus. 
> So I'd like to ask whether there is any chance to stop shading Netty and possibly other kudu-client dependencies. 
> I wonder which reasons you had for introducing shading originally? 
> I know that compatibility of Netty between micro releases used to be quite flaky in the past. The last comment in https://github.com/netty/netty/issues/7586 brings some hope that it is not an issue anymore.



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