Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 324884

Summary: WSDL Editor causing Eclipse to stop responding [3.2.2]
Product: [WebTools] WTP Webservices Reporter: Shane Clarke <shane_clarke>
Component: wst.wsdlAssignee: Keith Chong <keith.chong.ca>
Status: RESOLVED FIXED QA Contact: Keith Chong <keith.chong.ca>
Severity: blocker    
Priority: P3 CC: ahunter.eclipse, david_williams, kaloyan
Version: 3.2.2Flags: keith.chong.ca: pmc_approved?
keith.chong.ca: pmc_approved? (raghunathan.srinivasan)
keith.chong.ca: pmc_approved? (naci.dai)
deboer: pmc_approved+
keith.chong.ca: pmc_approved? (neil.hauge)
kaloyan: pmc_approved+
Target Milestone: 3.2.2   
Hardware: PC   
OS: Windows Vista   
Whiteboard: PMC_approved
Attachments:
Description Flags
Full Thread Dump with Stacktrace
none
wsdl file
none
schema
none
Workaround - Apply to wst.wsdl.ui none

Description Shane Clarke CLA 2010-09-09 14:31:12 EDT
While smoke testing the latest http://build.eclipse.org/webtools/committers/wtp-R3.2.2-M/20100909052601/M-3.2.2-20100909052601/ build i noticed that opening the wsdl editor caused Eclipse to stop responding and i had to quit and restart to continue testing.

Tried this on more than one occasion. Found nothing in the error log on restart.

Using the Eclipse platform and pre-reqs onthe build page along with the wtp-sdk zip.
Comment 1 David Williams CLA 2010-09-09 14:57:26 EDT
A stack trace would be helpful. On windows, just make sure a console is open when you start eclipse (add -console to command line or short cut) and once it hangs, it ctrl-break in that window. It'll dump it somewhere, I forget if with Eclispe install or your vm. 

For more details and methods, see 
http://wiki.eclipse.org/How_to_report_a_deadlock
Comment 2 Shane Clarke CLA 2010-09-09 15:20:51 EDT
Created attachment 178552 [details]
Full Thread Dump with Stacktrace

Thread dump with stacktrace attached
Comment 3 David Williams CLA 2010-09-09 15:31:24 EDT
The many calls to  
org.eclipse.draw2d.Figure.revalidate(Figure.java:1450)

look suspicious (but might be an infinite loop, or long recursion?). I did just update the GEF prereq. You might want to attach your wsdl file, as it may depend on exactly what's trying to be drawn? 

(And, sorry, I know you just want someone to try and reproduce ... instead of all these "hints and tips" ... I'm sure Valentin or Keith will?
Comment 4 Shane Clarke CLA 2010-09-09 15:35:11 EDT
Created attachment 178555 [details]
wsdl file

attaching wsdl and schema
Comment 5 Shane Clarke CLA 2010-09-09 15:35:41 EDT
Created attachment 178556 [details]
schema
Comment 6 Shane Clarke CLA 2010-09-09 15:39:30 EDT
I also noticed that if you hover the cursor over the editor the horizontal scrollbar becomes visible and the editor area appears to grow very quickly.
Comment 7 Keith Chong CLA 2010-09-09 15:54:25 EDT
(In reply to comment #6)
> I also noticed that if you hover the cursor over the editor the horizontal
> scrollbar becomes visible and the editor area appears to grow very quickly.

Hi Shane, David,

We're looking at it.
Comment 8 Keith Chong CLA 2010-09-09 23:01:21 EDT
The problem exists in GEF 3.6.1

The problem is not reproducible using GEF 3.6.0.

Thanks David for forwarding me the list of bug fixes that went into 3.6.1

I've determined that the fix for bug 321451 (Change in the initialization sequence in org.eclipse.draw2d.Polyline.java is causing NPE in our datatools code) caused this regression.

The WSDL Editor has "link" arrow figures that appear beside XSD types and elements.  When you click on these links, the XSD Editor will open to show the respective type or element.  These figures extend Polygon which extends Polyline.
Comment 9 Keith Chong CLA 2010-09-09 23:14:29 EDT
Anthony, adding you to the cc list.  Looks like the change made in bug 321451 caused this regression in our editor.
Comment 10 Keith Chong CLA 2010-09-10 00:48:57 EDT
Created attachment 178584 [details]
Workaround - Apply to wst.wsdl.ui
Comment 11 David Williams CLA 2010-09-10 00:59:39 EDT
I asked Anthony to go ahead and release this work-around fix for the hang, so we can respin by Friday noonish and still declare a usable build. We'll continue to work with GEF team to determine if there's a better approach ... or if their "fix for regression" was itself a regression? :)
Comment 12 David Williams CLA 2010-09-10 01:00:52 EDT
(In reply to comment #11)
> I asked Anthony ...

Sorry ... its late ... I meant I asked _Keith_ ...
Comment 13 Keith Chong CLA 2010-09-10 01:09:09 EDT
1. Explain why you believe this is a stop-ship defect. Or, if it is a "hotbug" (requested by an adopter) please document it as such.

This is a stop-ship blocking bug since the WSDL Editor hangs the workbench.

 
2. Is there a work-around? If so, why do you believe the work-around is insufficient?

No workaround.  The WSDL Editor is not usable.

3. How has the fix been tested? Is there a test case attached to the bugzilla record? Has a JUnit Test been added? 

I tested the fix in a development environment.  No JUnit added.

4. Give a brief technical overview. Who has reviewed this fix?

See also my comment #8.  The fix made in GEF bug 321451 caused this regression.  Since the fix in bug 321451 was to remove the repaint method in the draw2d class Polyline, I simply added this method back in by way of the WSDL Editor's LinkIconFigure, which extends Polygon which extends Polyline.  See patch.   I've tested this fix and the hang is no longer there.  I think this is a suitable workaround fix for this week's 3.2.2 build, until we better understand the impact of the fix in 321451.

5. What is the risk associated with this fix? 

Low risk.  The fix in 321451 appears to fix a NPE in data tools, and adding this method back in to the WSDL Editor's figure should be safe.
Comment 14 Keith Chong CLA 2010-09-10 15:51:32 EDT
Fix released
Comment 15 David Williams CLA 2010-09-13 22:04:03 EDT
Keith, 

Did you want to revert your work around now that the GEF change is reverting? (as per comments in bug 321451 ... I don't see their RC4 build yet). 

Did you for this maintenance release? 

(If so, let us know before Tuesday 11 PMC meeting :) 

Or is it a safe workaround, and you can revert any time in future?
Comment 16 Keith Chong CLA 2010-12-06 17:50:43 EST
(In reply to comment #15)
> Keith, 
> 
> Did you want to revert your work around now that the GEF change is reverting?
> (as per comments in bug 321451 ... I don't see their RC4 build yet). 
> 
> Did you for this maintenance release? 
> 
> (If so, let us know before Tuesday 11 PMC meeting :) 
> 
> Or is it a safe workaround, and you can revert any time in future?

I had already opened bug 325361.  We'll undo this change in WTP 3.2.3.