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

Ryan Skraba edited comment on AVRO-2624 at 11/27/19 3:29 PM:
-------------------------------------------------------------

I can reproduce this.  Keep in mind that Hadoop doesn't "officially" [support 
JDK11|https://cwiki.apache.org/confluence/display/HADOOP/Hadoop+Java+Versions] 
yet (but it should be getting there soon).

The workaround in the JIRA looks cumbersome, -but doable today to ensure that 
we can deliver artifacts compiled with JDK8 that work in JDK8/JDK11-. *Edit* It 
looks like artifacts compiled with JDK8 work in both cases.




was (Author: ryanskraba):
I can reproduce this.  Keep in mind that Hadoop doesn't "officially" [support 
JDK11|https://cwiki.apache.org/confluence/display/HADOOP/Hadoop+Java+Versions] 
yet (but it should be getting there soon).

The workaround in the JIRA looks cumbersome, but doable today to ensure that we 
can deliver artifacts compiled with JDK8 that work in JDK8/JDK11.



> Avoid ByteBuffer incompatibility when compiling with JDK9+
> ----------------------------------------------------------
>
>                 Key: AVRO-2624
>                 URL: https://issues.apache.org/jira/browse/AVRO-2624
>             Project: Apache Avro
>          Issue Type: Bug
>          Components: java
>            Reporter: Michael A. Smith
>            Priority: Major
>
> Like MRESOLVER-85 and similar, the java implementation suffers from a 
> compatibility break since java 9. The problem can be seen in the PR for 
> AVRO-2603, https://github.com/apache/avro/pull/706, which fails for JAVA 11, 
> but not for 8.
> The error is:
> {noformat}
> Caused by: java.lang.NoSuchMethodError: 
> java.nio.ByteBuffer.limit(I)Ljava/nio/ByteBuffer;
>   [py-test]   at 
> org.apache.avro.io.BinaryDecoder.readBytes(BinaryDecoder.java:317)
> {noformat}
> * This should not occur when artifacts are compiled with JDK8, even if run in 
> Java 11 runtime.  i.e., This shouldn't be a big issue while maven artifacts 
> are being published with JDK8 (the lowest Java runtime version we support).
> * Likewise, this should not occur when artifacts are compiled with JDK11 
> (with {{-target 1.8}}) and run in a Java 11 runtime, as with the JAVA=11 
> build targets.
> * This *will* occur when the artifacts are compiled with JDK11 (with 
> {{-target 1.8}}) and run in a Java 8 runtime.  
> * It will be important to fix when Avro publishes artifacts built with JDK11 
> and JDK8 is still meant to be supported.



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

Reply via email to