Product Version = NetBeans IDE Dev (Build 201005241008)
Operating System = Linux version 2.6.32-22-generic running on i386
Java; VM; Vendor = 1.6.0_20
Runtime = Java HotSpot(TM) Client VM 16.3-b01
Every few seconds, keystrokes, and whenever I pull up the code completion hints dialogs, the IDE is pausing for about 5 seconds to create a "snapshot" during which, the IDE is completely non-responsive.
There is no specific test-case to upload, but the output is showing a large number of "too much time..." messages.
IMO, as long as the IDE is making these snapshots as frequently as it is, and apparently in the foreground, the IDE is unusable.
Created attachment 99458 [details]
While making a snapshot of the system (using the built-in profiler), the system saved a snapshot
a) When I started the profiler
b) When I attempted a code-completion lookup
c) When I saved the profiler
This was a grand total of 20 keystrokes and 4 mouse clicks. The time it took to perform this was approximately 5 minutes.
At the conclusion of item "c" above, the snapshot was not generated or opened immediately (Issue #186691).
Created attachment 99459 [details]
Snapshot of performance
After stopping the profiler, it took approximately 5 minutes of the IDE sitting idle before the snapshot was displayed.
I faced similar/possibly related problems - bug 185688 and bug 185847.
Reporter, could you please check the same scenario in NB 6.9 RC1 ? If you are able to reproduce it there, we need to fix it for 6.9 as well.
It looks like the IDE got into some loop - after detecting first slowness it slows down itself further by processing the sampling and creating snapshot which influences next operation that is detected as slow, again running slow snapshot creation etc.
Also there are situations when the snapshot creation takes disproportionately long time, or after long "Saving snapshot" there is nothing shown (no "Slowness Detected" appears). I've seen that too.
It is also strange the system is automatically saving snapshots when running under self-profiling started manually. I thought multiple parallel self-profiling were disabled.
Anyway, this is happening in dev builds, release builds (from RC1) should not be affected.
Are we still seeing this in the recent Dev builds?
I have not seen this particular problem for a while, though there may still be some other problems related to self-profiling snapshots.
No complaints about this lately - closing as fixed.
Reopening. I just experience this horrible problem while using Netbeans 7.3. Constant saving of snapshot loops with snapshot taking 20-40seconds each and the IDE being virtually unusable while snapshots are being taken. Please, either remove this feature or allow some easy mechanism for turning it off.
Please file a new issue. Please, provide steps how to reproduce it and attach messages.log. Several thread dump while the ide is not responsive would be useful too. Thanks.
Please, either remove this feature or allow some easy mechanism for turning it off.
Product Version: NetBeans IDE 8.0 Beta (Build 201401141042)
Java: 1.7.0_45; OpenJDK 64-Bit Server VM 24.45-b08
Runtime: OpenJDK Runtime Environment 1.7.0_45-b18
Please provide a way to cancel the "Saving Snaphot" task. It makes no sense that taking a snapshot degrades performance in addition when slowness has already been detected.
Slowness detector is important part of infrastructure, which allows us to fix the performance problems in NetBeans. So if you see that IDE detects slowness, it is important to report it so we can fix it. If you already reported those slownesses, please provide the exception report numbers of your slownesses, so we can check them.
In case you are annoyed by the "slowness detector" you may disable it by providing additional properties when launching NetBeans. For example to report only blockages higher than 10s use:
You can also increase the time when the sampling starts:
Since 6.9 development time there is also slowness detector on code completion. If it takes more than 2s to provide results, it starts self profiling and allows you to complain. You can adjust the time by specifying: