Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 366051

Summary: org.eclipse.osgi.tests.bundles.TestResults does not handle spurious wakes
Product: [Eclipse Project] Equinox Reporter: Thomas Watson <tjwatson>
Component: FrameworkAssignee: Thomas Watson <tjwatson>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3    
Version: 3.8.0 Juno   
Target Milestone: Juno M5   
Hardware: PC   
OS: Mac OS X - Carbon (unsup.)   
Whiteboard:

Description Thomas Watson CLA 2011-12-08 10:40:49 EST
There was a test failure during a build that indicates that org.eclipse.osgi.tests.bundles.TestResults is not handling spurious wakeups.  The following test failed:

re	compareResults length expected:<1> but was:<0>

junit.framework.AssertionFailedError: compareResults length expected:<1> but was:<0>
at org.eclipse.osgi.tests.bundles.AbstractBundleTests.compareResults(AbstractBundleTests.java:58)
at org.eclipse.osgi.tests.bundles.ClassLoadingBundleTests.testStopTransient(ClassLoadingBundleTests.java:685)
at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:501)
at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:259)
at org.eclipse.test.CoreTestApplication.runTests(CoreTestApplication.java:36)
at org.eclipse.test.CoreTestApplication.run(CoreTestApplication.java:32)
at org.eclipse.equinox.internal.app.EclipseAppContainer.callMethodWithException(EclipseAppContainer.java:587)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:198)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:352)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:624)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:579)
at org.eclipse.equinox.launcher.Main.run(Main.java:1433)
at org.eclipse.equinox.launcher.Main.main(Main.java:1409)
at org.eclipse.core.launcher.Main.main(Main.java:34)

I suspect a spurious wakeup because the testcase finished in 0.127 seconds and I would have expected it to take at least 5 seconds before timing out waiting for an event.
Comment 1 Thomas Watson CLA 2011-12-08 12:12:20 EST
I released a fix in commit:

http://git.eclipse.org/c/equinox/rt.equinox.framework.git/commit/?id=ca9cd6190f64ff79cf4b61c317d3124be64251f5

I do not plan to integrate this in M4, but it is safe to do so if another fix is required for an M4 respin.