Bug 14094 - Indexer: Deadlock on delete project
Summary: Indexer: Deadlock on delete project
Status: RESOLVED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 2.0   Edit
Hardware: PC Windows 2000
: P3 normal (vote)
Target Milestone: 2.0 M6   Edit
Assignee: Jerome Lanneluc CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 14191 (view as bug list)
Depends on:
Blocks:
 
Reported: 2002-04-18 07:04 EDT by Martin Aeschlimann CLA
Modified: 2002-04-30 04:59 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Aeschlimann CLA 2002-04-18 07:04:59 EDT
20020416:
Run JavaModelUtilTest from jdt.ui.tests.

The main thread is waiting for the indexer thread to be exiting.
The indexer thread is waiting to enter a synchronized method. lock taken by the 
main thread.

Indexer thread: Waiting at request
org.eclipse.jdt.internal.core.search.indexing.IndexManager
(org.eclipse.jdt.internal.core.search.processing.JobManager).request
(org.eclipse.jdt.internal.core.search.processing.IJob) line: 243
org.eclipse.jdt.internal.core.search.indexing.IndexManager.remove
(java.lang.String, org.eclipse.core.runtime.IPath) line: 340
org.eclipse.jdt.internal.core.search.indexing.RemoveFolderFromIndex.execute
(org.eclipse.core.runtime.IProgressMonitor) line: 51
org.eclipse.jdt.internal.core.search.indexing.IndexManager
(org.eclipse.jdt.internal.core.search.processing.JobManager).run() line: 298
java.lang.Thread.run() line: 539 [local variables unavailable]

Main thread:
java.lang.Thread.sleep(long) line: not available [native method]
org.eclipse.jdt.internal.core.search.indexing.IndexManager.discardJobsUntilNextP
rojectAddition(java.lang.String) line: 191
org.eclipse.jdt.internal.core.search.indexing.IndexManager.deleting
(org.eclipse.core.resources.IProject) line: 162
org.eclipse.jdt.internal.core.JavaModelManager.deleting
(org.eclipse.core.resources.IProject) line: 471
org.eclipse.jdt.internal.core.JavaModelManager.resourceChanged
(org.eclipse.core.resources.IResourceChangeEvent) line: 1099
org.eclipse.core.internal.events.NotificationManager$1.run() line: 123
org.eclipse.core.internal.runtime.InternalPlatform.run
(org.eclipse.core.runtime.ISafeRunnable) line: 838
org.eclipse.core.runtime.Platform.run(org.eclipse.core.runtime.ISafeRunnable) 
line: 411
org.eclipse.core.internal.events.NotificationManager.notify
(org.eclipse.core.internal.events.ResourceChangeListenerList$ListenerEntry[], 
org.eclipse.core.resources.IResourceChangeEvent, boolean) line: 138
org.eclipse.core.internal.events.NotificationManager.deleting
(org.eclipse.core.resources.IProject) line: 89
org.eclipse.core.internal.resources.Workspace.deleting
(org.eclipse.core.resources.IProject) line: 683
org.eclipse.core.internal.resources.Project
(org.eclipse.core.internal.resources.Resource).delete(int, 
org.eclipse.core.runtime.IProgressMonitor) line: 435
org.eclipse.core.internal.resources.Project.delete(boolean, boolean, 
org.eclipse.core.runtime.IProgressMonitor) line: 304
org.eclipse.jdt.testplugin.JavaProjectHelper.delete
(org.eclipse.jdt.core.IJavaProject) line: 91
.....
Comment 1 Jerome Lanneluc CLA 2002-04-25 12:22:01 EDT
Fixed by moving the waiting for the current job to finish outside the 
synchronization.
Comment 2 Martin Aeschlimann CLA 2002-04-30 04:59:56 EDT
*** Bug 14191 has been marked as a duplicate of this bug. ***