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

ResourceInitialSelectionTest: fix deleting resources #294 #2355

Merged
merged 1 commit into from
Oct 2, 2024

Conversation

jukzi
Copy link
Contributor

@jukzi jukzi commented Oct 2, 2024

Concurrent "Decoration Calculation" sometimes prevented Project from deleting on Windows OS.

#294

@jukzi
Copy link
Contributor Author

jukzi commented Oct 2, 2024

could reproduce the problem locally with stacktraces like:

	Suppressed: java.lang.Exception: ThreadDump for thread "Worker-3: Decoration Calculation"
		at java.panw.PanwHooks.NativeMethodEntry(Native Method)
		at java.panw.PanwHooks.MethodEntry2(Unknown Source)
		at [email protected]/java.io.FileOutputStream.open(FileOutputStream.java)
		at [email protected]/java.io.FileOutputStream.<init>(FileOutputStream.java:230)
		at [email protected]/java.io.FileOutputStream.<init>(FileOutputStream.java:179)
		at org.eclipse.core.internal.localstore.Bucket.save(Bucket.java:427)
		at org.eclipse.core.internal.properties.PropertyBucket.save(PropertyBucket.java:309)
		at org.eclipse.core.internal.properties.PropertyManager2.setProperty(PropertyManager2.java:186)
		at org.eclipse.core.internal.resources.Resource.setPersistentProperty(Resource.java:1725)
		at org.eclipse.core.internal.resources.ContentDescriptionManager.setCacheState(ContentDescriptionManager.java:556)
		at org.eclipse.core.internal.resources.ContentDescriptionManager.getDescriptionFor(ContentDescriptionManager.java:410)
		at org.eclipse.core.internal.resources.File.getContentDescription(File.java:337)
		at org.eclipse.ui.ide.IDE.getContentType(IDE.java:1597)
		at org.eclipse.ui.ide.IDE.getDefaultEditor(IDE.java:1535)
		at org.eclipse.ui.ide.IDE.getDefaultEditor(IDE.java:1500)
		at org.eclipse.ui.internal.ide.ContentTypeDecorator.decorate(ContentTypeDecorator.java:55)
		at org.eclipse.ui.internal.decorators.LightweightDecoratorDefinition.decorate(LightweightDecoratorDefinition.java:254)
		at org.eclipse.ui.internal.decorators.LightweightDecoratorManager$LightweightRunnable.run(LightweightDecoratorManager.java:105)
		at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:47)
		at org.eclipse.ui.internal.decorators.LightweightDecoratorManager.decorate(LightweightDecoratorManager.java:359)
		at org.eclipse.ui.internal.decorators.LightweightDecoratorManager.getDecorations(LightweightDecoratorManager.java:345)
		at org.eclipse.ui.internal.decorators.DecorationScheduler$1.queue(DecorationScheduler.java:410)
		at org.eclipse.ui.internal.decorators.DecorationScheduler$1.run(DecorationScheduler.java:388)
		at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)

	Suppressed: java.lang.Exception: ThreadDump for thread "Worker-6: Decoration Calculation"
		at [email protected]/java.text.MessageFormat.<init>(MessageFormat.java:1262)
		at [email protected]/java.text.MessageFormat.format(MessageFormat.java:882)
		at org.eclipse.jdt.internal.core.util.Messages.bind(Messages.java:477)
		at org.eclipse.jdt.internal.core.util.Messages.bind(Messages.java:454)
		at org.eclipse.jdt.internal.core.JavaModelStatus.getMessage(JavaModelStatus.java:212)
		at org.eclipse.core.runtime.CoreException.<init>(CoreException.java:49)
		at org.eclipse.jdt.core.JavaModelException.<init>(JavaModelException.java:73)
		at org.eclipse.jdt.internal.core.JavaElement.newNotPresentException(JavaElement.java:546)
		at org.eclipse.jdt.internal.core.JavaModelManager.getPerProjectInfoCheckExistence(JavaModelManager.java:2533)
		at org.eclipse.jdt.internal.core.JavaProject.getPerProjectInfo(JavaProject.java:2329)
		at org.eclipse.jdt.internal.core.JavaProject.getResolvedClasspath(JavaProject.java:2402)
		at org.eclipse.jdt.internal.core.JavaProject.findContainingClasspathEntry(JavaProject.java:2692)
		at org.eclipse.jdt.internal.core.JavaProject.isOnClasspath(JavaProject.java:2676)
		at org.eclipse.jdt.internal.ui.BuildpathIndicatorLabelDecorator.getOverlay(BuildpathIndicatorLabelDecorator.java:49)
		at org.eclipse.jdt.internal.ui.BuildpathIndicatorLabelDecorator.decorate(BuildpathIndicatorLabelDecorator.java:35)
		at org.eclipse.ui.internal.decorators.LightweightDecoratorDefinition.decorate(LightweightDecoratorDefinition.java:254)
		at org.eclipse.ui.internal.decorators.LightweightDecoratorManager$LightweightRunnable.run(LightweightDecoratorManager.java:105)
		at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:47)
		at org.eclipse.ui.internal.decorators.LightweightDecoratorManager.decorate(LightweightDecoratorManager.java:359)
		at org.eclipse.ui.internal.decorators.LightweightDecoratorManager.getDecorations(LightweightDecoratorManager.java:345)
		at org.eclipse.ui.internal.decorators.DecorationScheduler$1.queue(DecorationScheduler.java:410)
		at org.eclipse.ui.internal.decorators.DecorationScheduler$1.run(DecorationScheduler.java:388)

	Suppressed: java.lang.Exception: ThreadDump for thread "Worker-1: Decoration Calculation"
		at org.eclipse.core.internal.content.XMLRootHandler.startElement(XMLRootHandler.java:201)
		at [email protected]/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:518)
		at [email protected]/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:376)
		at [email protected]/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:615)
		at [email protected]/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3079)
		at [email protected]/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:836)
		at [email protected]/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:605)
		at [email protected]/com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:114)
		at [email protected]/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:542)
		at [email protected]/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:889)
		at [email protected]/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:825)
		at [email protected]/com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
		at [email protected]/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1224)
		at [email protected]/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:637)
		at [email protected]/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:326)
		at org.eclipse.core.internal.content.XMLRootHandler.lambda$0(XMLRootHandler.java:164)
		at org.eclipse.core.internal.content.XMLRootHandler$$Lambda/0x0000020e03980890.accept(Unknown Source)
		at org.eclipse.core.runtime.ServiceCaller.lambda$0(ServiceCaller.java:170)
		at org.eclipse.core.runtime.ServiceCaller$$Lambda/0x0000020e0346d050.apply(Unknown Source)
		at [email protected]/java.util.Optional.map(Optional.java:260)
		at org.eclipse.core.runtime.ServiceCaller.callOnce(ServiceCaller.java:168)
		at org.eclipse.core.runtime.ServiceCaller.callOnce(ServiceCaller.java:150)
		at org.eclipse.core.internal.content.XMLRootHandler.parseContents(XMLRootHandler.java:158)
		at org.eclipse.core.runtime.content.XMLRootElementContentDescriber2.fillContentProperties(XMLRootElementContentDescriber2.java:205)
		at org.eclipse.core.runtime.content.XMLRootElementContentDescriber.checkCriteria(XMLRootElementContentDescriber.java:75)
		at org.eclipse.core.runtime.content.XMLRootElementContentDescriber.describe(XMLRootElementContentDescriber.java:110)
		at org.eclipse.core.internal.content.ContentTypeCatalog.describe(ContentTypeCatalog.java:293)
		at org.eclipse.core.internal.content.ContentTypeCatalog.collectMatchingByContents(ContentTypeCatalog.java:266)
		at org.eclipse.core.internal.content.ContentTypeCatalog.internalFindContentTypesForSubset(ContentTypeCatalog.java:488)
		at org.eclipse.core.internal.content.ContentTypeCatalog.internalFindContentTypesFor(ContentTypeCatalog.java:549)
		at org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:431)
		at org.eclipse.core.internal.content.ContentTypeCatalog.getDescriptionFor(ContentTypeCatalog.java:445)
		at org.eclipse.core.internal.content.ContentTypeMatcher.getDescriptionFor(ContentTypeMatcher.java:82)
		at org.eclipse.core.internal.resources.ContentDescriptionManager.readDescription(ContentDescriptionManager.java:515)
		at org.eclipse.core.internal.resources.ContentDescriptionManager.getDescriptionFor(ContentDescriptionManager.java:399)
		at org.eclipse.core.internal.resources.File.getContentDescription(File.java:337)
		at org.eclipse.ui.ide.IDE.getContentType(IDE.java:1597)
		at org.eclipse.ui.ide.IDE.getDefaultEditor(IDE.java:1535)
		at org.eclipse.ui.ide.IDE.getDefaultEditor(IDE.java:1500)
		at org.eclipse.ui.internal.ide.ContentTypeDecorator.decorate(ContentTypeDecorator.java:55)
		at org.eclipse.ui.internal.decorators.LightweightDecoratorDefinition.decorate(LightweightDecoratorDefinition.java:254)
		at org.eclipse.ui.internal.decorators.LightweightDecoratorManager$LightweightRunnable.run(LightweightDecoratorManager.java:105)
		at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:47)
		at org.eclipse.ui.internal.decorators.LightweightDecoratorManager.decorate(LightweightDecoratorManager.java:359)
		at org.eclipse.ui.internal.decorators.LightweightDecoratorManager.getDecorations(LightweightDecoratorManager.java:345)
		at org.eclipse.ui.internal.decorators.DecorationScheduler$1.queue(DecorationScheduler.java:410)
		at org.eclipse.ui.internal.decorators.DecorationScheduler$1.run(DecorationScheduler.java:388)
		at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)


Copy link
Contributor

github-actions bot commented Oct 2, 2024

Test Results

 1 815 files  ±0   1 815 suites  ±0   1h 37m 47s ⏱️ - 8m 18s
 7 702 tests ±0   7 474 ✅ ±0  228 💤 ±0  0 ❌ ±0 
24 267 runs  ±0  23 520 ✅ ±0  747 💤 ±0  0 ❌ ±0 

Results for commit f79d83f. ± Comparison against base commit 901a83e.

♻️ This comment has been updated with latest results.

@jukzi
Copy link
Contributor Author

jukzi commented Oct 2, 2024

random(?) failed ion macOS:

java.lang.AssertionError: reconciler never ran in 5 seconds
	at org.junit.Assert.fail(Assert.java:89)
	at org.eclipse.jface.text.tests.reconciler.AbstractReconcilerTest$Barrier.await(AbstractReconcilerTest.java:103)
	at org.eclipse.jface.text.tests.reconciler.AbstractReconcilerTest.testReplacingDocumentWhenClean(AbstractReconcilerTest.java:337)

…#294

Concurrent "Decoration Calculation" sometimes prevented Project from
deleting on Windows OS.

eclipse-platform#294
@jukzi jukzi force-pushed the ResourceInitialSelectionTest branch from e3abf56 to f79d83f Compare October 2, 2024 15:16
@jukzi jukzi merged commit cc24621 into eclipse-platform:master Oct 2, 2024
17 checks passed
@jukzi jukzi deleted the ResourceInitialSelectionTest branch October 2, 2024 16:46
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

Successfully merging this pull request may close these issues.

2 participants