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 249734

Summary: IDE freezes when I hit enter on "Introduce Variable"
Product: cnd Reporter: ilia
Component: Code CompletionAssignee: Vladimir Voskresensky <vv159170>
Status: RESOLVED DUPLICATE    
Severity: normal    
Priority: P3    
Version: 8.0.1   
Hardware: PC   
OS: Linux   
Issue Type: DEFECT Exception Reporter:
Attachments: log file
thread dump
Another thread dump

Description ilia 2015-01-11 15:24:49 UTC
void GameObjectManager::AddObject(GameObjectDef* obj) {
    b2Body* body = m_world->CreateBody(obj->bodyDef);
    body->CreateFixture(obj->fixtureDef);
    
    dynamicObjects[obj] = body;
}

I got this freeze twice in different files, but both of freezes was on "introduce variable".

EDT hangs (the waiting cursor appears).
Comment 1 ilia 2015-01-11 15:42:01 UTC
Created attachment 151440 [details]
log file
Comment 2 ilia 2015-01-11 15:42:57 UTC
Created attachment 151441 [details]
thread dump
Comment 3 ilia 2015-01-11 15:43:35 UTC
From log:

INFO [org.netbeans.spi.lexer.MutableTextInput]: !!WARNING!! Missing READ-LOCK when accessing TokenHierarchy: input-source:org.netbeans.modules.editor.NbEditorDocument@1b5dd1df, mimeType='text/x-h', kitClass=null, length=1052, version=49, file=org.netbeans.modules.cnd.source.HDataObject@5b04669[/home/ilia/code/Platformer2D/GameObjectManager.h@749f8bb9:357bb8c6]
java.lang.Exception
	at org.netbeans.lib.lexer.TokenHierarchyOperation.ensureReadLocked(TokenHierarchyOperation.java:406)
	at org.netbeans.lib.lexer.TokenHierarchyOperation.tokenSequence(TokenHierarchyOperation.java:431)
	at org.netbeans.lib.lexer.TokenHierarchyOperation.tokenSequence(TokenHierarchyOperation.java:427)
	at org.netbeans.lib.lexer.TokenHierarchyOperation.embeddedTokenSequences(TokenHierarchyOperation.java:459)
	at org.netbeans.api.lexer.TokenHierarchy.embeddedTokenSequences(TokenHierarchy.java:265)
	at org.netbeans.cnd.api.lexer.CndLexerUtilities.getCppTokenSequence(CndLexerUtilities.java:137)
	at org.netbeans.cnd.api.lexer.CndLexerUtilities.getCppTokenSequence(CndLexerUtilities.java:94)
	at org.netbeans.modules.cnd.completion.cplusplus.ext.CsmResultItem.isForwardDeclaration(CsmResultItem.java:426)
	at org.netbeans.modules.cnd.completion.cplusplus.ext.CsmResultItem.defaultAction(CsmResultItem.java:374)
	at org.netbeans.modules.cnd.completion.cplusplus.ext.CsmResultItem.defaultAction(CsmResultItem.java:354)
	at org.netbeans.modules.editor.completion.CompletionImpl.dispatchKeyEvent(CompletionImpl.java:676)
	at org.netbeans.modules.editor.completion.CompletionImpl.keyPressed(CompletionImpl.java:404)
	at java.awt.AWTEventMulticaster.keyPressed(AWTEventMulticaster.java:250)
	at java.awt.Component.processKeyEvent(Component.java:6474)
	at javax.swing.JComponent.processKeyEvent(JComponent.java:2828)
	at java.awt.Component.processEvent(Component.java:6293)
	at java.awt.Container.processEvent(Container.java:2229)
	at java.awt.Component.dispatchEventImpl(Component.java:4872)
	at java.awt.Container.dispatchEventImpl(Container.java:2287)
	at java.awt.Component.dispatchEvent(Component.java:4698)
	at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1887)
	at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:762)
	at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1027)
	at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:899)
	at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:727)
	at java.awt.Component.dispatchEventImpl(Component.java:4742)
	at java.awt.Container.dispatchEventImpl(Container.java:2287)
	at java.awt.Window.dispatchEventImpl(Window.java:2719)
	at java.awt.Component.dispatchEvent(Component.java:4698)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
	at java.awt.EventQueue.access$200(EventQueue.java:103)
	at java.awt.EventQueue$3.run(EventQueue.java:694)
	at java.awt.EventQueue$3.run(EventQueue.java:692)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.awt.EventQueue$4.run(EventQueue.java:708)
	at java.awt.EventQueue$4.run(EventQueue.java:706)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
	at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:159)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Comment 4 ilia 2017-02-19 16:16:01 UTC
Created attachment 163663 [details]
Another thread dump
Comment 5 Vladimir Voskresensky 2017-03-30 16:01:57 UTC
I hope it's the consequence of missing lock

*** This bug has been marked as a duplicate of bug 254043 ***