Community
Participate
Working Groups
I am in the process of converting the Team/CVS plugins to use the Runtime NLS support. As part of the conversion, I needed to move several methods and fields from one class to another. I did this by selecting the methods and fields in the outline view and performing a Refactor>Move and accepting the default opetions. With a -Xmx512M I ran out of memory. With -Xmx768M the operation worked but the heap at one point reached 650M. This seems a bit excessive. Here are the details of my setup: - Build id: I20050405-0800 (also with M6) - Workspace contains all (or most anyway) Eclipse plugins as source. - Plugin: org.eclipse.team.cvs.ui - Class: org.eclipse.team.internal.cvs.ui.Policy - Elements moved: all bind() methods and two bundle fields to an new class (CVSUIMessages)
Tobias, can you please try to reproduce this ? We should understand were we spent this memory Michael, if we take Team in source from M6 then this will still contain the code you wanted to refactor. Right ?
Michael, one additional question: The Policy class is only referenced inside org.eclipse.team.cvs.ui. Right ?
And one last question: in which package is CVSUIMessages located.
Tobias, something has changed here recently. Looking at the performance test org.eclipse.jdt.ui.tests.refactoring.reorg.MoveStaticMembersPerfTests1#test_1000_10() which simulates a move of a static field that has 10000 references (10 in 1000 CUS) shows that the VM space went up 364.5 % recently.
We should consider adding VM finger prints for the large move and rename sceanrios to see those things earlier.
Yes, the unrefactored code is available in M6. I created the CVSUIMessages class in the same package as the source class (i.e. org.eclipse.team.internal.cvs.ui)
It turns out there was a couple of references in the org.eclipse.releng.tools plugin as well but other than that they are all within the org.eclipse.team.cvs.ui package.
Visibility handling uses no asts anymore Fixed > 20050415