Community
Participate
Working Groups
The following problem was reported via the automated error reporting: Message: Unhandled event loop exception java.util.ConcurrentModificationException: null at java.util.LinkedHashMap$LinkedHashIterator.nextNode(null:-1) at java.util.LinkedHashMap$LinkedKeyIterator.next(null:-1) at java.util.AbstractCollection.toArray(null:-1) at java.util.ArrayList.addAll(null:-1) at org.eclipse.php.phpunit.model.providers.PHPUnitElementTreeContentProvider.get(PHPUnitElementTreeContentProvider.java:42) at org.eclipse.php.phpunit.model.providers.PHPUnitElementTreeContentProvider.getElements(PHPUnitElementTreeContentProvider.java:33) at org.eclipse.jface.viewers.StructuredViewer.getRawChildren(StructuredViewer.java:1001) at org.eclipse.jface.viewers.ColumnViewer.getRawChildren(ColumnViewer.java:701) at org.eclipse.jface.viewers.AbstractTreeViewer.getRawChildren(AbstractTreeViewer.java:1349) at org.eclipse.jface.viewers.TreeViewer.getRawChildren(TreeViewer.java:341) at org.eclipse.jface.viewers.StructuredViewer.getFilteredChildren(StructuredViewer.java:907) at org.eclipse.jface.viewers.AbstractTreeViewer.getSortedChildren(AbstractTreeViewer.java:621) at org.eclipse.jface.viewers.AbstractTreeViewer.updateChildren(AbstractTreeViewer.java:2635) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1913) at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:669) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1888) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1845) at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1831) at org.eclipse.jface.viewers.StructuredViewer.lambda$0(StructuredViewer.java:1519) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1458) at org.eclipse.jface.viewers.TreeViewer.preservingSelection(TreeViewer.java:354) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1419) at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1519) at org.eclipse.jface.viewers.ColumnViewer.refresh(ColumnViewer.java:523) at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1478) at org.eclipse.php.phpunit.ui.view.TestViewer.processChangesInUI(TestViewer.java:383) at org.eclipse.php.phpunit.ui.view.PHPUnitView.processChangesInUI(PHPUnitView.java:244) at org.eclipse.php.phpunit.ui.view.PHPUnitView.lambda$1(PHPUnitView.java:252) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:182) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4211) Bundles: | org.eclipse.jface | 3.12.2.v20170113-2113 | 3.12.2.v20170113-2113 | | org.eclipse.php.phpunit | 5.3.0.201801312350 | 5.3.0.201801312350 | | org.eclipse.swt | 3.105.3.v20170228-0512 | 3.105.3.v20170228-0512 | Operating Systems: | Windows | 6.3.0 | 6.3.0 | The above information is a snapshot of the collected data. Visit https://dev.eclipse.org/recommenders/committers/aeri/v2/#!/problems/5a73854ae4b02aaf8b28439f for the latest data. Thank you for your assistance. Your friendly error-reports-inbox. Created on behalf of Dawid Pakula
Hi Dawid, do you have an example or a way to reproduce this bug? Thierry.
No, but I can easy imagine. PHPUnit waiting for PHPUnitEvent. After each one schedule entire view refresh, if during this new element will be added to PHPUnitTestGroup you will see such error.
Ok thank you Dawid for your explanation ;) I won't work on this one, so if you have a solution... ;)
Like bump? PHPUnit runner is 100% nonworking due to this bug. I was just considering migrating back from PHPStorm (because they STILL don't have the whole "multiple projects in one window" thing sorted right), and this is a showstopper.
New Gerrit change created: https://git.eclipse.org/r/153597
Gerrit change https://git.eclipse.org/r/153597 was merged to [master]. Commit: http://git.eclipse.org/c/pdt/org.eclipse.pdt.git/commit/?id=6de3e4f26e9afda04f14fe9aa2e1f36701e0eb62
I implemented two things using eclipse job api 1. Message parsing lock UI updates and vice versa 2. UI updates are delayed for 50s, so if you run big but fast test suite, PDT will no longer be bottleneck. Punic (https://github.com/punic/punic) have nice and fast test suite. Try to compare with and without path ;)