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 233560 - org.openide.filesystems.FileObject.toURL: LowPerformance took 4092 ms.
Summary: org.openide.filesystems.FileObject.toURL: LowPerformance took 4092 ms.
Status: RESOLVED FIXED
Alias: None
Product: editor
Classification: Unclassified
Component: Hints & Annotations (show other bugs)
Version: 7.4
Hardware: All All
: P3 normal (vote)
Assignee: Jan Lahoda
URL:
Keywords: PERFORMANCE
Depends on:
Blocks:
 
Reported: 2013-07-28 19:52 UTC by MackSix
Modified: 2013-08-17 02:21 UTC (History)
3 users (show)

See Also:
Issue Type: DEFECT
Exception Reporter: 194295


Attachments
nps snapshot (32.83 KB, application/nps)
2013-07-28 19:52 UTC, MackSix
Details
screenshot (73.91 KB, image/png)
2013-08-15 20:35 UTC, Stanislav Aubrecht
Details

Note You need to log in before you can comment on or make changes to this bug.
Description MackSix 2013-07-28 19:52:11 UTC
Build: NetBeans IDE Dev (Build 201307262300)
VM: Java HotSpot(TM) 64-Bit Server VM, 23.25-b01, Java(TM) SE Runtime Environment, 1.7.0_25-b16
OS: Windows 7

User Comments:
GUEST: invoking code completion in php Trait

GUEST: autocomplite

MackSix: Running Source>>Inspect--Windows 8 profile conformance.

GUEST: I were typing this code:

$seats[$i] = array($i + 1);

When below line were ready suggestions popup appeared with slowdown
$seats[$i] = array(



Maximum slowness yet reported was 6850 ms, average is 4336
Comment 1 MackSix 2013-07-28 19:52:13 UTC
Created attachment 137914 [details]
nps snapshot
Comment 2 Jaroslav Havlin 2013-08-15 14:14:28 UTC
The latest report (683492) contains info about a slowness caused by class o.n.m.analysis.RunAnalysis.

(Older reports are related to PHP code completion. They seem to be already fixed, as they come from NetBeans 7.3 beta 2 or older.)

Reassigning to editor/Hints & Annotations. Please evaluate, thank you.
Comment 3 Jan Lahoda 2013-08-15 14:26:33 UTC
(I investigated only the attached report, as that was the reason this was reassigned into the editor.)

Sorry, but all I see in editor.hints is a call to Dialog.setVisible, which takes 3980ms wall-clock time. As the Swing client are required to call Swing methods from AWT Event Dispatch Thread, I cannot replan this call. So, its this call that will need to be made faster. Ultimately, all the time (according the profiler snapshot) is spent in org.netbeans.core.windows.services.NbPresenter.run, which takes 3980ms of the wall-clock time.
Comment 4 Stanislav Aubrecht 2013-08-15 14:35:04 UTC
There is analysis.ui.NextError.actionPerformed() which waits for AsynchChildren.getNodes() to finish in EDT, that doesn't seem right.

Please evaluate (or reassign to analysis.ui owner), thanks.
Comment 5 Jan Lahoda 2013-08-15 18:21:01 UTC
Standa, could you please help me understand where NextError.actionPerformed() is called in the profiler snapshot #683492 (which is the one refered by both Jarda and me)? I see 3980ms wall-clock time are spent in AWT thread there, out of which 3980ms are spent in org.netbeans.core.windows.services.NbPresenter.run.

I can see some nodes work being done in the snapshot, but that appears to run in a request processor, which should be fine, I hope.

Or were you by any chance refering to another snapshot, accidentally forgetting to mention that? If so, I guess #683492 should be filled separately (I can do that, no problem).

Anyway, I am going to fix the problem in NextError.
Comment 6 Stanislav Aubrecht 2013-08-15 20:35:52 UTC
Created attachment 138761 [details]
screenshot

I hope I'm not reading the snapshot wrong but that's what I get when I open that snapshot in NetBeans and expand AWT-EventQueue-0 node.
Comment 7 Jan Lahoda 2013-08-15 21:00:20 UTC
(In reply to Stanislav Aubrecht from comment #6)
> Created attachment 138761 [details]
> screenshot
> 
> I hope I'm not reading the snapshot wrong but that's what I get when I open
> that snapshot in NetBeans and expand AWT-EventQueue-0 node.

Hm, sorry - when I had it opened before, it appeared there is nothing under NbPresenter.run - but after re-opening the snapshot, I see there is. My apologies for this, and thanks for pointing this out.

Fixed:
http://hg.netbeans.org/jet-main/rev/646e7751e47d
Comment 8 Quality Engineering 2013-08-17 02:21:45 UTC
Integrated into 'main-silver', will be available in build *201308162300* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)

Changeset: http://hg.netbeans.org/main-silver/rev/646e7751e47d
User: Jan Lahoda <jlahoda@netbeans.org>
Log: #214744&#233560: computing next/previous nodes asynchronously