JDK 16 is actually in "early-access" but is expected to be GA on 2021/03/16 https://openjdk.java.net/projects/jdk/16/
It brings:
According to JEPs list in JDK 17 https://openjdk.java.net/projects/jdk/17/ we could crash against:
JDK 16 Task list
JDK 17 Task list
JDK 16 is actually in "early-access" but is expected to be GA on 2021/03/16 https://openjdk.java.net/projects/jdk/16/
It brings:
new Long(n). Logstash doesn't use these but JRuby seems to use it https://github.com/jruby/jruby/blob/48208dcb1e750013869c6f627350d4a420201adb/core/src/main/java/org/jruby/parser/RubyParser.java#L3864 and I'm not able to view if this could impact LogstashAccording to JEPs list in JDK 17 https://openjdk.java.net/projects/jdk/17/ we could crash against:
java.security.AccessControllerusage has to be reworkedsun.misc.Unsafeare not anymore usable, which could maybe lead us to update some dependencies.JDK 16 Task list
Dockerfile.alpinehttps://gist.github.com/andsel/38972519c366a673f7d4487e7eaa2695https://github.com/andsel/logstash/tree/fix/jdk16_adaptationsDockerfile.alpineinto the local clonedocker build -t logstash_alpine . -f Dockerfile.alpinerake artifact:archivesbuild/folder withdocker run --rm -it -v `pwd`/build:/opt/logstash/build logstash_alpine shcd /opt/logstash/build/andtar zxf logstash-8.0.0-SNAPSHOT-no-jdk.tar.gzsh bin/logstash -e "input {stdin{}} output{stdout{codec => rubydebug}}"fixes for the buildFix failing test under JDK16 #13203verify mostly used plugins works with JDK 16JDK 17 Task list
sun.misc.Unsafeclassbundle AdomptiumOpenJDK 17 intoPR Update bundled JDK to jdk 17 #133438.0configure G1GC flags appropriately for JDK 17 (the default GC of the JVM)Determine best G1GC flags to avoid too much compromise on performance and memory consumption #13378