-
-
Notifications
You must be signed in to change notification settings - Fork 930
Open
Description
I have yet to reproduce this outside of Logstash, but all our ci is failing on main since the upgrade to 9.4.14.0:
❯ docker run -it docker.elastic.co/logstash/logstash:9.2.0-SNAPSHOT sh -c "bin/logstash --log.level=debug -V | head -n 5"
Using bundled JDK: /usr/share/logstash/jdk
Sending Logstash logs to /usr/share/logstash/logs which is now configured via log4j2.properties
[2025-09-08T17:45:17,827][INFO ][logstash.runner ] Log4j configuration path used is: /usr/share/logstash/config/log4j2.properties
logstash 9.2.0
jruby 9.4.14.0 (3.1.7) 2025-08-28 ddda6d5992 OpenJDK 64-Bit Server VM 21.0.8+9-LTS on 21.0.8+9-LTS +indy +jit [aarch64-linux]
java 21.0.8 (Eclipse Adoptium)
When forcing jit:
❯ docker run -e LS_JAVA_OPTS="-Djruby.jit.threshold=0" -it docker.elastic.co/logstash/logstash:9.2.0-SNAPSHOT sh -c "bin/logstash --log.level=debug -V"
Using bundled JDK: /usr/share/logstash/jdk
[FATAL] 2025-09-08 17:45:52.862 [main] Logstash - Logstash stopped processing because of an error: (ArgumentError) wrong number of arguments (given 2, expected 1)
org.jruby.exceptions.ArgumentError: (ArgumentError) wrong number of arguments (given 2, expected 1)
at usr.share.logstash.vendor.bundle.jruby.$3_dot_1_dot_0.gems.mustermann_minus_3_dot_0_dot_4.lib.mustermann.ast.parser.parse(/usr/share/logstash/vendor/bundle/jruby/3.1.0/gems/mustermann-3.0.4/lib/mustermann/ast/parser.rb:16) ~[?:?]
at usr.share.logstash.vendor.jruby.lib.ruby.stdlib.forwardable.parse(/usr/share/logstash/vendor/jruby/lib/ruby/stdlib/forwardable.rb:238) ~[?:?]
at usr.share.logstash.vendor.bundle.jruby.$3_dot_1_dot_0.gems.mustermann_minus_3_dot_0_dot_4.lib.mustermann.ast.pattern.to_ast(/usr/share/logstash/vendor/bundle/jruby/3.1.0/gems/mustermann-3.0.4/lib/mustermann/ast/pattern.rb:91) ~[?:?]
at usr.share.logstash.vendor.bundle.jruby.$3_dot_1_dot_0.gems.mustermann_minus_3_dot_0_dot_4.lib.mustermann.equality_map.fetch(/usr/share/logstash/vendor/bundle/jruby/3.1.0/gems/mustermann-3.0.4/lib/mustermann/equality_map.rb:43) ~[?:?]
at usr.share.logstash.vendor.bundle.jruby.$3_dot_1_dot_0.gems.mustermann_minus_3_dot_0_dot_4.lib.mustermann.ast.pattern.to_ast(/usr/share/logstash/vendor/bundle/jruby/3.1.0/gems/mustermann-3.0.4/lib/mustermann/ast/pattern.rb:90) ~[?:?]
at usr.share.logstash.vendor.bundle.jruby.$3_dot_1_dot_0.gems.mustermann_minus_3_dot_0_dot_4.lib.mustermann.ast.pattern.compile(/usr/share/logstash/vendor/bundle/jruby/3.1.0/gems/mustermann-3.0.4/lib/mustermann/ast/pattern.rb:81) ~[?:?]
at usr.share.logstash.vendor.bundle.jruby.$3_dot_1_dot_0.gems.mustermann_minus_3_dot_0_dot_4.lib.mustermann.regexp_based.initialize(/usr/share/logstash/vendor/bundle/jruby/3.1.0/gems/mustermann-3.0.4/lib/mustermann/regexp_based.rb:19) ~[?:?]
at org.jruby.RubyClass.new(org/jruby/RubyClass.java:950) ~[jruby.jar:?] at usr.share.logstash.vendor.bundle.jruby.$3_dot_1_dot_0.gems.mustermann_minus_3_dot_0_dot_4.lib.mustermann.pattern.new(/usr/share/logstash/vendor/bundle/jruby/3.1.0/gems/mustermann-3.0.4/lib/mustermann/pattern.rb:59) ~[?:?]
at usr.share.logstash.vendor.bundle.jruby.$3_dot_1_dot_0.gems.mustermann_minus_3_dot_0_dot_4.lib.mustermann.equality_map.fetch(/usr/share/logstash/vendor/bundle/jruby/3.1.0/gems/mustermann-3.0.4/lib/mustermann/equality_map.rb:43) ~[?:?]
at usr.share.logstash.vendor.bundle.jruby.$3_dot_1_dot_0.gems.mustermann_minus_3_dot_0_dot_4.lib.mustermann.pattern.new(/usr/share/logstash/vendor/bundle/jruby/3.1.0/gems/mustermann-3.0.4/lib/mustermann/pattern.rb:59) ~[?:?]
at usr.share.logstash.vendor.bundle.jruby.$3_dot_1_dot_0.gems.mustermann_minus_3_dot_0_dot_4.lib.mustermann.new(/usr/share/logstash/vendor/bundle/jruby/3.1.0/gems/mustermann-3.0.4/lib/mustermann.rb:68) ~[?:?]
at usr.share.logstash.vendor.bundle.jruby.$3_dot_1_dot_0.gems.sinatra_minus_4_dot_1_dot_1.lib.sinatra.base.compile(/usr/share/logstash/vendor/bundle/jruby/3.1.0/gems/sinatra-4.1.1/lib/sinatra/base.rb:1814) ~[?:?]
at usr.share.logstash.vendor.bundle.jruby.$3_dot_1_dot_0.gems.sinatra_minus_4_dot_1_dot_1.lib.sinatra.base.compile!(/usr/share/logstash/vendor/bundle/jruby/3.1.0/gems/sinatra-4.1.1/lib/sinatra/base.rb:1801) ~[?:?]
at usr.share.logstash.vendor.bundle.jruby.$3_dot_1_dot_0.gems.sinatra_minus_4_dot_1_dot_1.lib.sinatra.base.route(/usr/share/logstash/vendor/bundle/jruby/3.1.0/gems/sinatra-4.1.1/lib/sinatra/base.rb:1776) ~[?:?]
at usr.share.logstash.vendor.bundle.jruby.$3_dot_1_dot_0.gems.sinatra_minus_4_dot_1_dot_1.lib.sinatra.base.get(/usr/share/logstash/vendor/bundle/jruby/3.1.0/gems/sinatra-4.1.1/lib/sinatra/base.rb:1531) ~[?:?]
at RUBY.<class:Node>(/usr/share/logstash/logstash-core/lib/logstash/api/modules/node.rb:29) ~[?:?]
at RUBY.<module:Modules>(/usr/share/logstash/logstash-core/lib/logstash/api/modules/node.rb:24) ~[?:?]
at RUBY.<module:Api>(/usr/share/logstash/logstash-core/lib/logstash/api/modules/node.rb:23) ~[?:?]
at RUBY.<module:LogStash>(/usr/share/logstash/logstash-core/lib/logstash/api/modules/node.rb:22) ~[?:?]
at RUBY.<main>(/usr/share/logstash/logstash-core/lib/logstash/api/modules/node.rb:21) ~[?:?]
at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:1187) ~[jruby.jar:?] at usr.share.logstash.vendor.jruby.lib.ruby.stdlib.rubygems.core_ext.kernel_require.require(/usr/share/logstash/vendor/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:144) ~[?:?] at RUBY.<main>(/usr/share/logstash/logstash-core/lib/logstash/api/rack_app.rb:22) ~[?:?]
at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:1187) ~[jruby.jar:?]
at usr.share.logstash.vendor.jruby.lib.ruby.stdlib.rubygems.core_ext.kernel_require.require(/usr/share/logstash/vendor/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:144) ~[?:?] at RUBY.<main>(/usr/share/logstash/logstash-core/lib/logstash/webserver.rb:18) ~[?:?]
at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:1187) ~[jruby.jar:?]
at usr.share.logstash.vendor.jruby.lib.ruby.stdlib.rubygems.core_ext.kernel_require.require(/usr/share/logstash/vendor/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:144) ~[?:?] at RUBY.<main>(/usr/share/logstash/logstash-core/lib/logstash/agent.rb:33) ~[?:?]
at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:1187) ~[jruby.jar:?] at usr.share.logstash.vendor.jruby.lib.ruby.stdlib.rubygems.core_ext.kernel_require.require(/usr/share/logstash/vendor/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:144) ~[?:?]
at RUBY.<main>(/usr/share/logstash/logstash-core/lib/logstash/runner.rb:42) ~[?:?]
at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:1187) ~[jruby.jar:?]
at usr.share.logstash.vendor.jruby.lib.ruby.stdlib.rubygems.core_ext.kernel_require.require(/usr/share/logstash/vendor/jruby/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:144) ~[?:?]
at usr.share.logstash.lib.bootstrap.environment.<main>(/usr/share/logstash/lib/bootstrap/environment.rb:88) ~[?:?]
I'll work tomorrow on a smaller reproducer, but since this reproduces exclusively by jit.threshold=0 I though I'd alert asap.
The environment is:
[2025-09-08T17:46:46,937][INFO ][logstash.runner ] Starting Logstash {"logstash.version"=>"9.2.0", "jruby.version"=>"jruby 9.4.14.0 (3.1.7) 2025-08-28 ddda6d5992 OpenJDK 64-Bit Server VM 21.0.8+9-LTS on 21.0.8+9-LTS +indy +jit [aarch64-linux]"}
[2025-09-08T17:46:46,938][INFO ][logstash.runner ] JVM bootstrap flags: [-Xms1g, -Xmx1g, -Djava.awt.headless=true, -Dfile.encoding=UTF-8, -Djruby.compile.invokedynamic=true, -XX:+HeapDumpOnOutOfMemoryError, -Djava.security.egd=file:/dev/urandom, -Dlog4j2.isThreadContextMapInheritable=true, -Dls.cgroup.cpuacct.path.override=/, -Dls.cgroup.cpu.path.override=/, -Djruby.regexp.interruptible=true, -Djdk.io.File.enableADS=true, --add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED, --add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED, --add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED, --add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED, --add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED, --add-opens=java.base/java.security=ALL-UNNAMED, --add-opens=java.base/java.io=ALL-UNNAMED, --add-opens=java.base/java.nio.channels=ALL-UNNAMED, --add-opens=java.base/sun.nio.ch=ALL-UNNAMED, --add-opens=java.management/sun.management=ALL-UNNAMED, -Dio.netty.allocator.maxOrder=11]
Metadata
Metadata
Assignees
Labels
No labels