drill-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DRILL-5876) Remove netty-tcnative inclusion in java-exec/pom.xml
Date Sat, 14 Oct 2017 16:13:00 GMT

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

ASF GitHub Bot commented on DRILL-5876:
---------------------------------------

Github user vrozov commented on a diff in the pull request:

    https://github.com/apache/drill/pull/991#discussion_r144697258
  
    --- Diff: exec/java-exec/pom.xml ---
    @@ -701,18 +707,21 @@
           <!--
           Include the os-maven-plugin to get os.detected.classifier
           -->
    -      <extension>
    -        <groupId>kr.motd.maven</groupId>
    -        <artifactId>os-maven-plugin</artifactId>
    -        <version>1.5.0.Final</version>
    -      </extension>
    -    </extensions>
    +      <!-- Uncomment the following to get a debug build that allows openssl support
-->
    --- End diff --
    
    Looking at netty code it seems to use `Class.forName("io.netty.internal.tcnative.SSL",
false, OpenSsl.class.getClassLoader());` ([see OpenSsl](https://github.com/netty/netty/blob/4.1/handler/src/main/java/io/netty/handler/ssl/OpenSsl.java)),
so if all netty-tcnative OS dependent jars are on the classpath, it should load the first
in the classpath (if delegated to the system classloader) or one that OpenSsl classloader
finds. My understanding is that OpenSsl class is loaded by the system classloader (I may be
wrong), but in this case, having all variants of netty-tcnative on the classpath, will not
resolve the issue as netty will try to load "io.netty.internal.tcnative.SSL" class only from
one of the jars and if it happens to be a wrong jar, will disable OpenSsl functionality.


> Remove netty-tcnative inclusion in java-exec/pom.xml
> ----------------------------------------------------
>
>                 Key: DRILL-5876
>                 URL: https://issues.apache.org/jira/browse/DRILL-5876
>             Project: Apache Drill
>          Issue Type: Bug
>            Reporter: Parth Chandra
>
> The inclusion of netty-tcnative is causing all kinds of problems. The os specific classifier
 required is determined by a maven extension which in turn requires an additional eclipse
plugin. The eclipse plugin has a problem that may corrupt the current workspace.
> It is safe to not include the dependency since it is required only at runtime. The only
case in which this is required is when a developer has to debug SSL/OpenSSL issues in the
Java client or the server when launching from within an IDE. In this case, the dependency
can be enabled by uncommenting the relevant lines in the pom file.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message