"tests running forever" issue within fiber test
-----------------------------------------------

                 Key: JRUBY-1303
                 URL: http://jira.codehaus.org/browse/JRUBY-1303
             Project: JRuby
          Issue Type: Bug
            Reporter: Charles Oliver Nutter
            Assignee: Thomas E Enebo


Only saw this once, but I wanted to record it here in case it comes up again 
and we need to investigate it. This was during the compiler portion of the unit 
tests (not the specs).

{noformat}
    [junit] Full thread dump Java HotSpot(TM) Client VM (1.6.0-b88-17-release 
mixed mode, sharing):

    [junit] "Thread-44" daemon prio=5 tid=0x02a2c000 nid=0x18d9400 in 
Object.wait() [0xb0d0a000..0xb0d0acd0]
    [junit]    java.lang.Thread.State: WAITING (on object monitor)
    [junit]    JavaThread state: _thread_blocked
    [junit] Thread: 0x02a2c000  [0x18d9400] State: _at_safepoint 
_has_called_back 0 _at_poll_safepoint 0
    [junit]    JavaThread state: _thread_blocked
    [junit]     at java.lang.Object.wait(Native Method)
    [junit]     - waiting on <0x187e4f50> (a java.lang.Object)
    [junit]     at java.lang.Object.wait(Object.java:485)
    [junit]     at 
org.jruby.libraries.FiberLibrary$Fiber.yield(FiberLibrary.java:134)
    [junit]     - locked <0x187e4f50> (a java.lang.Object)
    [junit]     at 
org.jruby.libraries.FiberLibrary$FiberInvoker$yield_FS1.call(Unknown Source)
    [junit]     at 
org.jruby.runtime.callback.FastInvocationCallback.execute(FastInvocationCallback.java:49)
    [junit]     at 
org.jruby.internal.runtime.methods.SimpleCallbackMethod.call(SimpleCallbackMethod.java:70)
    [junit]     at 
org.jruby.runtime.CallAdapter$DefaultCallAdapter.call(CallAdapter.java:168)
    [junit]     at 
org.jruby.runtime.CallAdapter$DefaultCallAdapter.call(CallAdapter.java:105)
    [junit]     at 
test_normal5198365_4382666.closure0(./test/externals/mri/ruby/test_fiber.rb:11)
    [junit]     at test_normal5198365_4382666Blockclosure0xx1.call(Unknown 
Source)
    [junit]     at org.jruby.runtime.CompiledBlock.yield(CompiledBlock.java:81)
    [junit]     at 
org.jruby.libraries.FiberLibrary$Fiber$1.run(FiberLibrary.java:75)
    [junit]     - locked <0x187e4f50> (a java.lang.Object)

    [junit] "AWT-AppKit" daemon prio=5 tid=0x02b00800 nid=0xa000d000 runnable 
[0x00000000..0xbfffd558]
    [junit]    java.lang.Thread.State: RUNNABLE
    [junit]    JavaThread state: _thread_in_native
    [junit] Thread: 0x02b00800  [0xa000d000] State: _at_safepoint 
_has_called_back 0 _at_poll_safepoint 0
    [junit]    JavaThread state: _thread_in_native

    [junit] "Low Memory Detector" daemon prio=5 tid=0x0281d000 nid=0x1808400 
runnable [0x00000000..0x00000000]
    [junit]    java.lang.Thread.State: RUNNABLE
    [junit]    JavaThread state: _thread_blocked
    [junit] Thread: 0x0281d000  [0x1808400] State: _at_safepoint 
_has_called_back 0 _at_poll_safepoint 0
    [junit]    JavaThread state: _thread_blocked

    [junit] "CompilerThread0" daemon prio=9 tid=0x0281b800 nid=0x180a400 
waiting on condition [0x00000000..0xb0b06658]
    [junit]    java.lang.Thread.State: RUNNABLE
    [junit]    JavaThread state: _thread_blocked
    [junit] Thread: 0x0281b800  [0x180a400] State: _at_safepoint 
_has_called_back 0 _at_poll_safepoint 0
    [junit]    JavaThread state: _thread_blocked

    [junit] "Signal Dispatcher" daemon prio=9 tid=0x0281a800 nid=0x1803e00 
waiting on condition [0x00000000..0x00000000]
    [junit]    java.lang.Thread.State: RUNNABLE
    [junit]    JavaThread state: _thread_blocked
    [junit] Thread: 0x0281a800  [0x1803e00] State: _at_safepoint 
_has_called_back 0 _at_poll_safepoint 0
    [junit]    JavaThread state: _thread_blocked

    [junit] "Finalizer" daemon prio=8 tid=0x02816000 nid=0x180a000 in 
Object.wait() [0xb0a04000..0xb0a04cd0]
    [junit]    java.lang.Thread.State: WAITING (on object monitor)
    [junit]    JavaThread state: _thread_blocked
    [junit] Thread: 0x02816000  [0x180a000] State: _at_safepoint 
_has_called_back 0 _at_poll_safepoint 0
    [junit]    JavaThread state: _thread_blocked
    [junit]     at java.lang.Object.wait(Native Method)
    [junit]     - waiting on <0x12db8b78> (a java.lang.ref.ReferenceQueue$Lock)
    [junit]     at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
    [junit]     - locked <0x12db8b78> (a java.lang.ref.ReferenceQueue$Lock)
    [junit]     at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
    [junit]     at 
java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

    [junit] "Reference Handler" daemon prio=10 tid=0x02815000 nid=0x1809c00 in 
Object.wait() [0xb0983000..0xb0983cd0]
    [junit]    java.lang.Thread.State: WAITING (on object monitor)
    [junit]    JavaThread state: _thread_blocked
    [junit] Thread: 0x02815000  [0x1809c00] State: _at_safepoint 
_has_called_back 0 _at_poll_safepoint 0
    [junit]    JavaThread state: _thread_blocked
    [junit]     at java.lang.Object.wait(Native Method)
    [junit]     - waiting on <0x12db8c08> (a java.lang.ref.Reference$Lock)
    [junit]     at java.lang.Object.wait(Object.java:485)
    [junit]     at 
java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
    [junit]     - locked <0x12db8c08> (a java.lang.ref.Reference$Lock)

    [junit] "main" prio=5 tid=0x02802800 nid=0x1805400 runnable 
[0xb07fc000..0xb0800034]
    [junit]    java.lang.Thread.State: RUNNABLE
    [junit]    JavaThread state: _thread_blocked
    [junit] Thread: 0x02802800  [0x1805400] State: _call_back _has_called_back 
1 _at_poll_safepoint 0
    [junit]    JavaThread state: _thread_blocked
    [junit]     at org.jruby.util.MethodCache.removeMethod(MethodCache.java:105)
    [junit]     at org.jruby.RubyModule.addMethod(RubyModule.java:760)
    [junit]     - locked <0x12326968> (a java.util.HashMap)
    [junit]     at 
org.jruby.evaluator.EvaluationState.defnNode(EvaluationState.java:796)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:233)
    [junit]     at 
org.jruby.evaluator.EvaluationState.blockNode(EvaluationState.java:535)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:203)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalClassDefinitionBody(EvaluationState.java:1820)
    [junit]     at 
org.jruby.evaluator.EvaluationState.classNode(EvaluationState.java:669)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:213)
    [junit]     at 
org.jruby.evaluator.EvaluationState.blockNode(EvaluationState.java:535)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:203)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalClassDefinitionBody(EvaluationState.java:1820)
    [junit]     at 
org.jruby.evaluator.EvaluationState.classNode(EvaluationState.java:669)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:213)
    [junit]     at 
org.jruby.evaluator.EvaluationState.blockNode(EvaluationState.java:535)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:203)
    [junit]     at 
org.jruby.evaluator.EvaluationState.rootNode(EvaluationState.java:1563)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:358)
    [junit]     at 
org.jruby.evaluator.EvaluationState.eval(EvaluationState.java:166)
    [junit]     at org.jruby.Ruby.loadFile(Ruby.java:1272)
    [junit]     at 
org.jruby.runtime.load.ExternalScript.load(ExternalScript.java:53)
    [junit]     at 
org.jruby.runtime.load.LoadService.smartLoad(LoadService.java:307)
    [junit]     at 
org.jruby.runtime.load.LoadService.require(LoadService.java:333)
    [junit]     at org.jruby.RubyKernel.require(RubyKernel.java:752)
    [junit]     at org.jruby.RubyKernelInvoker$require_S1.call(Unknown Source)
    [junit]     at 
org.jruby.runtime.callback.InvocationCallback.execute(InvocationCallback.java:58)
    [junit]     at 
org.jruby.internal.runtime.methods.FullFunctionCallbackMethod.call(FullFunctionCallbackMethod.java:73)
    [junit]     at 
org.jruby.runtime.CallAdapter$DefaultCallAdapter.call(CallAdapter.java:168)
    [junit]     at 
org.jruby.runtime.CallAdapter$DefaultCallAdapter.call(CallAdapter.java:105)
    [junit]     at 
org.jruby.evaluator.EvaluationState.fCallNode(EvaluationState.java:997)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:255)
    [junit]     at 
org.jruby.evaluator.EvaluationState.blockNode(EvaluationState.java:535)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:203)
    [junit]     at 
org.jruby.evaluator.EvaluationState.rootNode(EvaluationState.java:1563)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:358)
    [junit]     at 
org.jruby.evaluator.EvaluationState.eval(EvaluationState.java:166)
    [junit]     at org.jruby.Ruby.loadFile(Ruby.java:1272)
    [junit]     at 
org.jruby.runtime.load.ExternalScript.load(ExternalScript.java:53)
    [junit]     at 
org.jruby.runtime.load.LoadService.smartLoad(LoadService.java:307)
    [junit]     at 
org.jruby.runtime.load.LoadService.require(LoadService.java:333)
    [junit]     at org.jruby.RubyKernel.require(RubyKernel.java:752)
    [junit]     at org.jruby.RubyKernelInvoker$require_S1.call(Unknown Source)
    [junit]     at 
org.jruby.runtime.callback.InvocationCallback.execute(InvocationCallback.java:58)
    [junit]     at 
org.jruby.internal.runtime.methods.FullFunctionCallbackMethod.call(FullFunctionCallbackMethod.java:73)
    [junit]     at 
org.jruby.runtime.CallAdapter$DefaultCallAdapter.call(CallAdapter.java:168)
    [junit]     at 
org.jruby.runtime.CallAdapter$DefaultCallAdapter.call(CallAdapter.java:105)
    [junit]     at 
org.jruby.evaluator.EvaluationState.fCallNode(EvaluationState.java:997)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:255)
    [junit]     at 
org.jruby.evaluator.EvaluationState.blockNode(EvaluationState.java:535)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:203)
    [junit]     at 
org.jruby.evaluator.EvaluationState.rootNode(EvaluationState.java:1563)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:358)
    [junit]     at 
org.jruby.evaluator.EvaluationState.eval(EvaluationState.java:166)
    [junit]     at org.jruby.Ruby.loadFile(Ruby.java:1272)
    [junit]     at 
org.jruby.runtime.load.ExternalScript.load(ExternalScript.java:53)
    [junit]     at 
org.jruby.runtime.load.LoadService.smartLoad(LoadService.java:307)
    [junit]     at 
org.jruby.runtime.load.LoadService.require(LoadService.java:333)
    [junit]     at org.jruby.RubyKernel.require(RubyKernel.java:752)
    [junit]     at org.jruby.RubyKernelInvoker$require_S1.call(Unknown Source)
    [junit]     at 
org.jruby.runtime.callback.InvocationCallback.execute(InvocationCallback.java:58)
    [junit]     at 
org.jruby.internal.runtime.methods.FullFunctionCallbackMethod.call(FullFunctionCallbackMethod.java:73)
    [junit]     at 
org.jruby.runtime.CallAdapter$DefaultCallAdapter.call(CallAdapter.java:168)
    [junit]     at 
org.jruby.runtime.CallAdapter$DefaultCallAdapter.call(CallAdapter.java:105)
    [junit]     at 
org.jruby.evaluator.EvaluationState.fCallNode(EvaluationState.java:997)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:255)
    [junit]     at 
org.jruby.evaluator.EvaluationState.blockNode(EvaluationState.java:535)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:203)
    [junit]     at 
org.jruby.evaluator.EvaluationState.rootNode(EvaluationState.java:1563)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:358)
    [junit]     at 
org.jruby.evaluator.EvaluationState.eval(EvaluationState.java:166)
    [junit]     at org.jruby.Ruby.loadFile(Ruby.java:1272)
    [junit]     at 
org.jruby.runtime.load.ExternalScript.load(ExternalScript.java:53)
    [junit]     at 
org.jruby.runtime.load.LoadService.smartLoad(LoadService.java:307)
    [junit]     at 
org.jruby.runtime.load.LoadService.require(LoadService.java:333)
    [junit]     at org.jruby.RubyKernel.require(RubyKernel.java:752)
    [junit]     at org.jruby.RubyKernelInvoker$require_S1.call(Unknown Source)
    [junit]     at 
org.jruby.runtime.callback.InvocationCallback.execute(InvocationCallback.java:58)
    [junit]     at 
org.jruby.internal.runtime.methods.FullFunctionCallbackMethod.call(FullFunctionCallbackMethod.java:73)
    [junit]     at 
org.jruby.runtime.CallAdapter$DefaultCallAdapter.call(CallAdapter.java:168)
    [junit]     at 
org.jruby.runtime.CallAdapter$DefaultCallAdapter.call(CallAdapter.java:105)
    [junit]     at 
org.jruby.evaluator.EvaluationState.fCallNode(EvaluationState.java:997)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:255)
    [junit]     at 
org.jruby.evaluator.EvaluationState.blockNode(EvaluationState.java:535)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:203)
    [junit]     at 
org.jruby.evaluator.EvaluationState.rootNode(EvaluationState.java:1563)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:358)
    [junit]     at 
org.jruby.evaluator.EvaluationState.eval(EvaluationState.java:166)
    [junit]     at org.jruby.Ruby.loadFile(Ruby.java:1272)
    [junit]     at 
org.jruby.runtime.load.ExternalScript.load(ExternalScript.java:53)
    [junit]     at 
org.jruby.runtime.load.LoadService.smartLoad(LoadService.java:307)
    [junit]     at 
org.jruby.runtime.load.LoadService.require(LoadService.java:333)
    [junit]     at org.jruby.RubyKernel.require(RubyKernel.java:752)
    [junit]     at org.jruby.RubyKernelInvoker$require_S1.call(Unknown Source)
    [junit]     at 
org.jruby.runtime.callback.InvocationCallback.execute(InvocationCallback.java:58)
    [junit]     at 
org.jruby.internal.runtime.methods.FullFunctionCallbackMethod.call(FullFunctionCallbackMethod.java:73)
    [junit]     at 
org.jruby.runtime.CallAdapter$DefaultCallAdapter.call(CallAdapter.java:168)
    [junit]     at 
org.jruby.runtime.CallAdapter$DefaultCallAdapter.call(CallAdapter.java:105)
    [junit]     at 
org.jruby.evaluator.EvaluationState.fCallNode(EvaluationState.java:997)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:255)
    [junit]     at 
org.jruby.evaluator.EvaluationState.blockNode(EvaluationState.java:535)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:203)
    [junit]     at 
org.jruby.evaluator.EvaluationState.rootNode(EvaluationState.java:1563)
    [junit]     at 
org.jruby.evaluator.EvaluationState.evalInternal(EvaluationState.java:358)
    [junit]     at 
org.jruby.evaluator.EvaluationState.eval(EvaluationState.java:166)
    [junit]     at org.jruby.Ruby.eval(Ruby.java:294)
    [junit]     at org.jruby.Ruby.evalScriptlet(Ruby.java:287)
    [junit]     at 
org.jruby.test.TestUnitTestSuite$ScriptTest.runTest(TestUnitTestSuite.java:196)
    [junit]     at junit.framework.TestCase.runBare(TestCase.java:127)
    [junit]     at junit.framework.TestResult$1.protect(TestResult.java:106)
    [junit]     at junit.framework.TestResult.runProtected(TestResult.java:124)
    [junit]     at junit.framework.TestResult.run(TestResult.java:109)
    [junit]     at junit.framework.TestCase.run(TestCase.java:118)
    [junit]     at junit.framework.TestSuite.runTest(TestSuite.java:208)
    [junit]     at junit.framework.TestSuite.run(TestSuite.java:203)
    [junit]     at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:297)
    [junit]     at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:672)
    [junit]     at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:567)

    [junit] "VM Thread" prio=9 tid=0x02811800 nid=0x1806a00 runnable 

    [junit] "VM Periodic Task Thread" prio=10 tid=0x0281e800 nid=0x1808800 
waiting on condition 

    [junit] "Exception Catcher Thread" prio=10 tid=0x02801000 nid=0x1806600 
runnable 
    [junit] Compiler thread printing unimplemented.

    [junit] JNI global references: 1124

    [junit] Heap
    [junit]  def new generation   total 26496K, used 22563K [0x11010000, 
0x12cc0000, 0x12d90000)
    [junit]   eden space 23616K,  83% used [0x11010000, 0x12348fa8, 0x12720000)
    [junit]   from space 2880K, 100% used [0x129f0000, 0x12cc0000, 0x12cc0000)
    [junit]   to   space 2880K,   0% used [0x12720000, 0x12720000, 0x129f0000)
    [junit]  tenured generation   total 352228K, used 221478K [0x12d90000, 
0x28589000, 0x29010000)
    [junit]    the space 352228K,  62% used [0x12d90000, 0x205d98c8, 
0x205d9a00, 0x28589000)
    [junit]  compacting perm gen  total 52992K, used 52870K [0x29010000, 
0x2c3d0000, 0x2d010000)
    [junit]    the space 52992K,  99% used [0x29010000, 0x2c3b1b18, 0x2c3b1c00, 
0x2c3d0000)
    [junit]     ro space 8192K,  63% used [0x2d010000, 0x2d51ec20, 0x2d51ee00, 
0x2d810000)
    [junit]     rw space 12288K,  50% used [0x2d810000, 0x2de25500, 0x2de25600, 
0x2e410000)

    [junit] Run with -XX:+RecordJNIHandleStacks to enable JNI handle dumps
{noformat}

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list please visit:

    http://xircles.codehaus.org/manage_email

Reply via email to