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.
- create Samples\C/C++\Welcome project - open classes window it is empty and contains text: <No C/C++ Project Open> looks like linux specific
is it still the case? I've seen "Project initializing" node when expanded Project node and there were no any running CND threads, but it wasn't clear who is waiting as well. After 40-90 sec it was changed to content of project and Class view reacted on the end of project open event Could you, please, provide your thread dumps? Thanks, Vladimir
it is very strange, but I can't reproduce this issue with installer build. I build NB from sources.
It could be Netbeans project API problem. On starting IDE previously closed with project I see it displayed in Project tab, but expanding node shows "Initializing project..." text. I can do two things to "force" NB for finishing this strange phase: - wait without any activity for 2-3 minutes or - minimize/maximize NB and put focus into Project tab => I think it could be NB Project system problem, not C++ related. Reassigning for evaluation Thread dump of the time when "Initializing project..." message is visible: "Inactive RequestProcessor thread [Was:Folder recognizer/org.openide.loaders.FolderList$ListTask]" daemon prio=1 tid=0x0ae3e740 nid=0x27 in Object.wait() [0xc05ff000..0xc05ffb38] at java.lang.Object.wait(Native Method) - waiting on <0xd0b48e18> (a java.lang.Object) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:950) - locked <0xd0b48e18> (a java.lang.Object) "Inactive RequestProcessor thread [Was:Folder Instance Processor/org.openide.loaders.FolderInstance$2]" daemon prio=1 tid=0x0b49b1a0 nid=0x26 in Object.wait() [0xc09ff000..0xc09ffbb8] at java.lang.Object.wait(Native Method) - waiting on <0xd0a12058> (a java.lang.Object) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:950) - locked <0xd0a12058> (a java.lang.Object) "Inactive RequestProcessor thread [Was:Folder recognizer/org.openide.loaders.FolderList$ListTask]" daemon prio=1 tid=0x08a61880 nid=0x24 in Object.wait() [0xc0dff000..0xc0dffcb8] at java.lang.Object.wait(Native Method) - waiting on <0xcfdfd5c8> (a java.lang.Object) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:950) - locked <0xcfdfd5c8> (a java.lang.Object) "Inactive RequestProcessor thread [Was:Default RequestProcessor/org.openide.explorer.view.TreeView$TreePropertyListener$1Request]" daemon prio=1 tid=0x09242818 nid=0x23 in Object.wait() [0xc11ff000..0xc11ffd38] at java.lang.Object.wait(Native Method) - waiting on <0xcfd9d1c0> (a java.lang.Object) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:950) - locked <0xcfd9d1c0> (a java.lang.Object) "Repository writer 0" daemon prio=1 tid=0x0a8543f8 nid=0x22 waiting on condition [0xc15ff000..0xc15ffdb8] at java.lang.Thread.sleep(Native Method) at org.netbeans.modules.cnd.repository.queue.RepositoryWritingThread.waitReady(RepositoryWritingThread.java:94) at org.netbeans.modules.cnd.repository.queue.RepositoryWritingThread.run(RepositoryWritingThread.java:128) at org.netbeans.modules.cnd.repository.queue.RepositoryThreadManager$Wrapper.run(RepositoryThreadManager.java:84) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997) "Code Model Parser 3" daemon prio=1 tid=0x0a853be8 nid=0x21 in Object.wait() [0xc19ff000..0xc19ffa38] at java.lang.Object.wait(Native Method) - waiting on <0xcfd1b610> (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserQueue.waitReady(ParserQueue.java:370) - locked <0xcfd1b610> (a java.lang.Object) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThread._run(ParserThread.java:85) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThread.run(ParserThread.java:65) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThreadManager$Wrapper.run(ParserThreadManager.java:89) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997) "Class View Updater" prio=10 tid=0x08fa70c8 nid=0x20 in Object.wait() [0xc7fff000..0xc7fffab8] at java.lang.Object.wait(Native Method) - waiting on <0xcfd1b6d0> (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at org.netbeans.modules.cnd.classview.ClassViewUpdater$BlockingQueue.get(ClassViewUpdater.java:65) - locked <0xcfd1b6d0> (a java.lang.Object) at org.netbeans.modules.cnd.classview.ClassViewUpdater.run(ClassViewUpdater.java:144) "DestroyJavaVM" prio=10 tid=0x08076410 nid=0x1 waiting on condition [0x00000000..0x08046260] "Flushing caches" prio=1 tid=0x08f24f60 nid=0x1f waiting on condition [0xc1dff000..0xc1dffb38] at java.lang.Thread.sleep(Native Method) at org.netbeans.Stamps$Store.count(Stamps.java:578) at org.netbeans.Stamps$Store.write(Stamps.java:569) at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65) at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:123) - locked <0xcb69c688> (a java.io.BufferedOutputStream) at java.io.DataOutputStream.flush(DataOutputStream.java:106) at sun.nio.cs.StreamEncoder$CharsetSE.implFlush(StreamEncoder.java:410) at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:152) - locked <0xcb92e108> (a java.io.OutputStreamWriter) at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:213) at org.netbeans.core.startup.ModuleList.writeStatus(ModuleList.java:1016) at org.netbeans.core.startup.ModuleList.flushCaches(ModuleList.java:973) at org.netbeans.Stamps$Store.store(Stamps.java:521) at org.netbeans.Stamps$Worker.run(Stamps.java:683) "AWT-EventQueue-1" prio=10 tid=0x0921d2d0 nid=0x1d in Object.wait() [0xc25ff000..0xc25ffc38] at java.lang.Object.wait(Native Method) - waiting on <0xcfad3408> (a org.netbeans.core.TimableEventQueue) at java.lang.Object.wait(Object.java:474) at java.awt.EventQueue.getNextEvent(EventQueue.java:345) - locked <0xcfad3408> (a org.netbeans.core.TimableEventQueue) at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:189) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149) at java.awt.EventDispatchThread.run(EventDispatchThread.java:110) "TimerQueue" daemon prio=10 tid=0x08694f40 nid=0x1c in Object.wait() [0xc6fff000..0xc6fffcb8] at java.lang.Object.wait(Native Method) - waiting on <0xcfad3468> (a javax.swing.TimerQueue) at javax.swing.TimerQueue.run(TimerQueue.java:236) - locked <0xcfad3468> (a javax.swing.TimerQueue) at java.lang.Thread.run(Thread.java:595) "Code Model Parser 1" daemon prio=1 tid=0x08f736f8 nid=0x1b in Object.wait() [0xc29ff000..0xc29ffd38] at java.lang.Object.wait(Native Method) - waiting on <0xcfd1b610> (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserQueue.waitReady(ParserQueue.java:370) - locked <0xcfd1b610> (a java.lang.Object) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThread._run(ParserThread.java:85) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThread.run(ParserThread.java:65) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThreadManager$Wrapper.run(ParserThreadManager.java:89) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997) "Thread-2" daemon prio=10 tid=0x0a66af98 nid=0x1a in Object.wait() [0xc2dff000..0xc2dffdb8] at java.lang.Object.wait(Native Method) - waiting on <0xcf9d6dc0> (a java.util.LinkedList) at java.lang.Object.wait(Object.java:474) at java.util.prefs.AbstractPreferences$EventDispatchThread.run(AbstractPreferences.java:1456) - locked <0xcf9d6dc0> (a java.util.LinkedList) "Code Model Parser 2" daemon prio=1 tid=0x08ec0648 nid=0x18 in Object.wait() [0xc31ff000..0xc31ffab8] at java.lang.Object.wait(Native Method) - waiting on <0xcfd1b610> (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserQueue.waitReady(ParserQueue.java:370) - locked <0xcfd1b610> (a java.lang.Object) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThread._run(ParserThread.java:85) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThread.run(ParserThread.java:65) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThreadManager$Wrapper.run(ParserThreadManager.java:89) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997) "AWT-Motif" daemon prio=10 tid=0x084a28a8 nid=0x15 runnable [0xc73ff000..0xc73ffc38] at sun.awt.motif.MToolkit.run(Native Method) at java.lang.Thread.run(Thread.java:595) "AWT-Shutdown" prio=10 tid=0x084a20c8 nid=0x14 in Object.wait() [0xc77ff000..0xc77ffcb8] at java.lang.Object.wait(Native Method) - waiting on <0xcef95130> (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:259) - locked <0xcef95130> (a java.lang.Object) at java.lang.Thread.run(Thread.java:595) "Java2D Disposer" daemon prio=10 tid=0x085fc988 nid=0x13 in Object.wait() [0xc7bff000..0xc7bffd38] at java.lang.Object.wait(Native Method) - waiting on <0xcefd33e8> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116) - locked <0xcefd33e8> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132) at sun.java2d.Disposer.run(Disposer.java:125) at java.lang.Thread.run(Thread.java:595) "Code Model Parser 0" daemon prio=1 tid=0x08374560 nid=0x11 in Object.wait() [0xc83ff000..0xc83ffa38] at java.lang.Object.wait(Native Method) - waiting on <0xcfd1b610> (a java.lang.Object) at java.lang.Object.wait(Object.java:474) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserQueue.waitReady(ParserQueue.java:370) - locked <0xcfd1b610> (a java.lang.Object) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThread._run(ParserThread.java:85) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThread.run(ParserThread.java:65) at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThreadManager$Wrapper.run(ParserThreadManager.java:89) at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572) at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997) "Timer-0" daemon prio=10 tid=0x08356ed0 nid=0x10 in Object.wait() [0xc87ff000..0xc87ffab8] at java.lang.Object.wait(Native Method) - waiting on <0xcef7b3f0> (a java.util.TaskQueue) at java.util.TimerThread.mainLoop(Timer.java:509) - locked <0xcef7b3f0> (a java.util.TaskQueue) at java.util.TimerThread.run(Timer.java:462) "CLI Requests Server" daemon prio=10 tid=0x08355778 nid=0xf runnable [0xc8bff000..0xc8bffb38] at java.net.PlainSocketImpl.socketAccept(Native Method) at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384) - locked <0xcef7b410> (a java.net.SocksSocketImpl) at java.net.ServerSocket.implAccept(ServerSocket.java:450) at java.net.ServerSocket.accept(ServerSocket.java:421) at org.netbeans.CLIHandler$Server.run(CLIHandler.java:1010) "Active Reference Queue Daemon" daemon prio=1 tid=0x082b5858 nid=0xd in Object.wait() [0xc97ff000..0xc97ffc38] at java.lang.Object.wait(Native Method) - waiting on <0xcef7b530> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116) - locked <0xcef7b530> (a java.lang.ref.ReferenceQueue$Lock) at org.openide.util.Utilities$ActiveQueue.run(Utilities.java:3068) at java.lang.Thread.run(Thread.java:595) "Low Memory Detector" daemon prio=10 tid=0x08182650 nid=0xb runnable [0x00000000..0x00000000] "CompilerThread1" daemon prio=10 tid=0x08181510 nid=0xa waiting on condition [0x00000000..0xf7fbb148] "CompilerThread0" daemon prio=10 tid=0x08180610 nid=0x9 waiting on condition [0x00000000..0xf7ffcdc8] "AdapterThread" daemon prio=10 tid=0x0817ed08 nid=0x8 waiting on condition [0x00000000..0x00000000] "Signal Dispatcher" daemon prio=10 tid=0x0817dbd8 nid=0x7 waiting on condition [0x00000000..0x00000000] "JDWP Event Helper Thread" daemon prio=10 tid=0x0817cb90 nid=0x6 runnable [0x00000000..0x00000000] "JDWP Transport Listener: dt_socket" daemon prio=10 tid=0x08176300 nid=0x5 runnable [0x00000000..0x00000000] "Finalizer" daemon prio=10 tid=0x08169590 nid=0x4 in Object.wait() [0xcafff000..0xcafffcb8] at java.lang.Object.wait(Native Method) - waiting on <0xcef7b6d8> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116) - locked <0xcef7b6d8> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132) at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159) "Reference Handler" daemon prio=10 tid=0x081690a0 nid=0x3 in Object.wait() [0xcb3ff000..0xcb3ffd38] at java.lang.Object.wait(Native Method) - waiting on <0xcef7b318> (a java.lang.ref.Reference$Lock) at java.lang.Object.wait(Object.java:474) at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116) - locked <0xcef7b318> (a java.lang.ref.Reference$Lock)
Created attachment 69677 [details] screenshot after 20 sec after opened IDE
Created attachment 69678 [details] threads dump during this activity (no C++ activity at all)
Perfect, I've been waiting for information about this problem for releases! Please, reproduce with logging enabled: -J-Dorg.netbeans.modules.project.ui.level=100 attach the log file and reopen, please.
Jarda, what do you mean by closing with state "resolved/works-for-me"?
Created attachment 70073 [details] log
Created attachment 70074 [details] picture
rest part of log (after lost focus, capture picture and about 60 seconds): ------------------------------- FINE [org.netbeans.modules.project.ui.OpenProjectList]: LoadOpenProjects.run: 0 FINE [org.netbeans.modules.project.ui.OpenProjectList]: LoadOpenProjects.run: 1 FINER [org.netbeans.modules.project.ui.OpenProjectList]: loadOnBackground [MakeProject[/home/as204739/NetBeansProjects/clucene-0.9.10_6]] FINER [org.netbeans.modules.project.ui.OpenProjectList]: after remove [] FINE [org.netbeans.modules.project.ui.OpenProjectList]: about to open a project MakeProject[/home/as204739/NetBeansProjects/clucene-0.9.10_6] FINE [org.netbeans.modules.project.ui.OpenProjectList]: notify opened MakeProject[/home/as204739/NetBeansProjects/clucene-0.9.10_6] FINER [org.netbeans.modules.project.ui.OpenProjectList]: replacing for org.netbeans.modules.project.ui.ProjectsRootNode$BadgingNode@393e80[Name=file:/home/as204739/NetBeansProjects/clucene-0.9.10_6/, displayName=clucene-0.9.10_6] FINER [org.netbeans.modules.project.ui.OpenProjectList]: logical view org.netbeans.modules.cnd.makeproject.ui.MakeLogicalViewProvider$MakeLogicalViewRootNode@13dd04a[Name=clucene-0.9.10_6, displayName=clucene-0.9.10_6] FINER [org.netbeans.modules.project.ui.OpenProjectList]: change original: org.netbeans.modules.cnd.makeproject.ui.MakeLogicalViewProvider$MakeLogicalViewRootNode@13dd04a[Name=clucene-0.9.10_6, displayName=clucene-0.9.10_6] FINER [org.netbeans.modules.project.ui.OpenProjectList]: is search info ProxyLookup(class=class org.netbeans.modules.project.ui.ProjectsRootNode$BadgingLookup)->[org.openide.util.lookup.SingletonLookup@59578d, org.openide.util.lookup.SingletonLookup@182f364] FINER [org.netbeans.modules.project.ui.OpenProjectList]: done org.netbeans.modules.project.ui.ProjectsRootNode$BadgingNode@393e80[Name=clucene-0.9.10_6, displayName=clucene-0.9.10_6] FINER [org.netbeans.modules.project.ui.OpenProjectList]: replacing for org.netbeans.modules.project.ui.ProjectsRootNode$BadgingNode@59a331[Name=clucene-0.9.10_6, displayName=clucene-0.9.10_6] FINER [org.netbeans.modules.project.ui.OpenProjectList]: physical view [org.netbeans.modules.project.ui.PhysicalView$GroupNode@18d9278[Name=clucene-0.9.10_6, displayName=clucene-0.9.10_6], org.netbeans.modules.project.ui.PhysicalView$GroupNode@18b21cc[Name=/export/home/as204739/Projects/sfbay/clucene-0.9.10, displayName=clucene-0.9.10_6 - /export/home/as204739/Projects/sfbay/clucene-0.9.10]] FINER [org.netbeans.modules.project.ui.OpenProjectList]: refreshing for MakeProject[/home/as204739/NetBeansProjects/clucene-0.9.10_6] FINER [org.netbeans.modules.project.ui.OpenProjectList]: refreshed for MakeProject[/home/as204739/NetBeansProjects/clucene-0.9.10_6] FINE [org.netbeans.modules.project.ui.OpenProjectList]: property change notified MakeProject[/home/as204739/NetBeansProjects/clucene-0.9.10_6] FINER [org.netbeans.modules.project.ui.OpenProjectList]: updateGlobalState FINER [org.netbeans.modules.project.ui.OpenProjectList]: updateGlobalState, applied FINER [org.netbeans.modules.project.ui.actions.ActiveConfigAction]: activeProjectChanged: null -> null FINER [org.netbeans.modules.project.ui.OpenProjectList]: updateGlobalState, done, notified Project clucene-0.9.10_6: instantiating... Project /usr/sfw/include/c++/3.4.3: instantiating... Project clucene-0.9.10_6: loaded. 101 ms Project /usr/sfw/include/c++/3.4.3: loaded. 280 ms Consistency check took 58 ms Consistency check took 337 ms ClassesV: projectOpened() /usr/sfw/include/c++/3.4.3 org.netbeans.modules.cnd.modelimpl.csm.core.LibProjectImpl @19982100 ClassesV: projectOpened() clucene-0.9.10_6 org.netbeans.modules.cnd.modelimpl.csm.core.ProjectImpl @31725929 ClassesV: setupRootContext() org.netbeans.modules.cnd.classview.RootNode@cb531c[Name=, displayName=] ClassesV: setupRootContext() org.netbeans.modules.cnd.classview.RootNode@bd9138[Name=, displayName=] Project /usr/sfw/lib/gcc/i386-pc-solaris2.10/3.4.3/include: instantiating... ClassesP: addNotify() Project /usr/include: instantiating... Project /usr/sfw/lib/gcc/i386-pc-solaris2.10/3.4.3/include: loaded. 7 ms Consistency check took 15 ms ClassesV: projectOpened() /usr/sfw/lib/gcc/i386-pc-solaris2.10/3.4.3/include org.netbeans.modules.cnd.modelimpl.csm.core.LibProjectImpl @8001248 Project /usr/include: loaded. 22 ms Consistency check took 5 ms ClassesV: projectOpened() /usr/include org.netbeans.modules.cnd.modelimpl.csm.core.LibProjectImpl @24375103 Getting files from project system for clucene-0.9.10_6... Getting files from project system took 3 ms for clucene-0.9.10_6 FILES COUNT for clucene-0.9.10_6: Source files: 117 Header files: 114 Total files: 231 Waited on disposeLock: 0 ms for clucene-0.9.10_6 FILLING PARSER QUEUE took 286 ms for clucene-0.9.10_6
Sorry for cnd messages.
1. After seeing the screenshot, I guess I have to admit that there is a bug. However the log shows nothing wrong in projectui module. I've added more logging to analyse what is wrong: ef105c57cce2 2. I cannot reproduce the problem. My steps include creating a C/C++ Welcome project, shutdown, restart and nothing wrong happens. Please provide clear steps to reproduce. 3. My guess is that there is something wrong in FilterNode.changeOriginal, as such I am CCing Tomáš. Please generate new log with ef105c57cce2 change included and reopen.
Integrated into 'main-golden', will be available in build *200809221401* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main/rev/ef105c57cce2 User: Jaroslav Tulach <jtulach@netbeans.org> Log: #146260: More logging to track what is wrong with Initialize project...
Created attachment 70409 [details] another trace
Bug still reproduced. I add special comment in the log that separate wrong "Initializing..." state and state after "magic" user actions. see line number 803. About "works for me". May multi core computer is key for bug reproducing? Add flag -Dcnd.modelimpl.parser.threads=4 to emulate multi core computer (at least on cnd side).
Following log shows that the filternode representing the project gets updated. The update however is not visible in the explorer. Either the bug is in nodes or in explorer. Tomáši, can you suggest some logging switches to turn on to get more info? FINER [org.netbeans.modules.project.ui.OpenProjectList]: logical view org.netbeans.modules.cnd.makeproject.ui.MakeLogicalViewProvider$MakeLogicalViewRootNode@a66d4[Name=clucene-0.9.10_6, displayName=clucene-0.9.10_6] FINER [org.netbeans.modules.project.ui.OpenProjectList]: change original: org.netbeans.modules.cnd.makeproject.ui.MakeLogicalViewProvider$MakeLogicalViewRootNode@a66d4[Name=clucene-0.9.10_6, displayName=clucene-0.9.10_6] FINER [org.netbeans.modules.project.ui.OpenProjectList]: children before change original: org.openide.nodes.FilterNode$Children@1c71452 FINER [org.netbeans.modules.project.ui.OpenProjectList]: delegate children before change original: org.netbeans.modules.project.ui.LazyProject$ProjCh@137d9c8 FINER [org.netbeans.modules.project.ui.OpenProjectList]: delegate after change original: org.netbeans.modules.cnd.makeproject.ui.MakeLogicalViewProvider$MakeLogicalViewRootNode@a66d4[Name=clucene-0.9.10_6, displayName=clucene-0.9.10_6] FINER [org.netbeans.modules.project.ui.OpenProjectList]: name after change original: clucene-0.9.10_6 FINER [org.netbeans.modules.project.ui.OpenProjectList]: children after change original: org.openide.nodes.FilterNode$Children@1c71452 FINER [org.netbeans.modules.project.ui.OpenProjectList]: delegate children after change original: org.netbeans.modules.cnd.makeproject.ui.MakeLogicalViewProvider$LogicalViewChildren@1ecaa1f
Hopefully fixed by 4c9f1ec424c8, please verify.
Not fixed, still reproduced. Note: bug do not reproduced if tasklist view is opened at start IDE.
I was not able to reproduce. I have added some logging in 2c9472137fd4. Please generate new log (-J-Dorg.openide.nodes.level=100)
Created attachment 71025 [details] infinite init...
Created attachment 71027 [details] project appeared after magic actions (focus lost, gain,...)
Attached logs show that in time when "Initializing..." is displayed no one tried to call mentioned changeOriginal() to change "LazyProject node" to "project view node". This happens after "focus magic actions". So it seems to me that problem is not in Nodes/Explorer.
I am lost, drowning and as such I seek hopeless hope: The last snapshot http://www.netbeans.org/nonav/issues/showattachment.cgi/71027/infinite_init2.txt actually shows that things are OK, does it not? It may take a while, but at the end, things are OK. Right? I'd attribute this to the background project loading not being started when it should. The loading starts as soon as messages: FINE [org.netbeans.modules.project.ui.OpenProjectList]: LoadOpenProjects.run: 0 FINE [org.netbeans.modules.project.ui.OpenProjectList]: LoadOpenProjects.run: 1 FINER [org.netbeans.modules.project.ui.OpenProjectList]: loadOnBackground appear in the log. As (obviously) I am not able to simulate the problem, I'd like to ask you for a favor. Please run the tests once again and measure the time (estimate is OK) how long it takes before the "project load" starts since the main window is shown and also how much time it takes before the "project loading" finishes. I am CCing Dafe, as in case the delay between mainwindow being shown and "project load" being started is bigger than 10s, or needs some "magic actions", I'll reassign the bug to him. Thanks in advance for the additional measurements and reopen the bug then.
Last attachment show log after "magic" actions. See previous attachment.
I do not understand what time I should measure. My test project is small (230 files). Normal time of opening is less then 1 second. But in 90% cases I see only infinite initializing project... If IDE loses focus and gains it again the project is loaded without any delay (in 50% cases). Exist 100% work around: minimize IDE and restore IDE. Or open todo task view. (May you cannot reproduce bug because you have opened todo task view). Note: bug repeated not only my computer.
If I understand Alex correctly. This log is from launching NetBeans: http://www.netbeans.org/nonav/issues/showattachment.cgi/71025/infinite_init.txt The whole starts, shows main window, but it does not call invokeWhenUIReady hooks. Only after "magic actions" they are called: http://www.netbeans.org/nonav/issues/showattachment.cgi/71027/infinite_init2.txt I based this evaluation on the knowledge that "FINE [org.netbeans.modules.project.ui.OpenProjectList]: LoadOpenProjects.run: 0" is inside a runnable posted into invokeWhenUIReady method. Dafe, it seems that after the recent fix with deferring invokeWhenUIReady, it may sometimes be deferred too much. Probably put there a ~10s timeout since the main window is shown to process all waiting "UIReady" runnables.
OK, I implemented possible workaround/fix as suggested: #85a4ffa434a5 Alex and Ivan, we need some log output from you to confirm our hypothesis and the fix. After my fix will propagate into the build (you' see automatic integration comment from user "qa"), please run netbeans build with following logging arguments: -J-Dorg.netbeans.core.windows.view.ui.MainWindow.level=0 -J-Dorg.netbeans.core.windows.WindowManagerImpl.level=0 -J-Dorg.netbeans.log.startup.level=0 and please tell us: 1) Can you reproduce the bug now? 2) Attach part of messages.log from org.netbeans.core.windows.view.ui.MainWindow, org.netbeans.core.windows.WindowManagerImpl, org.netbeans.log.startup - you should see something similar like follows: FINE [org.netbeans.core.windows.view.ui.MainWindow]: Paint method of main window invoked normally. FINE [org.netbeans.log.startup]: start FINE [org.netbeans.log.startup]: end FINE [org.netbeans.log.startup]: start FINE [org.netbeans.log.startup]: end FINE [org.netbeans.log.startup]: start FINE [org.netbeans.log.startup]: end FINE [org.netbeans.log.startup]: start FINE [org.netbeans.log.startup]: end FINE [org.netbeans.log.startup]: start FINE [org.netbeans.log.startup]: end FINE [org.netbeans.log.startup]: start FINE [org.netbeans.log.startup]: end FINE [org.netbeans.log.startup]: start FINE [org.netbeans.log.startup]: end FINE [org.netbeans.log.startup]: start FINE [org.netbeans.log.startup]: end FINE [org.netbeans.log.startup]: start FINE [org.netbeans.log.startup]: end FINE [org.netbeans.log.startup]: start FINE [org.netbeans.log.startup]: end FINE [org.netbeans.log.startup]: start FINE [org.netbeans.log.startup]: end
Integrated into 'main-golden', will be available in build *200810070201* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main/rev/85a4ffa434a5 User: Dafe Simonek <dsimonek@netbeans.org> Log: #146260: Added "painted" timer to assure run of exclusives when UI is ready under all circumstances, even when MainWindow.paint hook doesn't work
Fix works. In log I have only one message: INE [org.netbeans.core.windows.WindowManagerImpl]: Painted timer action invoked, which probably means that MainWindow.paint was not called!
Wow, so our hypothesis was right - MainWindow.paint is really not called on your system during startup...any idea how could this happen while main window is painted correctly? It seems that we are touching some dark corners of Swing here which I don't understand. Anyway fix works, so let's be happy now and leave it as it is. Maybe I'll try to inspect this more in the future.
Bug was reproduced on 4-core computers only in our team. So I have a guess that it is a key of problem.
wow
my second note is: we all have 2 monitors and X system works in TwinView
Alex P. says: "the Frame's content can be painted by frame.getRootPane().paint() for example"
v