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.
Hi, I am a hobbyist (re amount of use of Netbeans M10) however in the last week I have had 3 occasions of what appears to be Netbeans lockups on my Macbook OS X v10.4.10. I have found the details of how to get a thread dump to will try this next time & post to this issue when I get this. Two of the three occurances appeared with the following symptoms: * netbeans non-responsive * very very slow to do other things on the MacBook * when I did get Activity Monitor up, it seemed that Netbeans was not using CPU (which I found interesting)
PS. I wasn't exactly sure which Component to put this one against. I have installed the just the Ruby and UML portions of Netbeans (I downloaded the 100M+ downloadable). I was performing different things within Netbeans for each occurance to date (i.e. wasn't a particular Netbeans function that triggered it from what I gather).
Thanks for the report. Without a thread dump it's hard to do much about this, but a thread dump will help in both scenarios: - Frozen IDE without CPU activity: most likely a deadlock and a thread dump will show the contended lock (unfortunately that's not really true on OSX where the JDK's ability to generate thread dumps has serious bugs and often leaves out the vital event thread) - A very slow (cpu pegged IDE)'s thread dump will show the offending code that is in a hot loop which can at least pinpoint the component with a problem Note that there was a bug related to the IDE hanging on certain editing operations; that was issue 108813 (which has been present for well over a month)and itsfix was integrated this morning! If we're lucky that's the bug you were experiencing and is hopefully gone.
stack dump - RubyNetBean went to very high CPU and continued to stay there (98% CPU) and was no responsive. Product Version: NetBeans Ruby IDE 070725 Java: 1.5.0_07; Java HotSpot(TM) Client VM 1.5.0_07-87 System: Mac OS X version 10.4.10 running on i386; MacRoman; en_US (nbrubyide) Userdir: /Users/greg/Library/Application Support/nbrubyide/dev greg$ sudo jstack 674 Password: Attaching to process ID 674, please wait... Debugger attached successfully. Client compiler detected. JVM version is 1.5.0_07-87 Thread t@3847: (state = BLOCKED) - sun.misc.Unsafe.park(boolean, long) @bci=0 (Interpreted frame) - java.util.concurrent.locks.LockSupport.parkNanos(long) @bci=11, line=146 (Interpreted frame) - java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(long) @bci=67, line=1803 (Interpreted frame) - java.util.concurrent.PriorityBlockingQueue.poll(long, java.util.concurrent.TimeUnit) @bci=68, line=236 (Interpreted frame) - org.netbeans.api.retouche.source.Source$CompilationJob.run() @bci=145, line=1115 (Interpreted frame) - java.util.concurrent.Executors$RunnableAdapter.call() @bci=4, line=417 (Interpreted frame) - java.util.concurrent.FutureTask$Sync.innerRun() @bci=22, line=269 (Interpreted frame) - java.util.concurrent.FutureTask.run() @bci=4, line=123 (Interpreted frame) - java.util.concurrent.ThreadPoolExecutor$Worker.runTask(java.lang.Runnable) @bci=44, line=650 (Interpreted frame) - java.util.concurrent.ThreadPoolExecutor$Worker.run() @bci=28, line=675 (Interpreted frame) - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame) Thread t@4099: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.Object.wait() @bci=2, line=474 (Interpreted frame) - java.util.TimerThread.mainLoop() @bci=28, line=483 (Interpreted frame) - java.util.TimerThread.run() @bci=1, line=462 (Interpreted frame) Thread t@4355: (state = BLOCKED) Thread t@4611: (state = IN_JAVA) Thread t@4867: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - javax.swing.TimerQueue.run() @bci=14, line=233 (Interpreted frame) - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame) Thread t@5123: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.Object.wait() @bci=2, line=474 (Interpreted frame) - java.util.prefs.AbstractPreferences$EventDispatchThread.run() @bci=22, line=1456 (Interpreted frame) Thread t@5379: (state = BLOCKED) - sun.misc.Unsafe.park(boolean, long) @bci=0 (Interpreted frame) - java.util.concurrent.locks.LockSupport.park() @bci=5, line=118 (Interpreted frame) - java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await() @bci=41, line=1767 (Interpreted frame) - java.util.concurrent.LinkedBlockingQueue.take() @bci=29, line=359 (Interpreted frame) - java.util.concurrent.ThreadPoolExecutor.getTask() @bci=47, line=470 (Interpreted frame) - java.util.concurrent.ThreadPoolExecutor$Worker.run() @bci=18, line=674 (Interpreted frame) - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame) Thread t@5635: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.ref.ReferenceQueue.remove(long) @bci=44, line=116 (Compiled frame) - java.lang.ref.ReferenceQueue.remove() @bci=2, line=132 (Compiled frame) - sun.java2d.Disposer.run() @bci=3, line=123 (Interpreted frame) - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame) Thread t@5891: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.Object.wait() @bci=2, line=474 (Interpreted frame) - sun.awt.AWTAutoShutdown.run() @bci=32, line=259 (Interpreted frame) - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame) Thread t@6147: (state = IN_NATIVE) - apple.awt.CToolkit.doAWTRunLoop(long, boolean, boolean) @bci=0 (Interpreted frame) - apple.awt.CToolkit.invokeAndWait(java.lang.Runnable, java.awt.Component, boolean) @bci=57, line=1053 (Interpreted frame) - apple.awt.CToolkit.invokeAndWait(java.lang.Runnable, java.awt.Component) @bci=3, line=1034 (Interpreted frame) - apple.laf.ScreenMenu.invokeOpenLater() @bci=30, line=102 (Interpreted frame) Thread t@6403: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.util.TimerThread.mainLoop() @bci=201, line=509 (Interpreted frame) - java.util.TimerThread.run() @bci=1, line=462 (Interpreted frame) Thread t@6659: (state = IN_NATIVE) - java.net.PlainSocketImpl.socketAccept(java.net.SocketImpl) @bci=0 (Interpreted frame) - java.net.PlainSocketImpl.accept(java.net.SocketImpl) @bci=7, line=384 (Interpreted frame) - java.net.ServerSocket.implAccept(java.net.Socket) @bci=50, line=450 (Interpreted frame) - java.net.ServerSocket.accept() @bci=48, line=421 (Interpreted frame) - org.netbeans.CLIHandler$Server.run() @bci=54, line=980 (Interpreted frame) Thread t@6915: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.ref.ReferenceQueue.remove(long) @bci=44, line=116 (Compiled frame) - org.openide.util.Utilities$ActiveQueue.run() @bci=2, line=3034 (Interpreted frame) - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame) Thread t@7171: (state = BLOCKED) Thread t@7427: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.ref.ReferenceQueue.remove(long) @bci=44, line=116 (Compiled frame) - org.netbeans.modules.applemenu.FontReferenceQueue.remove(long) @bci=2, line=86 (Compiled frame) - java.lang.ref.ReferenceQueue.remove() @bci=2, line=132 (Compiled frame) - java.lang.ref.Finalizer$FinalizerThread.run() @bci=3, line=159 (Compiled frame) Thread t@7683: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.Object.wait() @bci=2, line=474 (Compiled frame)
(2nd Stack Trace) After starting RubyNetBeans up again it when straight to high CPU again after I just opened a *.rhtml file and hit "r" TAB (well roughly around the time I did this). Note - I had just pointed Netbeans to my /opt/local/bin/ruby installation (MacPorts based install) greg$ sudo jstack 814 Password: Attaching to process ID 814, please wait... Debugger attached successfully. Client compiler detected. JVM version is 1.5.0_07-87 Thread t@7939: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.Object.wait() @bci=2, line=474 (Compiled frame) - org.netbeans.editor.ext.html.parser.SyntaxParser.getElementChain(int) @bci=7, line=210 (Interpreted frame) - org.netbeans.editor.ext.html.parser.SyntaxParser.reallyParse() @bci=13, line=165 (Interpreted frame) - org.netbeans.editor.ext.html.parser.SyntaxParser.parse() @bci=38, line=152 (Interpreted frame) - org.netbeans.editor.ext.html.parser.SyntaxParser.access$200(org.netbeans.editor.ext.html.parser.SyntaxParser) @bci=1, line=44 (Interpreted frame) - org.netbeans.editor.ext.html.parser.SyntaxParser$2.run() @bci=4, line=98 (Interpreted frame) - org.openide.util.RequestProcessor$Task.run() @bci=15, line=539 (Interpreted frame) - org.openide.util.RequestProcessor$Processor.run() @bci=235, line=964 (Interpreted frame) Thread t@8195: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.Object.wait() @bci=2, line=474 (Compiled frame) - org.netbeans.modules.languages.ParserManagerImpl.createTokenInput() @bci=17, line=302 (Interpreted frame) - org.netbeans.modules.languages.ParserManagerImpl.parse() @bci=27, line=293 (Interpreted frame) - org.netbeans.modules.languages.ParserManagerImpl.parseAST() @bci=13, line=246 (Interpreted frame) - org.netbeans.modules.languages.ParserManagerImpl.access$000(org.netbeans.modules.languages.ParserManagerImpl) @bci=1, line=67 (Interpreted frame) - org.netbeans.modules.languages.ParserManagerImpl$1.run() @bci=4, line=158 (Interpreted frame) - org.openide.util.RequestProcessor$Task.run() @bci=15, line=539 (Interpreted frame) - org.openide.util.RequestProcessor$Processor.run() @bci=235, line=964 (Interpreted frame) Thread t@8451: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.Object.wait() @bci=2, line=474 (Compiled frame) - org.netbeans.editor.BaseDocument.render(java.lang.Runnable) @bci=1, line=1159 (Compiled frame) - org.netbeans.modules.versioning.Utils.getDocumentReader(javax.swing.text.Document) @bci=17, line=155 (Interpreted frame) - org.netbeans.modules.versioning.diff.DiffSidebar.getDocumentReader() @bci=18, line=420 (Interpreted frame) - org.netbeans.modules.versioning.diff.DiffSidebar.access$500(org.netbeans.modules.versioning.diff.DiffSidebar) @bci=1, line=67 (Interpreted frame) - org.netbeans.modules.versioning.diff.DiffSidebar$RefreshDiffTask.computeDiff() @bci=48, line=648 (Interpreted frame) - org.netbeans.modules.versioning.diff.DiffSidebar$RefreshDiffTask.run() @bci=1, line=633 (Interpreted frame) - org.openide.util.RequestProcessor$Task.run() @bci=15, line=539 (Interpreted frame) - org.openide.util.RequestProcessor$Processor.run() @bci=235, line=964 (Interpreted frame) Thread t@8707: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - org.openide.util.RequestProcessor$Processor.run() @bci=23, line=917 (Interpreted frame) Thread t@8963: (state = BLOCKED) - sun.misc.Unsafe.park(boolean, long) @bci=0 (Interpreted frame) - java.util.concurrent.locks.LockSupport.parkNanos(long) @bci=11, line=146 (Interpreted frame) - java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(long) @bci=67, line=1803 (Interpreted frame) - java.util.concurrent.PriorityBlockingQueue.poll(long, java.util.concurrent.TimeUnit) @bci=68, line=236 (Interpreted frame) - org.netbeans.api.retouche.source.Source$CompilationJob.run() @bci=145, line=1115 (Interpreted frame) - java.util.concurrent.Executors$RunnableAdapter.call() @bci=4, line=417 (Interpreted frame) - java.util.concurrent.FutureTask$Sync.innerRun() @bci=22, line=269 (Interpreted frame) - java.util.concurrent.FutureTask.run() @bci=4, line=123 (Interpreted frame) - java.util.concurrent.ThreadPoolExecutor$Worker.runTask(java.lang.Runnable) @bci=44, line=650 (Interpreted frame) - java.util.concurrent.ThreadPoolExecutor$Worker.run() @bci=28, line=675 (Interpreted frame) - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame) Thread t@9219: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.Object.wait() @bci=2, line=474 (Interpreted frame) - java.util.TimerThread.mainLoop() @bci=28, line=483 (Interpreted frame) - java.util.TimerThread.run() @bci=1, line=462 (Interpreted frame) Thread t@9475: (state = BLOCKED) Thread t@9731: (state = IN_JAVA) Thread t@9987: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - javax.swing.TimerQueue.run() @bci=14, line=233 (Interpreted frame) - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame) Thread t@10243: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.Object.wait() @bci=2, line=474 (Interpreted frame) - java.util.prefs.AbstractPreferences$EventDispatchThread.run() @bci=22, line=1456 (Interpreted frame) Thread t@10499: (state = BLOCKED) - sun.misc.Unsafe.park(boolean, long) @bci=0 (Interpreted frame) - java.util.concurrent.locks.LockSupport.park() @bci=5, line=118 (Interpreted frame) - java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await() @bci=41, line=1767 (Interpreted frame) - java.util.concurrent.LinkedBlockingQueue.take() @bci=29, line=359 (Compiled frame) - java.util.concurrent.ThreadPoolExecutor.getTask() @bci=47, line=470 (Compiled frame) - java.util.concurrent.ThreadPoolExecutor$Worker.run() @bci=18, line=674 (Interpreted frame) - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame) Thread t@10755: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.ref.ReferenceQueue.remove(long) @bci=44, line=116 (Compiled frame) - java.lang.ref.ReferenceQueue.remove() @bci=2, line=132 (Compiled frame) - sun.java2d.Disposer.run() @bci=3, line=123 (Interpreted frame) - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame) Thread t@11011: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.Object.wait() @bci=2, line=474 (Interpreted frame) - sun.awt.AWTAutoShutdown.run() @bci=32, line=259 (Interpreted frame) - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame) Thread t@11267: (state = IN_NATIVE) - apple.awt.CToolkit.doAWTRunLoop(long, boolean, boolean) @bci=0 (Interpreted frame) - apple.awt.CToolkit.invokeAndWait(java.lang.Runnable, java.awt.Component, boolean) @bci=57, line=1053 (Interpreted frame) - apple.awt.CToolkit.invokeAndWait(java.lang.Runnable, java.awt.Component) @bci=3, line=1034 (Interpreted frame) - apple.laf.ScreenMenu.invokeOpenLater() @bci=30, line=102 (Interpreted frame) Thread t@11523: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.util.TimerThread.mainLoop() @bci=201, line=509 (Interpreted frame) - java.util.TimerThread.run() @bci=1, line=462 (Interpreted frame) Thread t@11779: (state = IN_NATIVE) - java.net.PlainSocketImpl.socketAccept(java.net.SocketImpl) @bci=0 (Interpreted frame) - java.net.PlainSocketImpl.accept(java.net.SocketImpl) @bci=7, line=384 (Interpreted frame) - java.net.ServerSocket.implAccept(java.net.Socket) @bci=50, line=450 (Interpreted frame) - java.net.ServerSocket.accept() @bci=48, line=421 (Interpreted frame) - org.netbeans.CLIHandler$Server.run() @bci=54, line=980 (Interpreted frame) Thread t@12035: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.ref.ReferenceQueue.remove(long) @bci=44, line=116 (Compiled frame) - org.openide.util.Utilities$ActiveQueue.run() @bci=2, line=3034 (Interpreted frame) - java.lang.Thread.run() @bci=11, line=613 (Interpreted frame) Thread t@12291: (state = BLOCKED) Thread t@12547: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.ref.ReferenceQueue.remove(long) @bci=44, line=116 (Compiled frame) - org.netbeans.modules.applemenu.FontReferenceQueue.remove(long) @bci=2, line=86 (Compiled frame) - java.lang.ref.ReferenceQueue.remove() @bci=2, line=132 (Compiled frame) - java.lang.ref.Finalizer$FinalizerThread.run() @bci=3, line=159 (Compiled frame) Thread t@12803: (state = BLOCKED) - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.Object.wait() @bci=2, line=474 (Compiled frame)
Note this high CPU didn't happen with 070723, but is happening wiht 070725, again on OS X.
The thread dump shows Schliemann activity, so reassigning to the languages module. (Note that on OSX the jstack tool is a bit broken and the AWT thread frequently ends up missing from the threaddump.) I'm wondering if this is a duplicate of issue 111041 (which was fixed yesterday) ?
I've just installed NetBeans Ruby IDE 070726, and I'm not seeing this obvious / fairly immediate issue occurring. I've only had to try it for 10min to see as previously it would pretty much occur straight away. You may like close?
It's very likely a duplicate of 111041 - given both the timing of when this started happening and the fact that it's gone (since 111041 was fixed yesterday). (Plus the more obvious fact that your thread dump points to the same problem area as the one addressed by 111041. Thanks again for the report! *** This issue has been marked as a duplicate of 111041 ***
Created attachment 141518 [details] thread-dump