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.

Bug 99670

Summary: Deadlock on startup (libraries + projects Mutex)
Product: javaee Reporter: pzajac <pzajac>
Component: Web ProjectAssignee: Tomas Mysik <tmysik>
Status: RESOLVED FIXED    
Severity: blocker Keywords: THREAD
Priority: P2    
Version: 6.x   
Hardware: All   
OS: All   
Issue Type: DEFECT Exception Reporter:
Attachments: threads dump

Description pzajac 2007-04-02 12:19:02 UTC
build [20070204] with tasklist. 
Main tread locked LibrariesStorage and is waiting on ProjectsMutex
Default request procesor use Projects Mutex and is waiting on Libraries storage.


"Default RequestProcessor" daemon prio=1 tid=0x08453388 nid=0x405a waiting for
monitor entry [0xa92d2000..0xa92d3030]
        at
org.netbeans.modules.project.libraries.LibrariesStorage.initStorage(LibrariesStorage.java:170)
        - waiting to lock <0x8039cb18> (a
org.netbeans.modules.project.libraries.LibrariesStorage)
        at
org.netbeans.modules.project.libraries.LibrariesStorage.getLibraries(LibrariesStorage.java:290)
        at
org.netbeans.api.project.libraries.LibraryManager.getLibraries(LibraryManager.java:108)
        - locked <0x7e9fc270> (a org.netbeans.api.project.libraries.LibraryManager)
        at
org.netbeans.modules.web.project.classpath.WebProjectClassPathModifier.unregisterLibraryListeners(WebProjectClassPathModifier.java:304)
        at
org.netbeans.modules.web.project.classpath.WebProjectClassPathModifier.registerLibraryListeners(WebProjectClassPathModifier.java:316)
        at
org.netbeans.modules.web.project.classpath.WebProjectClassPathModifier.registerLibraryListeners(WebProjectClassPathModifier.java:312)
        at
org.netbeans.modules.web.project.classpath.WebProjectClassPathModifier.<init>(WebProjectClassPathModifier.java:91)
        at org.netbeans.modules.web.project.WebProject.<init>(WebProject.java:274)
        at
org.netbeans.modules.web.project.WebProjectType.createProject(WebProjectType.java:57)
        at
org.netbeans.modules.project.ant.AntBasedProjectFactorySingleton.loadProject(AntBasedProjectFactorySingleton.java:170)
        at
org.netbeans.api.project.ProjectManager.createProject(ProjectManager.java:337)
        at
org.netbeans.api.project.ProjectManager.access$400(ProjectManager.java:51)
        at org.netbeans.api.project.ProjectManager$2.run(ProjectManager.java:252)
        at org.netbeans.api.project.ProjectManager$2.run(ProjectManager.java:201)
        at org.openide.util.Mutex.readAccess(Mutex.java:269)
        at
org.netbeans.api.project.ProjectManager.findProject(ProjectManager.java:200)
"main" prio=1 tid=0x08388a18 nid=0x4047 in Object.wait() [0xb143e000..0xb143ef30]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x7eb74be8> (a org.openide.util.Mutex$QueueCell)
        at java.lang.Object.wait(Object.java:474)
        at org.openide.util.Mutex$QueueCell.sleep(Mutex.java:1447)
        - locked <0x7eb74be8> (a org.openide.util.Mutex$QueueCell)
        at org.openide.util.Mutex.enterImpl(Mutex.java:631)
        at org.openide.util.Mutex.enter(Mutex.java:538)
        at org.openide.util.Mutex.postRequest(Mutex.java:1137)
        at org.openide.util.Mutex.postWriteRequest(Mutex.java:490)
        at
org.netbeans.modules.java.j2seplatform.libraries.J2SELibraryTypeProvider.libraryCreated(J2SELibraryTypeProvider.java:85)
        at
org.netbeans.modules.project.libraries.LibrariesStorage.loadFromStorage(LibrariesStorage.java:143)
        at
org.netbeans.modules.project.libraries.LibrariesStorage.initStorage(LibrariesStorage.java:181)
        - locked <0x8039cb18> (a
org.netbeans.modules.project.libraries.LibrariesStorage)
        at
org.netbeans.modules.project.libraries.LibrariesStorage.getLibraries(LibrariesStorage.java:290)
Comment 1 pzajac 2007-04-02 12:21:03 UTC
Created attachment 40254 [details]
threads dump
Comment 2 Jesse Glick 2007-04-03 03:19:36 UTC
Maybe WebProject should be using postWriteRequest?
Comment 3 Tomas Zezula 2007-04-10 13:09:58 UTC
As Jesse explained.
Comment 4 Petr Jiricka 2007-07-03 12:03:45 UTC
Assigning to Tomas M.
Comment 5 Tomas Mysik 2007-07-16 17:17:59 UTC
Already fixed by issue 99733.