Changeset: 5ddfc0aa7f0e for monetdb-java URL: https://dev.monetdb.org/hg/monetdb-java?cmd=changeset;node=5ddfc0aa7f0e Modified Files: ChangeLog src/main/java/org/monetdb/mcl/parser/StartOfHeaderParser.java Branch: default Log Message:
Implemented fix for released monetdb-jdbc-3.0.jre8.jar and monetdb-mcl-1.19.jre8.jar when it is was run using java build 1.8.0_###. It would throw: java.lang.NoSuchMethodError: java.nio.CharBuffer.mark()Ljava/nio/CharBuffer;i at org.monetdb.mcl.parser.StartOfHeaderParser.getNextAsString(Unknown Source) at org.monetdb.jdbc.MonetConnection$ResponseList.executeQuery(Unknown Source) at org.monetdb.jdbc.MonetConnection$ResponseList.processQuery(Unknown Source) at org.monetdb.jdbc.MonetStatement.internalExecute(Unknown Source) at org.monetdb.jdbc.MonetStatement.execute(Unknown Source) The problem is caused by a change in java.nio.CharBuffer API (return types of methods mark() and reset() have changed from Buffer to CharBuffer) from Java 8 to Java 9+. diffs (51 lines): diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,22 @@ # ChangeLog file for monetdb-java # This file is updated with Maddlog +* Wed Mar 3 2021 Martin van Dinther <martin.van.dint...@monetdbsolutions.com> +- Implemented fix for released monetdb-jdbc-3.0.jre8.jar and + monetdb-mcl-1.19.jre8.jar when it is was run using java build + 1.8.0_###. It would throw: java.lang.NoSuchMethodError: + java.nio.CharBuffer.mark()Ljava/nio/CharBuffer; at + org.monetdb.mcl.parser.StartOfHeaderParser.getNextAsString(Unknown + Source) at + org.monetdb.jdbc.MonetConnection$ResponseList.executeQuery(Unknown + Source) at + org.monetdb.jdbc.MonetConnection$ResponseList.processQuery(Unknown + Source) at org.monetdb.jdbc.MonetStatement.internalExecute(Unknown + Source) at org.monetdb.jdbc.MonetStatement.execute(Unknown Source) + The problem is caused by a change in java.nio.CharBuffer API (return + types of methods mark() and reset() have changed from Buffer to + CharBuffer) from Java 8 to Java 9+. + * Wed Feb 17 2021 Martin van Dinther <martin.van.dint...@monetdbsolutions.com> - Compiled and released new jar files: monetdb-jdbc-3.0.jre8.jar, monetdb-mcl-1.19.jre8.jar and jdbcclient.jre8.jar diff --git a/src/main/java/org/monetdb/mcl/parser/StartOfHeaderParser.java b/src/main/java/org/monetdb/mcl/parser/StartOfHeaderParser.java --- a/src/main/java/org/monetdb/mcl/parser/StartOfHeaderParser.java +++ b/src/main/java/org/monetdb/mcl/parser/StartOfHeaderParser.java @@ -8,6 +8,7 @@ package org.monetdb.mcl.parser; +import java.nio.Buffer; // needed as some CharBuffer overridden methods (mark() and reset()) return type changed between Java 8 (return Buffer) and 9 (or higher) (return CharBuffer) import java.nio.CharBuffer; /** @@ -147,11 +148,11 @@ public final class StartOfHeaderParser { throw new MCLParseException("unexpected end of string", soh.position() - 1); int cnt = 0; - soh.mark(); + ((Buffer)soh).mark(); while (soh.hasRemaining() && soh.get() != ' ') { cnt++; } - soh.reset(); + ((Buffer)soh).reset(); return soh.subSequence(0, cnt).toString(); } _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list