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 142067 - deadlock while creating WS
Summary: deadlock while creating WS
Status: RESOLVED FIXED
Alias: None
Product: webservices
Classification: Unclassified
Component: Designer (show other bugs)
Version: 6.x
Hardware: All All
: P2 blocker (vote)
Assignee: Milan Kuchtiak
URL:
Keywords: PERFORMANCE, TEST
: 141294 (view as bug list)
Depends on:
Blocks:
 
Reported: 2008-07-29 14:15 UTC by Tomas Mysik
Modified: 2008-07-30 10:16 UTC (History)
2 users (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tomas Mysik 2008-07-29 14:15:40 UTC
Steps to reproduce:
- create new WS from Java in Web project

    [junit] Found one Java-level deadlock:
    [junit] =============================
    [junit] "AWT-EventQueue-2":
    [junit]   waiting to lock monitor 0x0879293c (object 0xb09af7e8, a 
org.netbeans.modules.websvc.design.loader.JaxWsDataObject),
    [junit]   which is held by "Default RequestProcessor"
    [junit] "Default RequestProcessor":
    [junit]   waiting to lock monitor 0x0879297c (object 0xafd38048, a org.openide.nodes.NodeLookup),
    [junit]   which is held by "AWT-EventQueue-2"
    [junit]
    [junit] Java stack information for the threads listed above:
    [junit] ===================================================
    [junit] "AWT-EventQueue-2":
    [junit]     at 
org.netbeans.modules.websvc.design.loader.JaxWsDataObject.createEditorSupport(JaxWsDataObject.java:198)
    [junit]     - waiting to lock <0xb09af7e8> (a org.netbeans.modules.websvc.design.loader.JaxWsDataObject)
    [junit]     at org.netbeans.modules.websvc.design.loader.JaxWsDataObject.getCookie(JaxWsDataObject.java:184)
    [junit]     at org.openide.loaders.DataNode.getCookie(DataNode.java:437)
    [junit]     at 
org.netbeans.modules.websvc.design.loader.JaxWsDataObject$JaxWsDataNode.getCookie(JaxWsDataObject.java:226)
    [junit]     at org.openide.nodes.NodeLookup.addCookie(NodeLookup.java:98)
    [junit]     at org.openide.nodes.NodeLookup.updateLookupAsCookiesAreChanged(NodeLookup.java:182)
    [junit]     - locked <0xafd38048> (a org.openide.nodes.NodeLookup)
    [junit]     at org.openide.nodes.NodeLookup.beforeLookup(NodeLookup.java:153)
    [junit]     at org.openide.util.lookup.AbstractLookup.lookupItem(AbstractLookup.java:420)
    [junit]     at org.openide.util.lookup.AbstractLookup.lookup(AbstractLookup.java:414)
    [junit]     at org.netbeans.api.java.source.JavaSource.forFileObject(JavaSource.java:418)
    [junit]     at org.netbeans.modules.websvc.core.jaxws.nodes.JaxWsNode.getImplBeanJavaSource(JaxWsNode.java:688)
    [junit]     at org.netbeans.modules.websvc.core.jaxws.nodes.JaxWsNode.getServiceUri(JaxWsNode.java:505)
    [junit]     at org.netbeans.modules.websvc.core.jaxws.nodes.JaxWsNode.getWebServiceURL(JaxWsNode.java:395)
    [junit]     at org.netbeans.modules.websvc.core.jaxws.nodes.JaxWsNode.getWsdlURL(JaxWsNode.java:595)
    [junit]     at org.netbeans.modules.websvc.core.jaxws.nodes.JaxWsNode.<init>(JaxWsNode.java:194)
    [junit]     at org.netbeans.modules.websvc.core.jaxws.nodes.JaxWsNode.<init>(JaxWsNode.java:147)
    [junit]     at 
org.netbeans.modules.websvc.core.jaxws.nodes.ProjectJaxWsWebServiceView.createServiceNodes(ProjectJaxWsWebServiceView.java:116)
    [junit]     at 
org.netbeans.modules.websvc.core.jaxws.nodes.ProjectJaxWsWebServiceView.createView(ProjectJaxWsWebServiceView.java:82)
    [junit]     at 
org.netbeans.modules.websvc.core.ProjectWebServiceNodeFactory$WsNodeList$Children.createNodes(ProjectWebServiceNodeFactory.java:196)
    [junit]     at 
org.netbeans.modules.websvc.core.ProjectWebServiceNodeFactory$WsNodeList$Children.createNodes(ProjectWebServiceNodeFactory.java:185)
    [junit]     at org.openide.nodes.Children$Keys$KE.nodes(Children.java:1526)
    [junit]     at org.openide.nodes.ChildrenArray.nodesFor(ChildrenArray.java:168)
    [junit]     - locked <0xafbfef48> (a org.openide.nodes.ChildrenArray)
    [junit]     at org.openide.nodes.EntrySupport$Default$Info.nodes(EntrySupport.java:926)
    [junit]     at org.openide.nodes.EntrySupport$Default.justComputeNodes(EntrySupport.java:238)
    [junit]     at org.openide.nodes.ChildrenArray.nodes(ChildrenArray.java:101)
    [junit]     at org.openide.nodes.EntrySupport$Default.getNodes(EntrySupport.java:159)
    [junit]     at org.openide.nodes.EntrySupport$Default.getNodes(EntrySupport.java:209)
    [junit]     at org.openide.nodes.Children.getNodes(Children.java:425)
    [junit]     at org.openide.nodes.FilterNode$Children$DefaultSupport.updateKeys(FilterNode.java:1550)
    [junit]     at org.openide.nodes.FilterNode$Children$DefaultSupport.update(FilterNode.java:1544)
    [junit]     at org.openide.nodes.FilterNode$Children.addNotifyImpl(FilterNode.java:1364)
    [junit]     at org.openide.nodes.FilterNode$Children.addNotify(FilterNode.java:1357)
    [junit]     at org.openide.nodes.Children.callAddNotify(Children.java:525)
    [junit]     at org.openide.nodes.EntrySupport$Default.getArray(EntrySupport.java:740)
    [junit]     at org.openide.nodes.EntrySupport$Default.getNodes(EntrySupport.java:153)
    [junit]     at org.openide.nodes.EntrySupport$Default.getNodes(EntrySupport.java:209)
    [junit]     at org.openide.nodes.EntrySupport$Default.getNodesCount(EntrySupport.java:213)
    [junit]     at org.openide.nodes.Children.getNodesCount(Children.java:463)
    [junit]     at org.openide.explorer.view.VisualizerNode.getChildren(VisualizerNode.java:258)
    [junit]     at org.openide.explorer.view.VisualizerNode.getChildren(VisualizerNode.java:250)
    [junit]     at org.openide.explorer.view.VisualizerNode.getChildCount(VisualizerNode.java:323)
    [junit]     at javax.swing.tree.DefaultTreeModel.getChildCount(DefaultTreeModel.java:168)
    [junit]     at javax.swing.tree.FixedHeightLayoutCache$FHTreeStateNode.expand(FixedHeightLayoutCache.java:1135)
    [junit]     at javax.swing.tree.FixedHeightLayoutCache.ensurePathIsExpanded(FixedHeightLayoutCache.java:645)
    [junit]     at javax.swing.tree.FixedHeightLayoutCache.setExpandedState(FixedHeightLayoutCache.java:282)
    [junit]     at javax.swing.plaf.basic.BasicTreeUI.updateExpandedDescendants(BasicTreeUI.java:1556)
    [junit]     at javax.swing.plaf.basic.BasicTreeUI$Handler.treeExpanded(BasicTreeUI.java:3649)
    [junit]     at javax.swing.JTree.fireTreeExpanded(JTree.java:2235)
    [junit]     at javax.swing.JTree.setExpandedState(JTree.java:3006)
    [junit]     at javax.swing.JTree.expandPath(JTree.java:1742)
    [junit]     at org.netbeans.jemmy.operators.JTreeOperator$26.map(JTreeOperator.java:1688)
    [junit]     at org.netbeans.jemmy.operators.Operator$MapVoidAction.launch(Operator.java:1439)
    [junit]     at org.netbeans.jemmy.QueueTool$QueueAction.run(QueueTool.java:563)
    [junit]     at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:199)
    [junit]     at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
    [junit]     at org.netbeans.jemmy.QueueTool$JemmyQueue.dispatchEvent(QueueTool.java:610)
    [junit]     at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
    [junit]     at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
    [junit]     at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
    [junit]     at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
    [junit]     at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
    [junit] "Default RequestProcessor":
    [junit]     at org.openide.nodes.NodeLookup.updateLookupAsCookiesAreChanged(NodeLookup.java:163)
    [junit]     - waiting to lock <0xafd38048> (a org.openide.nodes.NodeLookup)
    [junit]     at org.openide.nodes.NodeLookup.beforeLookup(NodeLookup.java:153)
    [junit]     at org.openide.util.lookup.AbstractLookup.lookupItem(AbstractLookup.java:420)
    [junit]     at org.openide.util.lookup.AbstractLookup.lookup(AbstractLookup.java:414)
    [junit]     at 
org.netbeans.modules.openide.loaders.DataObjectEncodingQueryImplementation.getEncoding(DataObjectEncodingQueryImplementation.java:82)
    [junit]     at org.netbeans.api.queries.FileEncodingQuery.getEncoding(FileEncodingQuery.java:91)
    [junit]     at org.netbeans.modules.java.source.parsing.SourceFileObject.openReader(SourceFileObject.java:163)
    [junit]     at 
org.netbeans.modules.java.source.parsing.SourceFileObject.getCharContentImpl(SourceFileObject.java:374)
    [junit]     at org.netbeans.modules.java.source.parsing.SourceFileObject.<init>(SourceFileObject.java:110)
    [junit]     at org.netbeans.modules.java.source.parsing.FileObjects.nbFileObject(FileObjects.java:228)
    [junit]     at 
org.netbeans.api.java.source.JavaSource$DefaultJavaFileObjectProvider.createJavaFileObject(JavaSource.java:2444)
    [junit]     at org.netbeans.api.java.source.CompilationInfoImpl.<init>(CompilationInfoImpl.java:92)
    [junit]     at org.netbeans.api.java.source.JavaSource.createCurrentInfo(JavaSource.java:2030)
    [junit]     at org.netbeans.api.java.source.JavaSource.runUserActionTask(JavaSource.java:640)
    [junit]     at org.netbeans.modules.websvc.design.multiview.MultiViewSupport.initWsdlDO(MultiViewSupport.java:147)
    [junit]     at org.netbeans.modules.websvc.design.multiview.MultiViewSupport.<init>(MultiViewSupport.java:254)
    [junit]     at 
org.netbeans.modules.websvc.design.loader.JaxWsDataObject.createMultiViewCookie(JaxWsDataObject.java:209)
    [junit]     - locked <0xb09af7e8> (a org.netbeans.modules.websvc.design.loader.JaxWsDataObject)
    [junit]     at org.netbeans.modules.websvc.design.loader.JaxWsDataObject.getCookie(JaxWsDataObject.java:180)
    [junit]     at org.netbeans.modules.websvc.core.JaxWsUtils.openFileInEditor(JaxWsUtils.java:489)
    [junit]     at 
org.netbeans.modules.websvc.core.dev.wizard.JaxWsServiceCreator.generateJaxWSImplFromTemplate(JaxWsServiceCreator.java:276)
    [junit]     at 
org.netbeans.modules.websvc.core.dev.wizard.JaxWsServiceCreator.generateWebService(JaxWsServiceCreator.java:213)
    [junit]     at org.netbeans.modules.websvc.core.dev.wizard.JaxWsServiceCreator.access$000
(JaxWsServiceCreator.java:121)
    [junit]     at org.netbeans.modules.websvc.core.dev.wizard.JaxWsServiceCreator$1.run(JaxWsServiceCreator.java:150)
    [junit]     at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572)
    [junit]     at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997)
    [junit]
    [junit] Found 1 deadlock.
    [junit]
Comment 1 Milan Kuchtiak 2008-07-29 14:55:30 UTC
*** Issue 141294 has been marked as a duplicate of this issue. ***
Comment 2 Petr Jiricka 2008-07-29 15:56:05 UTC
The log file attached to issue 142034 also contains some suspicious traces of lock ordering, could this be related?

java.lang.IllegalStateException: WARNING: Going from readAccess to writeAccess, see #10778:
http://www.netbeans.org/issues/show_bug.cgi?id=10778 

See also: http://www.netbeans.org/nonav/issues/showattachment.cgi/65928/messages.log