Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 348235 - Rename Field causes freeze during "Waiting for JSP Index Manager" step
Summary: Rename Field causes freeze during "Waiting for JSP Index Manager" step
Status: RESOLVED NOT_ECLIPSE
Alias: None
Product: WTP Source Editing
Classification: WebTools
Component: jst.jsp (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows 7
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: jst.jsp CLA
QA Contact: Nick Sandonato CLA
URL: https://jira.springsource.org/browse/...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-06-03 11:55 EDT by Balázs Bessenyei CLA
Modified: 2013-10-22 08:53 EDT (History)
2 users (show)

See Also:


Attachments
Stacktrace (32.00 KB, text/plain)
2011-06-08 00:10 EDT, Balázs Bessenyei CLA
no flags Details
Stackdump After Cancel (31.47 KB, text/plain)
2011-06-08 00:10 EDT, Balázs Bessenyei CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Balázs Bessenyei CLA 2011-06-03 11:55:07 EDT
Build Identifier: 20110526-1053

I have attempted to rename a variable in a class, in a Java Web Project, using the internal rename function using, getter setter update option.

After hitting next, the progress dialog appears then stuck in "JSP Index Manager" step.
Attempting to cancel will freeze the entire workspace. Only manually terminating Eclipse helps.

Reproducible: Always

Steps to Reproduce:
1. Attempt to rename a POJO in a web application
2. Set the update getter setter option
3. click next
Comment 1 Balázs Bessenyei CLA 2011-06-06 03:40:02 EDT
It appears that the Change Method signature is also effected. The freeze occurs "Creating workspace modifications..."

I would queues that all method type refactoring suffers from this.
Comment 2 Nick Sandonato CLA 2011-06-07 14:52:39 EDT
Thanks for your bug report. Could you please attach a stackdump of when this is occurring? Thanks.
Comment 3 Balázs Bessenyei CLA 2011-06-08 00:10:43 EDT
Created attachment 197556 [details]
Stacktrace

Please find the stack trace attached after the problem occurred. I will attach the stack trace after canceling the operation, separately.

Further investigation reveled that it only occurs when an another Dynamic Web Project is open as well.

I have 3 projects, 2 of them are Dynamic Web Projects and 1 Java projects. Both DWP depends on the Java. When I want to refactor a method in one of them the previously mentioned problem occurs. 

If I close the other one the modification succeeds.

Looking at the Stack Trace it seems that IO related. According to W7 Resource Monitor, there are no disk activities from Eclipse and Javaw processes. Also there are no global disc activity around the project files either.

According to Task Manager there is a ~10% CPU activity related to Eclipse, but the UI is almost completely frozen.
Comment 4 Balázs Bessenyei CLA 2011-06-08 00:10:48 EDT
Created attachment 197557 [details]
Stackdump After Cancel
Comment 5 Balázs Bessenyei CLA 2011-06-08 00:24:59 EDT
In the mean time I have upgraded to 20110602-0820
Comment 6 Nick Sandonato CLA 2011-06-09 13:10:39 EDT
Hi,

Thank you very much for the thread dumps. Based on the information in them, I'm inclined to think that this may not be Eclipse. The one thread in particular, where the Spring refactoring participant is involved shows that the workspace lock is held. This can cause something like the JSP Index Manager to block waiting for that lock to be released.
Comment 7 Balázs Bessenyei CLA 2011-06-09 19:06:48 EDT
(In reply to comment #6)
> Hi,
> 
> Thank you very much for the thread dumps. Based on the information in them, I'm
> inclined to think that this may not be Eclipse. The one thread in particular,
> where the Spring refactoring participant is involved shows that the workspace
> lock is held. This can cause something like the JSP Index Manager to block
> waiting for that lock to be released.

Yes, according to the stack trace, I`m leaning towards that it is actually Spring IDE`s fault. Since the first thread`s Stacktrace is IO related. It hit me that I have enabled Preferences / Spring / "Use non locking classloaders" option. After un-checking it the problem seems to be solved. 

Although it took Eclipse a several minutes to make the first refactoring.

The standard Eclipse installation does not contain the org.apache.xbean.classloader package. So it is definitely Spring IDE or maybe Apache XBean.

Thanks for the help. I will open a bug in their system.
Comment 8 Balázs Bessenyei CLA 2011-06-09 19:24:39 EDT
The related bug report ID in Spring system is IDE-1206.
Comment 9 Balázs Bessenyei CLA 2011-06-10 04:09:28 EDT
Probably Spring IDE related issue, raised against Spring IDE; the relavant bug id is in the previous comment.
Comment 10 Nitin Dahyabhai CLA 2011-06-10 11:44:11 EDT
(In reply to comment #9)
> Probably Spring IDE related issue, raised against Spring IDE; the relavant bug
> id is in the previous comment.

You can put a URL leading to it in the URL field--might help others who run into the same problem.
Comment 11 Balázs Bessenyei CLA 2011-06-10 12:56:52 EDT
(In reply to comment #10)
> (In reply to comment #9)
> > Probably Spring IDE related issue, raised against Spring IDE; the relavant bug
> > id is in the previous comment.
> 
> You can put a URL leading to it in the URL field--might help others who run
> into the same problem.

I didn`t know about this. Thanks for adding it.
Comment 12 Archimedes Trajano CLA 2013-10-22 08:53:12 EDT
I actually get the same behaviour with Kepler (only difference was I renamed the class rather than a field).