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

maoling commented on ZOOKEEPER-3215:
------------------------------------

look at the 
patch:https://github.com/mongodb/mongo-java-driver/commit/21c91bd364d38489e0bbe2e390efdb3746ee3fff
just cast ByteBuffer to Buffer. Java 9 hasn't the good downward compatibility.
Thanks for telling us how to reproduce this issue.
[~softwareengg]
Could you give us a patch?

> Handle Java 9/11 additions of covariant return types to java.nio.ByteBuffer 
> methods
> -----------------------------------------------------------------------------------
>
>                 Key: ZOOKEEPER-3215
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3215
>             Project: ZooKeeper
>          Issue Type: Bug
>    Affects Versions: 3.4.13
>            Reporter: V
>            Priority: Minor
>
> Java 9 introduces covariant return types which allows one to have different 
> return types if return type in the overridden method is a sub type. Since 
> Java 9, few functions return ByteBuffer, whereas the parent method return 
> Buffer, resulting in causing issues for Java 8 and below since for them the 
> method does not exist.
> Steps To Reproduce:
> 1. Setup ZooKeeper Server with JDK11.
> 2. Setup ZooKeeper Client with JDK8.
> 3. Try connecting the client and server.
> Results:
> Cast ByteBuffer instances to Buffer before calling the method.
>  
> Notes:
> There was a similar bug in the MongoDB community - 
> [https://jira.mongodb.org/browse/JAVA-2559]
>  
> This is not a contribution.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to