You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Since upgrading to latest jruby-9.1.13.0 (and jruby-openssl 0.9.21), I've been seeing a new class of errors regarding socket communication, specifically in my local net/http usage. Here are a few backtraces that might help:
IOError: bad record MAC
org/jruby/ext/openssl/SSLSocket.java:836:in `sysread_nonblock'
/.bundle/jruby/2.3.0/gems/jruby-openssl-0.9.21-java/lib/jopenssl23/openssl/buffering.rb:177:in `read_nonblock'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/protocol.rb:169:in `rbuf_fill'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/protocol.rb:136:in `readuntil'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/protocol.rb:146:in `readline'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/http/response.rb:40:in `read_status_line'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/http/response.rb:29:in `read_new'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/http.rb:1448:in `block in transport_request'
org/jruby/RubyKernel.java:1120:in `catch'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/http.rb:1445:in `transport_request'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/http.rb:1418:in `request'
# another
IOError: Unsupported record version Unknown-84.84
org/jruby/ext/openssl/SSLSocket.java:836:in `sysread_nonblock'
/Projects/palanca/.bundle/jruby/2.3.0/gems/jruby-openssl-0.9.21-java/lib/jopenssl23/openssl/buffering.rb:177:in `read_nonblock'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/protocol.rb:169:in `rbuf_fill'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/protocol.rb:136:in `readuntil'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/protocol.rb:146:in `readline'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/http/response.rb:40:in `read_status_line'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/http/response.rb:29:in `read_new'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/http.rb:1448:in `block in transport_request'
org/jruby/RubyKernel.java:1120:in `catch'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/http.rb:1445:in `transport_request'
/.rubies/jruby-9.1.8.0/lib/ruby/stdlib/net/http.rb:1418:in `request'
needless to say, this class of errors don't happen using CRuby's openssl. I've seen that the ciphers advertised for both aren't the same, but since I'm creating both the server and the client in the same jruby process with access to the same ciphers, I don't see how this could be the problem.
The backtrace also show that the error happens fetching the status line, so technically the request has been sent (?).
However, I'm also getting this error-less backtrace, which might be generated from the server, but have no idea what's causing it:
java.nio.Buffer.position(Buffer.java:244)
sun.security.ssl.EngineOutputRecord.write(EngineOutputRecord.java:247)
sun.security.ssl.EngineOutputRecord.write(EngineOutputRecord.java:225)
sun.security.ssl.EngineWriter.writeRecord(EngineWriter.java:186)
sun.security.ssl.SSLEngineImpl.writeRecord(SSLEngineImpl.java:1280)
sun.security.ssl.SSLEngineImpl.writeAppRecord(SSLEngineImpl.java:1251)
sun.security.ssl.SSLEngineImpl.wrap(SSLEngineImpl.java:1166)
javax.net.ssl.SSLEngine.wrap(SSLEngine.java:469)
org.jruby.ext.openssl.SSLSocket.write(SSLSocket.java:624)
org.jruby.ext.openssl.SSLSocket.syswriteImpl(SSLSocket.java:869)
org.jruby.ext.openssl.SSLSocket.syswrite_nonblock(SSLSocket.java:893)
org.jruby.ext.openssl.SSLSocket$INVOKER$i$syswrite_nonblock.call(SSLSocket$INVOKER$i$syswrite_nonblock.gen)
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:193)
org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:323)
org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:73)
org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:89)
org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:214)
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:200)
org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:208)
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:193)
org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:323)
org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:73)
org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:83)
org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:179)
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:165)
org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:200)
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:161)
org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:314)
org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:73)
org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:77)
org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:144)
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:130)
org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:192)
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:129)
Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.invokeOther4:flush(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:141)
Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.RUBY$method$dwrite$0(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:141)
org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:90)
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:128)
org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:192)
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:129)
Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.invokeOther1:dwrite(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:107)
Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.RUBY$block$rw$2(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:107)
org.jruby.runtime.CompiledIRBlockBody.yieldDirect(CompiledIRBlockBody.java:156)
org.jruby.runtime.BlockBody.yield(BlockBody.java:109)
org.jruby.runtime.Block.yield(Block.java:167)
org.jruby.RubyContinuation.enter(RubyContinuation.java:107)
org.jruby.RubyKernel.rbCatch19Common(RubyKernel.java:1127)
org.jruby.RubyKernel.rbCatch19(RubyKernel.java:1120)
org.jruby.RubyKernel$INVOKER$s$rbCatch19.call(RubyKernel$INVOKER$s$rbCatch19.gen)
org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:171)
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:177)
Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.invokeOther4:catch(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:105)
Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.RUBY$block$rw$1(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:105)
org.jruby.runtime.CompiledIRBlockBody.yieldDirect(CompiledIRBlockBody.java:156)
org.jruby.runtime.BlockBody.yield(BlockBody.java:109)
org.jruby.runtime.Block.yield(Block.java:167)
org.jruby.RubyContinuation.enter(RubyContinuation.java:107)
org.jruby.RubyKernel.rbCatch19Common(RubyKernel.java:1127)
org.jruby.RubyKernel.rbCatch19(RubyKernel.java:1120)
org.jruby.RubyKernel$INVOKER$s$rbCatch19.call(RubyKernel$INVOKER$s$rbCatch19.gen)
org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:171)
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:177)
Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.invokeOther8:catch(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:104)
Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.RUBY$method$rw$0(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:104)
org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:90)
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:128)
org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:192)
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:129)
Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.invokeOther9:rw(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:57)
Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.RUBY$method$run$0(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:57)
org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:90)
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:128)
org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:192)
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:129)
Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.invokeOther0:run(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:48)
Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.RUBY$method$resume$0(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:48)
org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:90)
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:128)
org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:192)
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:129)
Users.tiagocardoso.Projects.palanca.lib.palanca.reactor.invokeOther3:resume(/Users/tiagocardoso/Projects/palanca/lib/palanca/reactor.rb:138)
Users.tiagocardoso.Projects.palanca.lib.palanca.reactor.RUBY$method$continue$0(/Users/tiagocardoso/Projects/palanca/lib/palanca/reactor.rb:138)
org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:103)
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:163)
org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:200)
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:161)
Users.tiagocardoso.Projects.palanca.lib.palanca.reactor.invokeOther0:continue(/Users/tiagocardoso/Projects/palanca/lib/palanca/reactor.rb:74)
Users.tiagocardoso.Projects.palanca.lib.palanca.reactor.RUBY$block$run$0(/Users/tiagocardoso/Projects/palanca/lib/palanca/reactor.rb:74)
org.jruby.runtime.CompiledIRBlockBody.yieldDirect(CompiledIRBlockBody.java:156)
org.jruby.runtime.MixedModeIRBlockBody.yieldDirect(MixedModeIRBlockBody.java:122)
org.jruby.runtime.BlockBody.yield(BlockBody.java:109)
org.jruby.runtime.Block.yield(Block.java:167)
org.jruby.ir.runtime.IRRuntimeHelpers.yield(IRRuntimeHelpers.java:446)
org.jruby.ir.targets.YieldSite.yield(YieldSite.java:87)
Users.tiagocardoso.Projects.palanca.lib.palanca.reactor.selector.RUBY$block$select$6(/Users/tiagocardoso/Projects/palanca/lib/palanca/reactor/selector.rb:112)
org.jruby.runtime.CompiledIRBlockBody.yieldDirect(CompiledIRBlockBody.java:156)
org.jruby.runtime.BlockBody.yield(BlockBody.java:109)
org.jruby.runtime.Block.yield(Block.java:167)
org.jruby.RubyArray.each(RubyArray.java:1734)
org.jruby.RubyArray$INVOKER$i$0$0$each.call(RubyArray$INVOKER$i$0$0$each.gen)
org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:139)
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:145)
Users.tiagocardoso.Projects.palanca.lib.palanca.reactor.selector.invokeOther50:each(/Users/tiagocardoso/Projects/palanca/lib/palanca/reactor/selector.rb:114)
Users.tiagocardoso.Projects.palanca.lib.palanca.reactor.selector.RUBY$method$select$0(/Users/tiagocardoso/Projects/palanca/lib/palanca/reactor/selector.rb:114)
org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:103)
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:163)
org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:171)
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:177)
org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:332)
org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:73)
org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:83)
org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:179)
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:165)
org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:348)
org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:173)
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:177)
org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:332)
org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:73)
org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:83)
org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:179)
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:165)
org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:171)
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:177)
org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:332)
org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:73)
org.jruby.ir.interpreter.Interpreter.INTERPRET_BLOCK(Interpreter.java:132)
org.jruby.runtime.MixedModeIRBlockBody.commonYieldPath(MixedModeIRBlockBody.java:148)
org.jruby.runtime.IRBlockBody.call(IRBlockBody.java:69)
org.jruby.runtime.Block.call(Block.java:126)
org.jruby.RubyProc.call(RubyProc.java:289)
org.jruby.RubyProc.call(RubyProc.java:246)
org.jruby.internal.runtime.RubyRunnable.run(RubyRunnable.java:104)
java.lang.Thread.run(Thread.java:745)
Exception in thread "Ruby-0-Thread-18: /Users/tiagocardoso/Projects/palanca/lib/palanca/server.rb:33" java.lang.IllegalArgumentException
at java.nio.Buffer.position(Buffer.java:244)
at sun.security.ssl.EngineOutputRecord.write(EngineOutputRecord.java:247)
at sun.security.ssl.EngineOutputRecord.write(EngineOutputRecord.java:225)
at sun.security.ssl.EngineWriter.writeRecord(EngineWriter.java:186)
at sun.security.ssl.SSLEngineImpl.writeRecord(SSLEngineImpl.java:1280)
at sun.security.ssl.SSLEngineImpl.writeAppRecord(SSLEngineImpl.java:1251)
at sun.security.ssl.SSLEngineImpl.wrap(SSLEngineImpl.java:1166)
at javax.net.ssl.SSLEngine.wrap(SSLEngine.java:469)
at org.jruby.ext.openssl.SSLSocket.write(SSLSocket.java:624)
at org.jruby.ext.openssl.SSLSocket.syswriteImpl(SSLSocket.java:869)
at org.jruby.ext.openssl.SSLSocket.syswrite_nonblock(SSLSocket.java:893)
at org.jruby.ext.openssl.SSLSocket$INVOKER$i$syswrite_nonblock.call(SSLSocket$INVOKER$i$syswrite_nonblock.gen)
at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:193)
at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:323)
at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:73)
at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:89)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:214)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:200)
at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:208)
at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:193)
at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:323)
at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:73)
at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:83)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:179)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:165)
at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:200)
at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:161)
at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:314)
at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:73)
at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:77)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:144)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:130)
at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:192)
at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:129)
at Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.invokeOther4:flush(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:141)
at Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.RUBY$method$dwrite$0(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:141)
at org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:90)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:128)
at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:192)
at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:129)
at Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.invokeOther1:dwrite(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:107)
at Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.RUBY$block$rw$2(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:107)
at org.jruby.runtime.CompiledIRBlockBody.yieldDirect(CompiledIRBlockBody.java:156)
at org.jruby.runtime.BlockBody.yield(BlockBody.java:109)
at org.jruby.runtime.Block.yield(Block.java:167)
at org.jruby.RubyContinuation.enter(RubyContinuation.java:107)
at org.jruby.RubyKernel.rbCatch19Common(RubyKernel.java:1127)
at org.jruby.RubyKernel.rbCatch19(RubyKernel.java:1120)
at org.jruby.RubyKernel$INVOKER$s$rbCatch19.call(RubyKernel$INVOKER$s$rbCatch19.gen)
at org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:171)
at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:177)
at Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.invokeOther4:catch(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:105)
at Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.RUBY$block$rw$1(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:105)
at org.jruby.runtime.CompiledIRBlockBody.yieldDirect(CompiledIRBlockBody.java:156)
at org.jruby.runtime.BlockBody.yield(BlockBody.java:109)
at org.jruby.runtime.Block.yield(Block.java:167)
at org.jruby.RubyContinuation.enter(RubyContinuation.java:107)
at org.jruby.RubyKernel.rbCatch19Common(RubyKernel.java:1127)
at org.jruby.RubyKernel.rbCatch19(RubyKernel.java:1120)
at org.jruby.RubyKernel$INVOKER$s$rbCatch19.call(RubyKernel$INVOKER$s$rbCatch19.gen)
at org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:171)
at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:177)
at Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.invokeOther8:catch(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:104)
at Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.RUBY$method$rw$0(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:104)
at org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:90)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:128)
at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:192)
at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:129)
at Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.invokeOther9:rw(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:57)
at Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.RUBY$method$run$0(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:57)
at org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:90)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:128)
at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:192)
at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:129)
at Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.invokeOther0:run(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:48)
at Users.tiagocardoso.Projects.palanca.lib.palanca.http.flower.RUBY$method$resume$0(/Users/tiagocardoso/Projects/palanca/lib/palanca/http/flower.rb:48)
at org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:90)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:128)
at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:192)
at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:129)
at Users.tiagocardoso.Projects.palanca.lib.palanca.reactor.invokeOther3:resume(/Users/tiagocardoso/Projects/palanca/lib/palanca/reactor.rb:138)
at Users.tiagocardoso.Projects.palanca.lib.palanca.reactor.RUBY$method$continue$0(/Users/tiagocardoso/Projects/palanca/lib/palanca/reactor.rb:138)
at org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:103)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:163)
at org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:200)
at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:161)
at Users.tiagocardoso.Projects.palanca.lib.palanca.reactor.invokeOther0:continue(/Users/tiagocardoso/Projects/palanca/lib/palanca/reactor.rb:74)
at Users.tiagocardoso.Projects.palanca.lib.palanca.reactor.RUBY$block$run$0(/Users/tiagocardoso/Projects/palanca/lib/palanca/reactor.rb:74)
at org.jruby.runtime.CompiledIRBlockBody.yieldDirect(CompiledIRBlockBody.java:156)
at org.jruby.runtime.MixedModeIRBlockBody.yieldDirect(MixedModeIRBlockBody.java:122)
at org.jruby.runtime.BlockBody.yield(BlockBody.java:109)
at org.jruby.runtime.Block.yield(Block.java:167)
at org.jruby.ir.runtime.IRRuntimeHelpers.yield(IRRuntimeHelpers.java:446)
at org.jruby.ir.targets.YieldSite.yield(YieldSite.java:87)
at Users.tiagocardoso.Projects.palanca.lib.palanca.reactor.selector.RUBY$block$select$6(/Users/tiagocardoso/Projects/palanca/lib/palanca/reactor/selector.rb:112)
at org.jruby.runtime.CompiledIRBlockBody.yieldDirect(CompiledIRBlockBody.java:156)
at org.jruby.runtime.BlockBody.yield(BlockBody.java:109)
at org.jruby.runtime.Block.yield(Block.java:167)
at org.jruby.RubyArray.each(RubyArray.java:1734)
at org.jruby.RubyArray$INVOKER$i$0$0$each.call(RubyArray$INVOKER$i$0$0$each.gen)
at org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:139)
at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:145)
at Users.tiagocardoso.Projects.palanca.lib.palanca.reactor.selector.invokeOther50:each(/Users/tiagocardoso/Projects/palanca/lib/palanca/reactor/selector.rb:114)
at Users.tiagocardoso.Projects.palanca.lib.palanca.reactor.selector.RUBY$method$select$0(/Users/tiagocardoso/Projects/palanca/lib/palanca/reactor/selector.rb:114)
at org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:103)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:163)
at org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:171)
at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:177)
at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:332)
at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:73)
at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:83)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:179)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:165)
at org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:348)
at org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:173)
at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:177)
at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:332)
at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:73)
at org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:83)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:179)
at org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:165)
at org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:171)
at org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:177)
at org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:332)
at org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:73)
at org.jruby.ir.interpreter.Interpreter.INTERPRET_BLOCK(Interpreter.java:132)
at org.jruby.runtime.MixedModeIRBlockBody.commonYieldPath(MixedModeIRBlockBody.java:148)
at org.jruby.runtime.IRBlockBody.call(IRBlockBody.java:69)
at org.jruby.runtime.Block.call(Block.java:126)
at org.jruby.RubyProc.call(RubyProc.java:289)
at org.jruby.RubyProc.call(RubyProc.java:246)
at org.jruby.internal.runtime.RubyRunnable.run(RubyRunnable.java:104)
at java.lang.Thread.run(Thread.java:745)
yes, it's huge.
Any help sorting this out?
The text was updated successfully, but these errors were encountered:
Since upgrading to latest jruby-9.1.13.0 (and jruby-openssl 0.9.21), I've been seeing a new class of errors regarding socket communication, specifically in my local net/http usage. Here are a few backtraces that might help:
needless to say, this class of errors don't happen using CRuby's openssl. I've seen that the ciphers advertised for both aren't the same, but since I'm creating both the server and the client in the same jruby process with access to the same ciphers, I don't see how this could be the problem.
The backtrace also show that the error happens fetching the status line, so technically the request has been sent (?).
However, I'm also getting this error-less backtrace, which might be generated from the server, but have no idea what's causing it:
yes, it's huge.
Any help sorting this out?
The text was updated successfully, but these errors were encountered: