[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
| 
[cdt-core-dev] Deadlock accessing Build Info ?
 | 
Hi All,
 
I'm experiencing a 
deadlock when accessing Build Info for managed make C projects while the indexer 
is running.
I'm using CDT 
3.1.1 with Eclipse 3.2.1 on Win XP.
 
I post the problem 
here before filing it as a Bug, in order to understand if it is really a Bug or 
if I'm doing something wrong.
I spent some time 
analysing the problem in the code and searching for information on newsgoup, 
mail acrhives and Bugs, but I was not able to find a 
solution.
 
The attached file 
shows involved thread stacks paused when the deadlock is on (restarting and 
pausing always lead to the same situation).
 
If the indexer is running, and some different thread 
attempt to access BuildInfo for the project the deadlock may 
appear.
 
I tryied to do all I 
was able to do in my code, starting from running all of my code in the same 
thread, or in synch or asynch runners/builders, 
...
I tryied to use 
scheduling rules or immagined ways to synchronize the stuff, but I was not able 
to work the problem around.
All indexer Jobs 
synchronize to a private mutex (indexerJobMutex) in PDomManager. I was not able to find a way 
to get involved in such synchronization.
 
A similar problem 
was there in previous versions of CDT too. But in previous version I solved the 
problem by disabling indexing activity while my code was running (CCorePlugin.getDefault().getCoreModel().getIndexManager().disable()). 
In CDT 3.1 and 3.1.1 I'm not able to find support to disable the 
indexer.
 
Please let me know 
if I have to file this problem as a Bug and if there is a Workaround I may 
apply.
Maybe it is just 
some sort of big mistake and the solution is in front of my 
eyes.
 
many 
thanks
Tiz
 
 
 
 
Attachment:
Build Info Deadlock.bmp
Description: Build Info Deadlock.bmp