Community
Participate
Working Groups
It seems that the all types cache dies when a runtime exception occurs. This led to a deadlock in my situation since the organize import never returned. java.lang.IllegalMonitorStateException at java.lang.Object.notifyAll(Native Method) at org.eclipse.jdt.internal.core.search.indexing.ReadWriteMonitor.exitRead (ReadWriteMonitor.java:58) at org.eclipse.jdt.internal.core.search.PatternSearchJob.search (PatternSearchJob.java:119) at org.eclipse.jdt.internal.core.search.PatternSearchJob.execute (PatternSearchJob.java:64) at org.eclipse.jdt.internal.core.search.processing.JobManager.performConcurrentJob (JobManager.java:260) at org.eclipse.jdt.core.search.SearchEngine.searchAllTypeNames (SearchEngine.java:870) at org.eclipse.jdt.internal.corext.util.AllTypesCache.search (AllTypesCache.java:526) at org.eclipse.jdt.internal.corext.util.AllTypesCache$TypeCacher.doSearchTypes (AllTypesCache.java:197) at org.eclipse.jdt.internal.corext.util.AllTypesCache$TypeCacher.run (AllTypesCache.java:166)
Created attachment 14401 [details] The VM dump
Wrong component....
Philippe, you might be interested in the exception.
Looks like a dup of bug 73226.
The cause is similar. The reason for this PR is that we want to protect the thread against these failures.
*** Bug 74082 has been marked as a duplicate of this bug. ***
I've seen a similar exception. java.lang.IllegalMonitorStateException at java.lang.Object.notifyAll(Native Method) at org.eclipse.jdt.internal.core.search.indexing.ReadWriteMonitor.exitRead(Unknown Source) at org.eclipse.jdt.internal.core.search.PatternSearchJob.search(Unknown Source) at org.eclipse.jdt.internal.core.search.PatternSearchJob.execute(Unknown Source) at org.eclipse.jdt.internal.core.search.processing.JobManager.performConcurrentJob(Unknown Source) at org.eclipse.jdt.core.search.SearchEngine.searchAllTypeNames(Unknown Source) at org.eclipse.jdt.internal.corext.util.AllTypesCache.search(Unknown Source) at org.eclipse.jdt.internal.corext.util.AllTypesCache$TypeCacher.doSearchTypes(Unknown Source) at org.eclipse.jdt.internal.corext.util.AllTypesCache$TypeCacher.run(Unknown Source)
Is this fix still going to make its way into M2? I think it is somewhat important, as I get this once or twice a day. Sometimes, it seems to require restarting to restore sanity.
Oh, and I'm running on a hyper-threading Linux-GTK+ box.
This bug makes using M2 pretty brutal. +1
Are you using a J9 VM?
This looks like a duplicate of bug 73226.
J9 with JXEs.
Plain old vanilla Sun here.
I cannot fix this, I can only try to protect the thread against the failure. The failure seems to be new. It occurs in search/indexing. It did not occur in M1 or 3.0 and we did not change anything in the AllTypesCache since then.
For 3.1 M2: Added code so that AllTypeCacher thread no longer dies.