Community
Participate
Working Groups
build i0210-1200 This test fails every once in a while: regression.Bug_26294.testDeleteOpenProjectWindows I have disabled it for now. 2.6.2 /MyProject/.project unexpectedly exists in the file system junit.framework.AssertionFailedError: 2.6.2 /MyProject/.project unexpectedly exists in the file system at org.eclipse.core.tests.harness.EclipseWorkspaceTest.assertDoesNotExistInFileSystem(EclipseWorkspaceTest.java:97) at org.eclipse.core.tests.resources.regression.Bug_26294.testDeleteOpenProjectWindows(Bug_26294.java:107) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:320) at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:199) at org.eclipse.test.CoreTestApplication.runTests(CoreTestApplication.java:34) at org.eclipse.test.CoreTestApplication.run(CoreTestApplication.java:30) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:245) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:104) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at org.eclipse.core.launcher.Main.basicRun(Main.java:279) at org.eclipse.core.launcher.Main.run(Main.java:742) at org.eclipse.core.launcher.Main.main(Main.java:581) 0.047 testDeleteOpenProjectLinux
i200416220800 on IBM 1.4.1 (Windows) Most tests under org.eclipse.core.tests.resources.regression.AllTests (and any tests that ran after it) failed with the error below (during tearDown, deleting MyProject)): java.lang.IllegalArgumentException: Attempted to beginRule: R/, does not match outer scope rule: P/MyProject at org.eclipse.core.internal.runtime.Assert.isLegal(Assert.java(Compiled Code)) at org.eclipse.core.internal.jobs.ThreadJob.illegalPush(ThreadJob.java:106) at org.eclipse.core.internal.jobs.ThreadJob.push(ThreadJob.java(Compiled Code)) at org.eclipse.core.internal.jobs.ImplicitJobs.begin(ImplicitJobs.java(Compiled Code)) at org.eclipse.core.internal.jobs.JobManager.beginRule(JobManager.java(Inlined Compiled Code)) at org.eclipse.core.internal.resources.WorkManager.checkIn(WorkManager.java(Compiled Code)) at org.eclipse.core.internal.resources.Workspace.prepareOperation(Workspace.java(Compiled Code)) at org.eclipse.core.internal.resources.Resource.delete(Resource.java(Compiled Code)) at org.eclipse.core.internal.resources.WorkspaceRoot.delete(WorkspaceRoot.java:43) at org.eclipse.core.tests.harness.EclipseWorkspaceTest.ensureDoesNotExistInWorkspace(EclipseWorkspaceTest.java(Compiled Code)) at org.eclipse.core.tests.harness.EclipseWorkspaceTest.tearDown(EclipseWorkspaceTest.java:971) at org.eclipse.core.tests.resources.regression.Bug_26294.tearDown(Bug_26294.java:481) at junit.framework.TestCase.runBare(TestCase.java:130) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:118) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:421) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:305) at org.eclipse.pde.internal.junit.runtime.RemotePluginTestRunner.main(RemotePluginTestRunner.java:30) at org.eclipse.pde.internal.junit.runtime.CoreTestApplication.run(CoreTestApplication.java:26) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:335) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:272) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:128) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:41) at java.lang.reflect.Method.invoke(Method.java:371) at org.eclipse.core.launcher.Main.basicRun(Main.java:186) at org.eclipse.core.launcher.Main.run(Main.java:647) at org.eclipse.core.launcher.Main.main(Main.java:631)
Actually, I can consistently reproduce the problem above on the mentioned setup. It always starts to happen on the same point. If I exclude org.eclipse.core.resources.IResourceTest from the test suite, all tests pass.
Continued investigation post-3.0.
Failed for n20040820. Summary: it seems this test case is affected by a test case (same test class) that ran before and did not clean up properly. junit.framework.ComparisonFailure: 2.3 expected:<F...> but was:<Z...> at org.eclipse.core.tests.resources.CharsetTest.testMovingProject(CharsetTest.java:344) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:322) at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:198) at org.eclipse.test.CoreTestApplication.runTests(CoreTestApplication.java:35) at org.eclipse.test.CoreTestApplication.run(CoreTestApplication.java:31) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:335) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:273) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:129) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at org.eclipse.core.launcher.Main.basicRun(Main.java:183) at org.eclipse.core.launcher.Main.run(Main.java:644) at org.eclipse.core.launcher.Main.main(Main.java:628)
This one is failing very often in my machine (Sun JDK 1.4.2_03). testWriteProject(org.eclipse.core.tests.internal.localstore.FileSystemResourceManagerTest) junit.framework.AssertionFailedError: 2.1 at junit.framework.Assert.fail(Assert.java:47) at junit.framework.Assert.assertTrue(Assert.java:20) at org.eclipse.core.tests.internal.localstore.FileSystemResourceManagerTest.testWriteProject(FileSystemResourceManagerTest.java:425) The assertion fails because after calling ensureDoesNotExistInFileSystem, the location for the project sometimes still exists. I could verify that not only the project directory still is there, but the .project file is there as well. After some debugging, I could verify that this was not a leftover from a previous test, but something created during the execution of the failing test. Also, ensureDoesNotExistInFileSystem seems to be able to delete the whole tree, otherwise it would have printed a warning message to the console, and that did not happen. So, it seems some background thread ends up causing the project to write the description out to the disk when it detects the file is gone.
Some more info on the problem reported above: the background thread seems to be a DelayedSnapshotJob, triggered by a SaveManager.snapshotIfNeeded, which is called by Workspace.endOperation. This guy ends up repairing the project description file, and this is why the directory/file reappear misteriously just after being deleted (and also why it is so hard to reproduce).
The failure above was fixed by changing the test case to protect itself from the other threads' interference by wrapping the critical code into a workspace operation. Something to keep in mind in our tests now that builds and snapshots can occur at any time.
BTW, JohnA fixed it, not me. :)
Opened a separate report for a test (CharsetTest) that started to fail on recent builds, in the hope that it will be more easily reproduced and fixed than these ones.
And the bug number is.... bug 75081.
*** This bug has been marked as a duplicate of 51538 ***