You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by GitBox <gi...@apache.org> on 2018/10/23 09:15:07 UTC

[GitHub] oleg-zinovev edited a comment on issue #1446: DRILL-6349: Drill JDBC driver fails on Java 1.9+ with NoClassDefFoundError: sun/misc/VM

oleg-zinovev edited a comment on issue #1446: DRILL-6349: Drill JDBC driver fails on Java 1.9+ with NoClassDefFoundError: sun/misc/VM
URL: https://github.com/apache/drill/pull/1446#issuecomment-432165721
 
 
   > @oleg-zinovev, Is it make sence to move these two dependencies to the root pom?
   
   @vvysotskyi, it isn't make sence at all, so i remove this dependencies.
   
   I try to build Drill with fresh JDK 11 and fix new errors:
   1) JMockit 1.39 -> 1.43. JMockit had an issue with java 11 (https://github.com/jmockit/jmockit1/issues/534), so I had to update this dependecy. Starting JMockit 1.42, "-javaagent" must be specified to run tests (http://jmockit.github.io/tutorial/Introduction.html#runningTests) and jmockit.integration.junit4.JMockit.class was removed. That's why i have to change this tests:
   - TestCastFunctions.java
   - TestConstantFolding.java
   - TestDateConversions.java
   - TestDateFunctions.java
   - TestExtendedTypes.java
   - TestUtf8SupportInQueryString.java
   - AvroFormatTest.java
   2) BoundsCheckingTest.java fails with IllegalAccessException. This was fixed by adding a call of setAccessible(true).
   3) JDKClassCompiler.java - Java 11 intoduces 'Nests' (http://openjdk.java.net/jeps/181), and resulting byte-code, generated by javac 11 requires a "Nests" support from ASM visitors. Since Drill supports java 1.8+ i simply add a target and source version to javac call, to not have to change ASM visitors.
   4) hadoop 2.7.1 -> 2.7.4. Haboop org.apache.hadoop.util.Shell class in version 2.7.1 contains a Java version check:
   `System.getProperty("java.version").substring(0, 3).compareTo("1.7") >= 0;`
   But, for jdk 11 (at least for OpenJDK Ubuntu package), System.getProperty("java.version") return "11", and substring call fails. I had to update hadoop to minimal version, which not contains this call.
   5) TestImpersonationMetadata.java - in hadoop 2.7.4 error message was changed, so i slightly change a "expected" error to fit both new and old messages.
   6) maven-source-plugin fails to execute "jar-no-fork" on JDK 11, and i update it to the latest version. 
   
   Now on java 11 fails:
   1) HBase tests
   2) Hive test
   
   I will try to update a HBase and revalidate drill on JDK 9 and JDK 10 to the end of the week.
   
   P.S. I am sorry for possible mistakes because of my bad English

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services