This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Summary: | Blocked IDE after showing dialog "Open Project Warning" | ||
---|---|---|---|
Product: | cnd | Reporter: | Vladimir Voskresensky <vv159170> |
Component: | Project | Assignee: | Alexander Simon <alexvsimon> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | jglick, mmirilovic, mvillella |
Priority: | P3 | Keywords: | RANDOM, REGRESSION, THREAD |
Version: | 7.0.1 | ||
Hardware: | PC | ||
OS: | Solaris | ||
Issue Type: | DEFECT | Exception Reporter: | |
Attachments: | threads dump of blocked IDE |
Description
Vladimir Voskresensky
2011-10-20 09:45:28 UTC
Created attachment 112255 [details]
threads dump of blocked IDE
(from releases repository) #hg tip changeset: 204901:8db2af52de19 branch: release701_fixes This dead lock is side effect of fixing Bug #200982, change set: http://hg.netbeans.org/releases/rev/bae7aefdc693 Reassign to evaluation (In reply to comment #3) > This dead lock is side effect of fixing Bug #200982, change set: > http://hg.netbeans.org/releases/rev/bae7aefdc693 I do not think so. That change _reduced_ the amount of code in synchronized blocks. The problem here, a call to pcp.addPropertyChangeListener(lst), was synchronized with or without that change. The question is why MakeProjectConfigurationProvider.addPropertyChangeListener is blocking on another thread. This is likely wrong; aPCL should generally be a fast and nonblocking method, just appending a listener to a list. It seems you are attempting to avoid having a listener on MakeConfigurationDescriptor at certain times, but this logic is broken (removePropertyChangeListener does not check pcs.hasListeners). Better to just have the MakeProjectConfigurationProvider set up a listener on whatever else it needs to listen to once, perhaps in its constructor, and make add/removePropertyChangeListener do nothing but delegate to the same methods on pcs. If this cannot work, fallback fix could be to remember old and new values of pcp and add/removePCL on them outside the synch block of activeProjectChanged. It is not 100% reproducible. Other time I was able to have dialog with clickable buttons. Changes in Makeproject rather risky now in this area Probably thus bug is a duplicate of Bug #209508 and Bug #206049 fixed, change set: http://hg.netbeans.org/cnd-main/rev/2f2cc8b3e4e1 Integrated into 'main-golden', will be available in build *201203240400* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main-golden/rev/2f2cc8b3e4e1 User: Alexander Simon <alexvsimon@netbeans.org> Log: fixed Bug #203999 - Blocked IDE after showing dialog "Open Project Warning" *** Bug 206128 has been marked as a duplicate of this bug. *** *** Bug 213619 has been marked as a duplicate of this bug. *** |