[ 
https://issues.apache.org/jira/browse/AVRO-2624?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ryan Skraba updated AVRO-2624:
------------------------------
    Description: 
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.

  was:
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.  This shouldn't be a big issue while maven artifacts 
* Likewise


> 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