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.
[ BUILD # : 201003290201 ] [ JDK VERSION : 1.6.* ] This task runs very often is also a very heavy task. That means, that the IDE isn´t usable while this task runs. Is there any option to log the reason for running this task?
Changeset: http://hg.netbeans.org/core-main/rev/7c5f5b8074fe
The task is started because you switched to the IDE. You can cancel it, if you want. How long does the check take? A minute?
(In reply to comment #2) > The task is started because you switched to the IDE. You can cancel it, if you > want. The task also starts sometimes when I switch inside of NetBeans. > How long does the check take? A minute? Sometimes some seconds, otherwise some minutes. Can you make a Log-Message, with the following details: -) reason for starting -) duration
I'll suspend the refresh when other I/O activity is detected.
core-main#8939454932dc
Integrated into 'main-golden', will be available in build *201004030201* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main/rev/8939454932dc User: Jaroslav Tulach <jtulach@netbeans.org> Log: #183059: Checking for external changes is now lightweight. The masterfs tries to measure disk I/O activity and performs the refresh only, if the activity is low. The activity is the # of disk touches in last 100ms, half of the # of disk touches in previous 100ms, and so on. There is a method idleIO(int, Runnable) which is excluded from the I/O statistics, but which is slowed down if the I/O load is higher than expected.
Created attachment 96879 [details] Scanning projects and checking for external changes runs together. So I don´t think, that the always works.
Created attachment 96880 [details] Logfile
Created attachment 96898 [details] Please have a look at the Logfile. I think the "Checking for external changes" runs to often.
Created attachment 96899 [details] A Snapshot while the lastest hours.
I´ve changed to reopened, because the main problem isn´t fixed.
I want to understand what is the "main problem". The issue mentioned few times that the check "heavy". I believe I made it "lightweight". The question is how we will measure that. My idea is to compare the up-to-date check of 6.8 with current version, I believe that the "checking for external" changes will not influence the parsing. If not, reopen, otherwise, I suggest to leave as fixed. Saying that the check runs too often, is something completely else. Unrelated to being "heavy".
I think you have ignored my uploaded attachments. -) http://netbeans.org/bugzilla/attachment.cgi?id=96879: >The masterfs tries to measure disk I/O activity and performs > the refresh only, if the activity is low. When Scanning projects is running, there´s always much I/O. -) http://netbeans.org/bugzilla/attachment.cgi?id=96898: I don´t know which task, this is in the Snapshot, but I´m sure there are many invocations. And so I´m back at my third comment (In reply to comment #3) > Can you make a Log-Message, with the following details: > -) reason for starting > -) duration But I think, the reason for starting is more interested.
Hello Stefan, the parsing API experts will examine your logs today. If they find something suspicious they create new bugs. Meanwhile I'd be interested in knowing whether the initial up-to-date check is now on par with 6.8. If so, then my change 8939454932dc achieved its goal and made the "check for external changes" really lightweight. Could you compare your 6.8 and trunk IDEs and measure how long it takes for them to finish the initial up-to-date check?
I can´t make the Snapshot now, because I get always an OutOfMemoryError (Bug #183847). I´ll test this in the next days.
Bug 183847 is now fixed, so it should be possible to verify the fix.
Current state: -) OutOfMemoryError is still alive (-> 183888). -) Check for external ... runs very often and also while other tasks are running (examples: while Scanning Projects and while a CVS-Diff on a folder with many files) So again: Please make a log-message: -) Starting: Checking for external changes startet at yyyy-MM-dd HH:mm:ssss, Reason: XXXX -) Ending: Checking for external changes finished at yyyy-MM-dd HH:mm:ssss, duration= XXX seconds
-J-Dorg.netbeans.core.ui.focus.level=FINE as soon as bug 184219 propagates to trunk. But remember this bug is about "Check for external changes" and so is the log. I am still interested in knowing the after start comparition between 6.8 scanning/up-to-date check time and 6.9 scanning/up-to-date check time.
Created attachment 97700 [details] Log-File (In reply to comment #18) > I am still interested in knowing the after start comparition between 6.8 > scanning/up-to-date check time and 6.9 scanning/up-to-date check time. Me too, but the OutOfMemoryError is still alive (-> #183888). Today I made a test (duration was 2h 40min): Statistic of this time: -) 78 x "Window deactivated, preparing refresh task" -) 78 x Refresh done in XXX ms MIN=28390 ms MAX=282859 ms SUM=3422029 ms -> 57 min -) 78 x SystemFileSystem refresh done XXX ms MIN=454 ms MAX=2438 ms SUM=52128 ms -> 52 seconds Conclusion: 35% of the time the "Checking for external changes" - task is running.