You’re right. The patch doesn’t work on 3.5 for some reason. There might be some other Maven patch missing.
Andor > On 2020. Apr 29., at 10:18, Andor Molnar <an...@apache.org> wrote: > > Checking. > > >> On 2020. Apr 29., at 9:41, Szalay-Bekő Máté <szalay.beko.m...@gmail.com> >> wrote: >> >> I merged the change and tried to test this locally on branch-3.5 but >> haven't succeed so far. >> >> Steps: >> - checkout branch-3.5 (I already merged the PR) >> - build ZK from source with openjdk 13.0.2 (I used maven 3.6.3 and "git >> clean -xdf && mvn clean install -DskipTests") >> - run server with JDK 8 (I don't have Oracle JDK, but tried "8.0.252-zulu", >> "8.0.242-zulu" and "8.0.212-zulu" with sdkman.io, these should be OpenJDK >> builds) >> >> I got "java.lang.NoSuchMethodError: >> java.nio.ByteBuffer.clear()Ljava/nio/ByteBuffer;" exception in the server >> logs right when I started the server. >> >> Could someone verify this behaviour on branch-3.5? >> >> There might be some other differences between branch-3.5 and master. Or >> maybe OpenJDK 8 behaves differently than the Oracle JDK used by Andor for >> testing? >> I'll try to dig deeper later. >> >> On Tue, Apr 28, 2020 at 3:26 PM Andor Molnar <an...@apache.org> wrote: >> >>> https://github.com/apache/zookeeper/pull/1340 >>> >>> >>> >>>> On 2020. Apr 28., at 15:04, Andor Molnar <an...@apache.org> wrote: >>>> >>>> I verified the patch, it works perfectly. >>>> >>>> Steps: >>>> - build ZK from source with openjdk 13.0.2 >>>> - run server with Oracle 1.8.0_201 >>>> - connect zkcli with both java versions >>>> - run some smoke tests >>>> >>>> It worked perfectly with master and failed with 3.5.7 with the >>> “NoSuchMethodError” as mentioned in the ticket. >>>> >>>> I’ll backport the patch to 3.6 and 3.5 and mark the ticket resolved. >>>> >>>> Thanks again. >>>> >>>> Andor >>>> >>>> >>>> >>>> >>>> >>>>> On 2020. Apr 28., at 13:27, Andor Molnar <an...@apache.org> wrote: >>>>> >>>>> Great. I’ll take care of that. >>>>> >>>>> >>>>> >>>>>> On 2020. Apr 28., at 13:08, Enrico Olivelli <eolive...@gmail.com> >>> wrote: >>>>>> >>>>>> Il Mar 28 Apr 2020, 10:48 Andor Molnar <an...@apache.org> ha scritto: >>>>>> >>>>>>> Really? >>>>>>> That patch is a general solution and actually looks really promising >>> to >>>>>>> me. I’ll check. >>>>>>> >>>>>> >>>>>> I forgot that in that patch option 2 is already implemented >>>>>> https://github.com/apache/zookeeper/pull/1269 >>>>>> We could port it to 3.6 branch and to branch 3.5 >>>>>> >>>>>> Enrico >>>>>> >>>>>>> >>>>>>> Thanks Chris. >>>>>>> >>>>>>> Andor >>>>>>> >>>>>>> >>>>>>> >>>>>>>> On 2020. Apr 28., at 9:34, Enrico Olivelli <eolive...@gmail.com> >>> wrote: >>>>>>>> >>>>>>>> Il Mar 28 Apr 2020, 02:47 Christopher <ctubb...@apache.org> ha >>> scritto: >>>>>>>> >>>>>>>>> Option 2 was implemented by me already as part of my pull request >>> for >>>>>>>>> https://issues.apache.org/jira/browse/ZOOKEEPER-3739 >>>>>>>>> This change was applied to 3.6.1 and 3.7.0. >>>>>>>>> >>>>>>>> >>>>>>>> This is not the problem but the problem with ByteBuffer. >>>>>>>> >>>>>>>> Enrico >>>>>>>> >>>>>>>> >>>>>>>>> If this didn't fix it, I'd have to look into it further. But, the >>>>>>>>> option 1 doesn't look too bad to me. >>>>>>>>> >>>>>>>>> On Mon, Apr 27, 2020 at 1:16 PM Enrico Olivelli < >>> eolive...@gmail.com> >>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>> Optional 2 is the best. >>>>>>>>>> >>>>>>>>>> I have fallen into this problem while preparing 3.6.1 rc. I was >>> using >>>>>>>>> jdk14 >>>>>>>>>> and my binaries wouldn't run in jdk8 >>>>>>>>>> >>>>>>>>>> Enrico >>>>>>>>>> >>>>>>>>>> Il Lun 27 Apr 2020, 18:58 Andor Molnar <an...@apache.org> ha >>> scritto: >>>>>>>>>> >>>>>>>>>>> Hi folks, >>>>>>>>>>> >>>>>>>>>>> https://issues.apache.org/jira/browse/ZOOKEEPER-3215 >>>>>>>>>>> >>>>>>>>>>> has come up recently again and I’m thinking of the right way to >>>>>>> resolve >>>>>>>>>>> this. Given that we have some Maven experts in the house my first >>>>>>>>> question >>>>>>>>>>> would be: can we just resolve this with some Maven magic? >>>>>>>>>>> >>>>>>>>>>> Option #1 >>>>>>>>>>> Apply https://github.com/apache/zookeeper/pull/760 on master >>> branch >>>>>>> to >>>>>>>>>>> make explicit casts which will hint the compiler to use the right >>>>>>>>> method. >>>>>>>>>>> >>>>>>>>>>> Option #2 >>>>>>>>>>> Detect the Java compiler with Maven and add “—release 8” switch >>> to all >>>>>>>>>>> Java compilers with version 9+. >>>>>>>>>>> >>>>>>>>>>> I really want to resolve this with some automated solution, >>> because >>>>>>>>>>> changing the source code seems to me ugly and fragile. Do we have >>> any >>>>>>>>> other >>>>>>>>>>> option? >>>>>>>>>>> >>>>>>>>>>> Regards, >>>>>>>>>>> Andor >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>> >>>>>>> >>>>>>> >>>>> >>>> >>> >>> >