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 148994 - cdfs for all classes from uml.drawingarea module freeze ide for a long time
Summary: cdfs for all classes from uml.drawingarea module freeze ide for a long time
Status: RESOLVED FIXED
Alias: None
Product: uml
Classification: Unclassified
Component: General Diagram (show other bugs)
Version: 6.x
Hardware: All All
: P2 blocker (vote)
Assignee: Viktor Lapitski
URL:
Keywords: REGRESSION
Depends on:
Blocks:
 
Reported: 2008-10-02 18:16 UTC by Sergey Petrov
Modified: 2008-10-13 23:57 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
typical threaddump (15.22 KB, text/plain)
2008-10-08 19:39 UTC, George Vasick
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Sergey Petrov 2008-10-02 18:16:24 UTC
cdfs for all classes from uml.drawingarea module with creation of class diagram freeze ide for a long time. I waited for
15 minutes and close ide with task manager.
in 6.5 diagram was completed in 2-4 minutes and it was possible to wok with ide and diagram.
Comment 1 Sergey Petrov 2008-10-02 18:19:25 UTC
need to be evaluated as at east p2 first s a regression and a big problem with performance.
Comment 2 George Vasick 2008-10-08 19:35:48 UTC
It took about 7:30 to created the diagram for me.  I took several threaddumps during the process.  It was always here:

"AWT-EventQueue-1" prio=6 tid=0x05716400 nid=0x1694 runnable [0x2fd7e000..0x2fd7fc68]
   java.lang.Thread.State: RUNNABLE
	at sun.dc.pr.PathDasher.appendLine(Native Method)
	at sun.java2d.pipe.DuctusRenderer.feedConsumer(DuctusRenderer.java:270)
	at sun.java2d.pipe.LoopPipe.getStrokeSpans(LoopPipe.java:224)
	at sun.java2d.pipe.LoopPipe.draw(LoopPipe.java:179)
	at sun.java2d.pipe.ValidatePipe.draw(ValidatePipe.java:136)
	at sun.java2d.SunGraphics2D.draw(SunGraphics2D.java:2345)
	at org.netbeans.api.visual.widget.ConnectionWidget.paintWidget(ConnectionWidget.java:875)
	at org.netbeans.api.visual.widget.Widget.paint(Widget.java:1419)

Full threaddump attached.
Comment 3 George Vasick 2008-10-08 19:39:04 UTC
Created attachment 71401 [details]
typical threaddump
Comment 4 Sergey Petrov 2008-10-08 20:00:05 UTC
7:30 isn't so bad, may be I tried it with opened navigator. but in 6.1 it was faster anyway.
Comment 5 Viktor Lapitski 2008-10-08 20:00:31 UTC
according to the thread dump as well as my experiments on the build 
with implemented workaround for jdk bug 6755974, this issue looks like a duplicate of IZ 101417
Comment 6 Viktor Lapitski 2008-10-08 20:02:55 UTC
on my build with above mentioned fix it was about 1:30. 
A repaint when scrolling took about 0.3 sec.
Comment 7 George Vasick 2008-10-08 20:32:15 UTC
Cool!  Is the fix in UML code or visual library code?
Comment 8 Viktor Lapitski 2008-10-09 00:28:34 UTC
the fix-workaround for 6755974 is so far i have as an UMLEdgeWidget's override 
of Visual Library's ConnectionWidget.paint() . Potentially it can be done in Visual Library.
The only issue i see is possible theoretical regressions, if any, in other Visual Library 
clients that late in the game.
Comment 9 Sergey Petrov 2008-10-09 18:45:59 UTC
I tried some steps to resolve too, like remove animation and add clipping. it take less time to create diagram, but our
hierarchical layout throw almost all elements out of scene bounds. with less elements on the scene really long edges in
my case still produce some visible scrolling delays.