Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2 ApiFilterStoreTests failed in I20240513-1800 #1264

Open
jukzi opened this issue May 14, 2024 · 2 comments
Open

2 ApiFilterStoreTests failed in I20240513-1800 #1264

jukzi opened this issue May 14, 2024 · 2 comments

Comments

@jukzi
Copy link
Contributor

jukzi commented May 14, 2024

Both on win and linux but not on Mac:
https://download.eclipse.org/eclipse/downloads/drops4/I20240513-1800/testresults/html/org.eclipse.pde.api.tools.tests_ep432I-unit-win32-java17_win32.win32.x86_64_17.html
https://download.eclipse.org/eclipse/downloads/drops4/I20240513-1800/testresults/html/org.eclipse.pde.api.tools.tests_ep432I-unit-cen64-gtk3-java17_linux.gtk.x86_64_17.html

Problems encountered while deleting resources.

org.eclipse.core.internal.resources.ResourceException: Problems encountered while deleting resources.
at org.eclipse.core.internal.resources.Resource.delete(Resource.java:816)
at org.eclipse.pde.api.tools.tests.AbstractApiTest.deleteProject(AbstractApiTest.java:197)
at org.eclipse.pde.api.tools.model.tests.ApiFilterStoreTests.tearDown(ApiFilterStoreTests.java:88)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
Contains: Could not delete '/APIPluginTests/.settings'.
org.eclipse.core.internal.resources.ResourceException: Problems encountered while deleting resources.
at org.eclipse.core.internal.localstore.FileSystemResourceManager.delete(FileSystemResourceManager.java:415)
at org.eclipse.core.internal.resources.ResourceTree.internalDeleteFolder(ResourceTree.java:363)
at org.eclipse.core.internal.resources.ResourceTree.internalDeleteProject(ResourceTree.java:398)
at org.eclipse.core.internal.resources.ResourceTree.standardDeleteProject(ResourceTree.java:855)
at org.eclipse.core.internal.resources.Resource.unprotectedDelete(Resource.java:1834)
at org.eclipse.core.internal.resources.Resource.delete(Resource.java:803)
at org.eclipse.pde.api.tools.tests.AbstractApiTest.deleteProject(AbstractApiTest.java:197)
at org.eclipse.pde.api.tools.model.tests.ApiFilterStoreTests.tearDown(ApiFilterStoreTests.java:88)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
at org.junit.internal.runners.statements.RunAfters.invokeMethod(RunAfters.java:46)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:33)
at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
at org.junit.runners.Suite.runChild(Suite.java:128)
at org.junit.runners.Suite.runChild(Suite.java:27)
at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
at org.junit.vintage.engine.execution.RunnerExecutor.execute(RunnerExecutor.java:42)
at org.junit.vintage.engine.VintageTestEngine.executeAllChildren(VintageTestEngine.java:80)
at org.junit.vintage.engine.VintageTestEngine.execute(VintageTestEngine.java:72)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:198)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:169)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:93)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:58)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:141)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:57)
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:103)
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:85)
at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47)
at org.junit.platform.launcher.core.SessionPerRequestLauncher.execute(SessionPerRequestLauncher.java:63)
at org.eclipse.test.EclipseTestRunner.runTests(EclipseTestRunner.java:212)
at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:187)
at org.eclipse.test.CoreTestApplication.runTests(CoreTestApplication.java:53)
at org.eclipse.test.CoreTestApplication.run(CoreTestApplication.java:35)
at org.eclipse.test.CoreTestApplication.start(CoreTestApplication.java:44)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:208)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:143)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:109)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:439)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:271)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:668)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:605)
at org.eclipse.equinox.launcher.Main.run(Main.java:1481)
at org.eclipse.equinox.launcher.Main.main(Main.java:1454)
Contains: Could not delete: C:\Users\genie.releng\workspace\AutomatedTests\ep432I-unit-win32-java17\workarea\I20240513-1800\eclipse-testing\test-eclipse\eclipse\api_tools_plugins_folder\data\APIPluginTests\.settings.
java.nio.file.DirectoryNotEmptyException: C:\Users\genie.releng\workspace\AutomatedTests\ep432I-unit-win32-java17\workarea\I20240513-1800\eclipse-testing\test-eclipse\eclipse\api_tools_plugins_folder\data\APIPluginTests\.settings
at java.base/sun.nio.fs.WindowsFileSystemProvider.implDelete(WindowsFileSystemProvider.java:272)
at java.base/sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:110)
at java.base/java.nio.file.Files.deleteIfExists(Files.java:1191)
at org.eclipse.core.internal.filesystem.local.LocalFile.internalDelete(LocalFile.java:286)
at org.eclipse.core.internal.filesystem.local.LocalFile.delete(LocalFile.java:159)
at org.eclipse.core.internal.localstore.DeleteVisitor.delete(DeleteVisitor.java:66)
at org.eclipse.core.internal.localstore.DeleteVisitor.visit(DeleteVisitor.java:156)
at org.eclipse.core.internal.localstore.UnifiedTree.accept(UnifiedTree.java:119)
at org.eclipse.core.internal.localstore.FileSystemResourceManager.delete(FileSystemResourceManager.java:412)
at org.eclipse.core.internal.resources.ResourceTree.internalDeleteFolder(ResourceTree.java:363)
at org.eclipse.core.internal.resources.ResourceTree.internalDeleteProject(ResourceTree.java:398)
at org.eclipse.core.internal.resources.ResourceTree.standardDeleteProject(ResourceTree.java:855)
at org.eclipse.core.internal.resources.Resource.unprotectedDelete(Resource.java:1834)
at org.eclipse.core.internal.resources.Resource.delete(Resource.java:803)
at org.eclipse.pde.api.tools.tests.AbstractApiTest.deleteProject(AbstractApiTest.java:197)
at org.eclipse.pde.api.tools.model.tests.ApiFilterStoreTests.tearDown(ApiFilterStoreTests.java:88)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
at org.junit.internal.runners.statements.RunAfters.invokeMethod(RunAfters.java:46)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:33)
at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
at org.junit.runners.Suite.runChild(Suite.java:128)
at org.junit.runners.Suite.runChild(Suite.java:27)
at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
at org.junit.vintage.engine.execution.RunnerExecutor.execute(RunnerExecutor.java:42)
at org.junit.vintage.engine.VintageTestEngine.executeAllChildren(VintageTestEngine.java:80)
at org.junit.vintage.engine.VintageTestEngine.execute(VintageTestEngine.java:72)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:198)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:169)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:93)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:58)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:141)
at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:57)
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:103)
at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:85)
at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47)
at org.junit.platform.launcher.core.SessionPerRequestLauncher.execute(SessionPerRequestLauncher.java:63)
at org.eclipse.test.EclipseTestRunner.runTests(EclipseTestRunner.java:212)
at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:187)
at org.eclipse.test.CoreTestApplication.runTests(CoreTestApplication.java:53)
at org.eclipse.test.CoreTestApplication.run(CoreTestApplication.java:35)
at org.eclipse.test.CoreTestApplication.start(CoreTestApplication.java:44)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:208)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:143)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:109)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:439)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:271)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:668)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:605)
at org.eclipse.equinox.launcher.Main.run(Main.java:1481)
at org.eclipse.equinox.launcher.Main.main(Main.java:1454)
Contains: Could not delete 'C:\Users\genie.releng\workspace\AutomatedTests\ep432I-unit-win32-java17\workarea\I20240513-1800\eclipse-testing\test-eclipse\eclipse\api_tools_plugins_folder\data\APIPluginTests'.

Cannot nest 'APIPluginTests/src' inside 'APIPluginTests'. To enable the nesting exclude 'src/' from 'APIPluginTests'

Java Model Exception: Error in Java Model (code 964): Cannot nest 'APIPluginTests/src' inside 'APIPluginTests'. To enable the nesting exclude 'src/' from 'APIPluginTests'
at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:801)
at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:3518)
at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:3478)
at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:3534)
at org.eclipse.pde.internal.core.project.ProjectModifyOperation.configureJavaProject(ProjectModifyOperation.java:306)
at org.eclipse.pde.internal.core.project.ProjectModifyOperation.execute(ProjectModifyOperation.java:167)
at org.eclipse.pde.internal.core.project.BundleProjectDescription.apply(BundleProjectDescription.java:468)
at org.eclipse.pde.api.tools.tests.util.ProjectUtils.createPluginProject(ProjectUtils.java:190)
at org.eclipse.pde.api.tools.tests.AbstractApiTest.createProject(AbstractApiTest.java:158)
at org.eclipse.pde.api.tools.model.tests.ApiFilterStoreTests.setUp(ApiFilterStoreTests.java:64)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)

Can not reproduce locally, there where no recent commits to PDE.

Popped up at the same time as
eclipse-platform/eclipse.platform#1366

@HeikoKlare
Copy link
Contributor

@HeikoKlare
Copy link
Contributor

I tried to find out whether one of those PRs is related to these test failures, but it is quite complicated as only I-Builds seem to be affected:

  • Recent PR builds of PDE run successfully
  • Locally on Widnows the tests do not fail

What I can at least say is that the code that throws an exception in the test case testRemoveFilter() is only executed when the project to be created already existed. This is the case because testAddFilterFromFilter() failed, so most likely the problem is only with the failing teardown of testAddFilterFromFilter(). Fixing that test will also fix the other one.

The stack trace for the failing teardown (doing a deletion of a project) indicates that the workspace is not up to date, as the workspace tree is traversed to delete elements from the leaves to the root, but still the .settings folder is not empty when trying to delete it:

java.nio.file.DirectoryNotEmptyException: /home/jenkins/agent/workspace/AutomatedTests/ep432I-unit-cen64-gtk3-java17/workarea/I20240513-1800/eclipse-testing/test-eclipse/eclipse/api_tools_plugins_folder/data/APIPluginTests/.settings
at java.base/sun.nio.fs.UnixFileSystemProvider.implDelete(UnixFileSystemProvider.java:246)
at java.base/sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:110)
at java.base/java.nio.file.Files.deleteIfExists(Files.java:1191)
at org.eclipse.core.internal.filesystem.local.LocalFile.internalDelete(LocalFile.java:286)
at org.eclipse.core.internal.filesystem.local.LocalFile.delete(LocalFile.java:159)
at org.eclipse.core.internal.localstore.DeleteVisitor.delete(DeleteVisitor.java:66)
at org.eclipse.core.internal.localstore.DeleteVisitor.visit(DeleteVisitor.java:156)
at org.eclipse.core.internal.localstore.UnifiedTree.accept(UnifiedTree.java:119)
at org.eclipse.core.internal.localstore.FileSystemResourceManager.delete(FileSystemResourceManager.java:412)

Still the question is why this suddenly popped up. One change in addition to the platform ones at the day before the failure popped up is:

But I don't see how that should be related.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants