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: | IllegalStateException: Should not acquire Children.MUTEX while holding ProjectManager.mutex() | ||
---|---|---|---|
Product: | javame | Reporter: | Lukas Hasik <lhasik> |
Component: | Build System | Assignee: | _ tboudreau <tboudreau> |
Status: | VERIFIED FIXED | ||
Severity: | blocker | CC: | ca-nb, psuchomel, sunbiz |
Priority: | P1 | Keywords: | THREAD |
Version: | 6.x | ||
Hardware: | All | ||
OS: | All | ||
URL: | http://statistics.netbeans.org/exceptions/detail.do?id=130518 | ||
Issue Type: | DEFECT | Exception Reporter: | 130518 |
Attachments: | Minimal fix |
Description
Lukas Hasik
2008-10-19 22:27:47 UTC
Created attachment 72268 [details]
Minimal fix
I've attached a minimal fix to get the call to setKeys() out of the children object's constructor, so that Children.MUTEX is not acquired. It does mean the call to setKeys(Lookup.getDefault().lookupAll(ProjectConfigurationFactory.class)); will now happen in the event thread. If this is a performance problem, it's just a few more lines of code to change it to use Children.create() with asynchronous=true. Probably the most minimal fix is preferable if we want to propagate this change into the 6.5 release. Ended up fixing this differently than in the attached patch. We now get project names outside of the write mutex. 106185:6b862af46118 Raising to P1. Popup menu item on a node directly under the project causes exception 100% of the time. Fix is low-risk - just create the UI before entering ProjectManager.mutex().postWriteAccess(). Fix looks to me completely safe Committed to release65 repository: e90094f0d6dc - patch ecee27412cfd - update of spec version for mobility.project Verified with NetBeans IDE 6.5 RC2 (Build 200810231029) |