[
https://issues.apache.org/jira/browse/AVRO-2624?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17114410#comment-17114410
]
ASF subversion and git services commented on AVRO-2624:
-------------------------------------------------------
Commit e208f4b2d442bc14aaba3dad86e8122b83a0873c in avro's branch
refs/heads/master from Daniel Kulp
[ https://gitbox.apache.org/repos/asf?p=avro.git;h=e208f4b ]
[AVRO-2624] Bunch of casts to just Buffer so that avro built with Java11 will
work at runtime with Java 8.
> 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)