Bugs item #543895, was opened at 2002-04-14 19:56
You can respond by visiting:
http://sourceforge.net/tracker/?func=detail&atid=438935&aid=543895&group_id=44253
Category: util package
Group: Crashes
Status: Open
Resolution: None
Priority: 5
Submitted By: Brian Stoler (brianstoler)
Assigned to: Brian Stoler (brianstoler)
Summary: newjvm: Race condition in invoke/quit
Initial Comment:
In AbstractMasterJVM, there is a potential race
condition that can occur if .quitSlave is called in
between the time the slave is invoked and the time the
slave registers itself. In other words, this happens if
the quit is issued quickly after the invoke, so quickly
that the slave hasn't yet finished starting up.
This manifests itself as an IllegalStateException,
complaining that quit was called when there was nothing
to quit. The stack trace, produced by GlobalModelQuitTest:
[junit] Testcase: testQuitNoDocuments took 1.606 sec
[junit] Caused an ERROR
[junit] tried to quit when no slave running
[junit] java.lang.IllegalStateException: tried to
quit when
no slave running
[junit] at
edu.rice.cs.util.newjvm.AbstractMasterJVM.quitSlave(AbstractMasterJVM.java:
190)
[junit] at
edu.rice.cs.drjava.model.repl.newjvm.MainJVM.killInterpreter(MainJVM.java:
203)
[junit] at
edu.rice.cs.drjava.model.DefaultGlobalModel.quit(DefaultGlobalModel.java:383)
[junit] at
edu.rice.cs.drjava.model.GlobalModelQuitTest.testQuitNoDocuments
(GlobalModelQuitTest.java:161)
[junit] at
java.lang.reflect.Method.invoke(Native Method)
[junit] at
junit.framework.TestCase.runTest(TestCase.java:166)
[junit] at
junit.framework.TestCase.runBare(TestCase.java:140)
[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:131)
[junit] at
junit.framework.TestSuite.runTest(TestSuite.java:173)
[junit] at
junit.framework.TestSuite.run(TestSuite.java:168)
[junit] at
junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
[junit] at
junit.extensions.TestSetup$1.protect(TestSetup.java:19)
[junit] at
junit.framework.TestResult.runProtected(TestResult.java:124)
[junit] at
junit.extensions.TestSetup.run(TestSetup.java:23)
[junit] at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run
(JUnitTestRunner.java:231)
[junit] at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.executeInVM
----------------------------------------------------------------------
You can respond by visiting:
http://sourceforge.net/tracker/?func=detail&atid=438935&aid=543895&group_id=44253
|