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 44732 - "Scanning Structure of Projects" never finishes
Summary: "Scanning Structure of Projects" never finishes
Status: RESOLVED FIXED
Alias: None
Product: java
Classification: Unclassified
Component: Unsupported (show other bugs)
Version: 4.x
Hardware: PC Linux
: P1 blocker (vote)
Assignee: Martin Matula
URL:
Keywords: PERFORMANCE, RANDOM, T9Y
: 44621 44640 44906 45420 (view as bug list)
Depends on:
Blocks:
 
Reported: 2004-06-10 22:48 UTC by _ ttran
Modified: 2007-09-26 09:14 UTC (History)
4 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 _ ttran 2004-06-10 22:48:45 UTC
[built from 2004-06-10 CVS, Linux, Tiger b55]

I had a few projects open when I shut down the IDE
last time.  Just updated the new sources from CVS,
rebuilt the IDE, run it with the same userdir.

The blocking dialog "Scanning Structure of
Projects"  is there forever.  This is not a
deadlock, GUI is being painted but the dialog
never gets a signal to go away.
Comment 1 _ ttran 2004-06-10 22:55:32 UTC
killed the IDE, switched to JDK 1.4.2_04.  rt.jar was reparsed. 
Progress bar went to 100% in the "Scanning dialog..." but then the
dialog stays there.

Now I am going to kill the IDE again and delete mdrstorage...
Comment 2 _ ttran 2004-06-10 23:01:43 UTC
it helped, the dialog went away, then I click on an editor tab and
immediately got NPE

java.lang.NullPointerException
	at org.netbeans.modules.javacore.JMManager.getRootURI(JMManager.java:706)
	at
org.netbeans.modules.javacore.JMManager.resolveCodebase(JMManager.java:670)
	at
org.netbeans.modules.javacore.JMManager.resolveCPRoot(JMManager.java:630)
	at
org.netbeans.modules.javacore.JMManager.getResource(JMManager.java:270)
	at
org.netbeans.modules.javacore.RepositoryUpdater.run(RepositoryUpdater.java:131)
	at org.openide.util.Task.run(Task.java:136)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:330)
[catch] at
org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:686)
Comment 3 _ ttran 2004-06-10 23:10:34 UTC
restarted the IDE again, now the IDE seems to work
Comment 4 Martin Matula 2004-06-16 00:49:48 UTC
*** Issue 44906 has been marked as a duplicate of this issue. ***
Comment 5 Martin Matula 2004-06-16 20:12:45 UTC
*** Issue 44621 has been marked as a duplicate of this issue. ***
Comment 6 Martin Matula 2004-06-16 20:14:06 UTC
*** Issue 44640 has been marked as a duplicate of this issue. ***
Comment 7 Martin Matula 2004-06-19 16:26:27 UTC
This is not reliably reproducible, if it occurs it does no harm and a
simple workaround exists (restart the IDE). So I am changing the
priority to P2.
Comment 8 Tomas Hurka 2004-06-22 08:41:00 UTC
Moved to new subcomponent java/javacore.
Comment 9 Antonin Nebuzelsky 2004-06-22 13:20:37 UTC
Happened to me too. Pretty annoying.
Comment 10 Jan Chalupa 2004-06-23 09:44:31 UTC
Occurs randomly, but pretty frequently. I heard from several QA folks
who experienced this. Also see issue #45055.

I don't consider restarting of the IDE a viable workaround. Moreover,
this blocks execution of automated tests. ->P1
Comment 11 Martin Matula 2004-06-23 10:53:53 UTC
*** Issue 45420 has been marked as a duplicate of this issue. ***
Comment 12 Jan Lahoda 2004-06-24 15:02:21 UTC
I have added a few debugs and found the following. It seems to me that
at least part of this problem can be seen in method
org.netbeans.modules.javacore.JMManager.startResolution (and
startRescan probably too, although not verified). This method (with
added debugs) reads like this:
    void startResolution() {
        System.err.println("startResolution 1");
        RESOLVE_POSTER.post(new Runnable () {
            public void run() {
                System.err.println("startResolution 2");
                try {
                    resolveCodebases();
                } catch (Throwable e) {
                    ErrorManager.getDefault().notify(e);
                }
                System.err.println("startResolution 3");
            }
        });
        System.err.println("startResolution 4");
    }

When the scanning dies, the debugs "startResolution 1" and
"startResolution 4" are shown, but "startResolution 2" (and so
"startResolution 3") is not. Therefore the updating thread is never
started.
Comment 13 Martin Matula 2004-06-24 15:27:24 UTC
Thanks for this info! It was very helpful. I have identified the bug
and I am working on a fix.
Comment 14 Martin Matula 2004-06-24 15:44:59 UTC
Fixed.

Checking in src/org/netbeans/modules/javacore/JMManager.java;
/cvs/java/javacore/src/org/netbeans/modules/javacore/JMManager.java,v
 <--  JMManager.java
new revision: 1.17; previous revision: 1.16
done
Checking in src/org/netbeans/modules/javacore/ProgressPanel.java;
/cvs/java/javacore/src/org/netbeans/modules/javacore/ProgressPanel.java,v
 <--  ProgressPanel.java
new revision: 1.6; previous revision: 1.5
done
Comment 15 Quality Engineering 2007-09-20 10:00:54 UTC
Reorganization of java component