-
-
Save olleolleolle/b78af4b668fe022af2f2 to your computer and use it in GitHub Desktop.
A backtrace of running a Celluloid program on JRuby 1.7.21 and on 9.0.0.0.rc2 and on master (0f616f984ba51ccd4d8ddafc53dd8dab93b4e5dc).
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ERROR [2015-07-20 19:48:46.521] BackgroundWorkers: org.jruby.RubyArray.compact_bang(RubyArray.java:2007) | |
org.jruby.RubyArray.compatc19(RubyArray.java:2038) | |
org.jruby.RubyArray$INVOKER$i$0$0$compatc19.call(RubyArray$INVOKER$i$0$0$compatc19.gen) | |
org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:306) | |
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:136) | |
org.jruby.ast.CallNoArgNode.interpret(CallNoArgNode.java:60) | |
org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) | |
org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) | |
org.jruby.ast.DNode.appendToString(DNode.java:70) | |
org.jruby.ast.DNode.buildDynamicString(DNode.java:88) | |
org.jruby.ast.DNode.interpret(DNode.java:36) | |
org.jruby.ast.CallOneArgNode.interpret(CallOneArgNode.java:57) | |
org.jruby.ast.NewlineNode.interpret(NewlineNode.java:105) | |
org.jruby.ast.BlockNode.interpret(BlockNode.java:71) | |
org.jruby.evaluator.ASTInterpreter.INTERPRET_METHOD(ASTInterpreter.java:74) | |
org.jruby.internal.runtime.methods.InterpretedMethod.call(InterpretedMethod.java:112) | |
org.jruby.internal.runtime.methods.DefaultMethod.call(DefaultMethod.java:169) | |
org.jruby.RubyKernel.public_send(RubyKernel.java:1930) | |
org.jruby.RubyKernel$INVOKER$s$0$0$public_send.call(RubyKernel$INVOKER$s$0$0$public_send.gen) | |
org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:210) | |
org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:336) | |
org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:179) | |
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:183) | |
org.jruby.runtime.callsite.CachingCallSite.callVarargs(CachingCallSite.java:113) | |
rubyjit.Celluloid::Call$$dispatch_5e38fb7d2fe1bc982bd133f0b257909e5702b37f166239592.chained_0_rescue_1$RUBY$SYNTHETIC__file__(/Users/olle/work/server/src/server/gems/jruby/1.9/gems/celluloid-0.15.2/lib/celluloid/calls.rb:25) | |
rubyjit.Celluloid::Call$$dispatch_5e38fb7d2fe1bc982bd133f0b257909e5702b37f166239592.__file__(/Users/olle/work/server/src/server/gems/jruby/1.9/gems/celluloid-0.15.2/lib/celluloid/calls.rb) | |
rubyjit.Celluloid::Call$$dispatch_5e38fb7d2fe1bc982bd133f0b257909e5702b37f166239592.__file__(/Users/olle/work/server/src/server/gems/jruby/1.9/gems/celluloid-0.15.2/lib/celluloid/calls.rb) | |
org.jruby.internal.runtime.methods.JittedMethod.call(JittedMethod.java:201) | |
org.jruby.runtime.callsite.SuperCallSite.callBlock(SuperCallSite.java:190) | |
org.jruby.runtime.callsite.SuperCallSite.call(SuperCallSite.java:197) | |
rubyjit.Celluloid::SyncCall$$dispatch_9c7bb48da5b48e7e3b2a20b8e6f06f61a1026b68166239592.chained_1_rescue_1$RUBY$SYNTHETIC__file__(/Users/olle/work/server/src/server/gems/jruby/1.9/gems/celluloid-0.15.2/lib/celluloid/calls.rb:67) | |
rubyjit.Celluloid::SyncCall$$dispatch_9c7bb48da5b48e7e3b2a20b8e6f06f61a1026b68166239592.chained_0_ensure_1$RUBY$__ensure__(/Users/olle/work/server/src/server/gems/jruby/1.9/gems/celluloid-0.15.2/lib/celluloid/calls.rb) | |
rubyjit.Celluloid::SyncCall$$dispatch_9c7bb48da5b48e7e3b2a20b8e6f06f61a1026b68166239592.__file__(/Users/olle/work/server/src/server/gems/jruby/1.9/gems/celluloid-0.15.2/lib/celluloid/calls.rb) | |
rubyjit.Celluloid::SyncCall$$dispatch_9c7bb48da5b48e7e3b2a20b8e6f06f61a1026b68166239592.__file__(/Users/olle/work/server/src/server/gems/jruby/1.9/gems/celluloid-0.15.2/lib/celluloid/calls.rb) | |
org.jruby.internal.runtime.methods.JittedMethod.call(JittedMethod.java:181) | |
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:168) | |
rubyjit.Celluloid::Actor$$handle_message_51f8d5836011878482c891ce681f44e23722f2d2166239592.block_0$RUBY$__file__(/Users/olle/work/server/src/server/gems/jruby/1.9/gems/celluloid-0.15.2/lib/celluloid/actor.rb:322) | |
rubyjit$Celluloid::Actor$$handle_message_51f8d5836011878482c891ce681f44e23722f2d2166239592$block_0$RUBY$__file__.call(rubyjit$Celluloid::Actor$$handle_message_51f8d5836011878482c891ce681f44e23722f2d2166239592$block_0$RUBY$__file__) | |
org.jruby.runtime.CompiledBlock19.yieldSpecificInternal(CompiledBlock19.java:117) | |
org.jruby.runtime.CompiledBlock19.yieldSpecific(CompiledBlock19.java:92) | |
org.jruby.runtime.Block.yieldSpecific(Block.java:111) | |
rubyjit.Celluloid::Actor$$task_a0c8fafd0521470c2660ee502d7763d7a30762bb166239592.block_0$RUBY$__file__(/Users/olle/work/server/src/server/gems/jruby/1.9/gems/celluloid-0.15.2/lib/celluloid/actor.rb:416) | |
rubyjit$Celluloid::Actor$$task_a0c8fafd0521470c2660ee502d7763d7a30762bb166239592$block_0$RUBY$__file__.call(rubyjit$Celluloid::Actor$$task_a0c8fafd0521470c2660ee502d7763d7a30762bb166239592$block_0$RUBY$__file__) | |
org.jruby.runtime.CompiledBlock19.yieldSpecificInternal(CompiledBlock19.java:117) | |
org.jruby.runtime.CompiledBlock19.yieldSpecific(CompiledBlock19.java:92) | |
org.jruby.runtime.Block.yieldSpecific(Block.java:111) | |
rubyjit.Celluloid::Task$$initialize_1f90d1b08aebb577bffa3d8c17964ad7d7dbfe08166239592.chained_1_rescue_1$RUBY$SYNTHETIC__file__(/Users/olle/work/server/src/server/gems/jruby/1.9/gems/celluloid-0.15.2/lib/celluloid/tasks.rb:55) | |
rubyjit.Celluloid::Task$$initialize_1f90d1b08aebb577bffa3d8c17964ad7d7dbfe08166239592.chained_0_ensure_1$RUBY$__ensure__(/Users/olle/work/server/src/server/gems/jruby/1.9/gems/celluloid-0.15.2/lib/celluloid/tasks.rb) | |
rubyjit.Celluloid::Task$$initialize_1f90d1b08aebb577bffa3d8c17964ad7d7dbfe08166239592.block_0$RUBY$__file__(/Users/olle/work/server/src/server/gems/jruby/1.9/gems/celluloid-0.15.2/lib/celluloid/tasks.rb:47) | |
rubyjit$Celluloid::Task$$initialize_1f90d1b08aebb577bffa3d8c17964ad7d7dbfe08166239592$block_0$RUBY$__file__.call(rubyjit$Celluloid::Task$$initialize_1f90d1b08aebb577bffa3d8c17964ad7d7dbfe08166239592$block_0$RUBY$__file__) | |
org.jruby.runtime.CompiledBlock19.yieldSpecificInternal(CompiledBlock19.java:117) | |
org.jruby.runtime.CompiledBlock19.yieldSpecific(CompiledBlock19.java:92) | |
org.jruby.runtime.Block.yieldSpecific(Block.java:111) | |
rubyjit.Celluloid::TaskFiber$$create_a4d77cdd1dfa08afdf4a8ded40f48696f746b3a8166239592.block_0$RUBY$__file__(/Users/olle/work/server/src/server/gems/jruby/1.9/gems/celluloid-0.15.2/lib/celluloid/tasks/task_fiber.rb:13) | |
rubyjit$Celluloid::TaskFiber$$create_a4d77cdd1dfa08afdf4a8ded40f48696f746b3a8166239592$block_0$RUBY$__file__.call(rubyjit$Celluloid::TaskFiber$$create_a4d77cdd1dfa08afdf4a8ded40f48696f746b3a8166239592$block_0$RUBY$__file__) | |
org.jruby.runtime.CompiledBlock19.yield(CompiledBlock19.java:159) | |
org.jruby.runtime.CompiledBlock19.yield(CompiledBlock19.java:145) | |
org.jruby.runtime.Block.yieldArray(Block.java:158) | |
org.jruby.ext.fiber.ThreadFiber$1.run(ThreadFiber.java:223) | |
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) | |
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) | |
java.lang.Thread.run(Thread.java:745) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ERROR [2015-07-20 19:59:57.053] BackgroundWorkers: org.jruby.RubyArray.compact_bang(RubyArray.java:1909) | |
org.jruby.RubyArray.compact19(RubyArray.java:1937) | |
org.jruby.RubyArray$INVOKER$i$0$0$compact19.call(RubyArray$INVOKER$i$0$0$compact19.gen) | |
org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:293) | |
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:131) | |
org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:305) | |
org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:77) | |
org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:129) | |
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:115) | |
org.jruby.RubyKernel.public_send(RubyKernel.java:1824) | |
org.jruby.RubyKernel$INVOKER$s$0$0$public_send.call(RubyKernel$INVOKER$s$0$0$public_send.gen) | |
org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:273) | |
org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:79) | |
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:83) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.calls.invokeOther5:public_send(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/calls.rb) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.calls.RUBY$method$dispatch$0(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/calls.rb:25) | |
org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:101) | |
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:113) | |
org.jruby.ir.runtime.IRRuntimeHelpers.instanceSuper(IRRuntimeHelpers.java:890) | |
org.jruby.ir.runtime.IRRuntimeHelpers.instanceSuperSplatArgs(IRRuntimeHelpers.java:883) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.calls.invokeSuper14:dispatch(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/calls.rb) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.calls.RUBY$method$dispatch$0(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/calls.rb:67) | |
org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:131) | |
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:183) | |
org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:201) | |
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:161) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.actor.invokeOther32:dispatch(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/actor.rb) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.actor.RUBY$block$handle_message$3(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/actor.rb:322) | |
org.jruby.runtime.CompiledIRBlockBody.commonYieldPath(CompiledIRBlockBody.java:70) | |
org.jruby.runtime.IRBlockBody.yieldSpecific(IRBlockBody.java:66) | |
org.jruby.runtime.Block.yieldSpecific(Block.java:116) | |
org.jruby.ir.runtime.IRRuntimeHelpers.yieldSpecific(IRRuntimeHelpers.java:456) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.actor.RUBY$block$task$1(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/actor.rb:416) | |
org.jruby.runtime.CompiledIRBlockBody.commonYieldPath(CompiledIRBlockBody.java:70) | |
org.jruby.runtime.IRBlockBody.yieldSpecific(IRBlockBody.java:66) | |
org.jruby.runtime.Block.yieldSpecific(Block.java:116) | |
org.jruby.ir.runtime.IRRuntimeHelpers.yieldSpecific(IRRuntimeHelpers.java:456) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.tasks.RUBY$block$initialize$2(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/tasks.rb:55) | |
org.jruby.runtime.CompiledIRBlockBody.commonYieldPath(CompiledIRBlockBody.java:70) | |
org.jruby.runtime.IRBlockBody.yieldSpecific(IRBlockBody.java:66) | |
org.jruby.runtime.Block.yieldSpecific(Block.java:116) | |
org.jruby.ir.runtime.IRRuntimeHelpers.yieldSpecific(IRRuntimeHelpers.java:456) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.tasks.task_fiber.RUBY$block$create$2(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/tasks/task_fiber.rb:13) | |
org.jruby.runtime.CompiledIRBlockBody.commonYieldPath(CompiledIRBlockBody.java:70) | |
org.jruby.runtime.IRBlockBody.doYield(IRBlockBody.java:146) | |
org.jruby.runtime.BlockBody.yield(BlockBody.java:83) | |
org.jruby.runtime.Block.yieldArray(Block.java:161) | |
org.jruby.ext.fiber.ThreadFiber$1.run(ThreadFiber.java:259) | |
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) | |
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) | |
java.lang.Thread.run(Thread.java:745) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ERROR [2015-07-20 20:23:17.182] BackgroundWorkers: org.jruby.RubyArray.compact_bang(RubyArray.java:1898) | |
org.jruby.RubyArray.compact19(RubyArray.java:1926) | |
org.jruby.RubyArray$INVOKER$i$0$0$compact19.call(RubyArray$INVOKER$i$0$0$compact19.gen) | |
org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:293) | |
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:131) | |
org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:305) | |
org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:77) | |
org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:128) | |
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:114) | |
org.jruby.RubyKernel.public_send(RubyKernel.java:1824) | |
org.jruby.RubyKernel$INVOKER$s$0$0$public_send.call(RubyKernel$INVOKER$s$0$0$public_send.gen) | |
org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:273) | |
org.jruby.runtime.callsite.CachingCallSite.callBlock(CachingCallSite.java:79) | |
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:83) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.calls.invokeOther5:public_send(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/calls.rb) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.calls.RUBY$method$dispatch$0(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/calls.rb:25) | |
org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:101) | |
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:112) | |
org.jruby.ir.runtime.IRRuntimeHelpers.instanceSuper(IRRuntimeHelpers.java:892) | |
org.jruby.ir.runtime.IRRuntimeHelpers.instanceSuperSplatArgs(IRRuntimeHelpers.java:884) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.calls.invokeSuper14:dispatch(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/calls.rb) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.calls.RUBY$method$dispatch$0(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/calls.rb:67) | |
org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:131) | |
org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:182) | |
org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:201) | |
org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:161) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.actor.invokeOther32:dispatch(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/actor.rb) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.actor.RUBY$block$handle_message$3(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/actor.rb:322) | |
org.jruby.runtime.CompiledIRBlockBody.commonYieldPath(CompiledIRBlockBody.java:70) | |
org.jruby.runtime.IRBlockBody.yieldSpecific(IRBlockBody.java:66) | |
org.jruby.runtime.Block.yieldSpecific(Block.java:116) | |
org.jruby.ir.runtime.IRRuntimeHelpers.yieldSpecific(IRRuntimeHelpers.java:457) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.actor.RUBY$block$task$1(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/actor.rb:416) | |
org.jruby.runtime.CompiledIRBlockBody.commonYieldPath(CompiledIRBlockBody.java:70) | |
org.jruby.runtime.IRBlockBody.yieldSpecific(IRBlockBody.java:66) | |
org.jruby.runtime.Block.yieldSpecific(Block.java:116) | |
org.jruby.ir.runtime.IRRuntimeHelpers.yieldSpecific(IRRuntimeHelpers.java:457) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.tasks.RUBY$block$initialize$2(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/tasks.rb:55) | |
org.jruby.runtime.CompiledIRBlockBody.commonYieldPath(CompiledIRBlockBody.java:70) | |
org.jruby.runtime.IRBlockBody.yieldSpecific(IRBlockBody.java:66) | |
org.jruby.runtime.Block.yieldSpecific(Block.java:116) | |
org.jruby.ir.runtime.IRRuntimeHelpers.yieldSpecific(IRRuntimeHelpers.java:457) | |
Users.olle.work.server.src.server.gems.jruby.$2_dot_2_dot_0.gems.celluloid_minus_0_dot_15_dot_2.lib.celluloid.tasks.task_fiber.RUBY$block$create$2(/Users/olle/work/server/src/server/gems/jruby/2.2.0/gems/celluloid-0.15.2/lib/celluloid/tasks/task_fiber.rb:13) | |
org.jruby.runtime.CompiledIRBlockBody.commonYieldPath(CompiledIRBlockBody.java:70) | |
org.jruby.runtime.IRBlockBody.doYield(IRBlockBody.java:146) | |
org.jruby.runtime.BlockBody.yield(BlockBody.java:83) | |
org.jruby.runtime.Block.yieldArray(Block.java:161) | |
org.jruby.ext.fiber.ThreadFiber$1.run(ThreadFiber.java:259) | |
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) | |
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) | |
java.lang.Thread.run(Thread.java:745) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class WorkerSupervisor | |
include Celluloid | |
finalizer :stop_workers | |
… | |
def stop_workers | |
@terminating = true | |
stopped = @workers.map { |worker| stop_worker(worker) } | |
@logger.info "Stopped #{stopped.count} background workers (#{stopped.compact.join(' ')})" | |
end | |
private | |
… | |
def stop_worker(actor) | |
worker_class = @classes[actor] | |
actor.terminate | |
cleanup_after_worker(actor) | |
worker_class | |
rescue Celluloid::DeadActorError | |
end | |
def cleanup_after_worker(actor) | |
@workers.delete(actor) | |
@classes.delete(actor) | |
end | |
end | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment