Login | Register
My pages Projects Community openCollabNet

Discussions > issues > [Issue 1540] Refresh SVN status cache takes up to an hour

subclipse
Discussion topic

Back to topic list

[Issue 1540] Refresh SVN status cache takes up to an hour

Author stefane
Full name Stefan Eggerstorfer
Date 2016-03-05 13:46:58 PST
Message http://subclipse.tig​ris.org/issues/show_​bug.cgi?id=1540






------- Additional comments from stefane at tigris dot org Sat Mar 5 13:46:57 -0800 2016 -------
I am experiencing a similar performance issues on a huge workspace (100+ projects).
I did some research and have found one suspicious behavior when Subclipse gets notified about changed
resources after a refresh:

Assume you have an Ant build directory which is svn-ignored containing following hierarchy:
- build/com
- build/com/company
- build/com/company/product

When Eclipse detects changes in all 3 folders, Subclipse updates the SVN status for each of them with
an algorithm like this:
- find the nearest parent folder with a SVN status (in this case I guess build, it has status IGNORED)
- update the SVN status of the whole folder recursively
In our example the whole build folder is update 3 times.

I also collected some timings of my workspace, see attached file "svn_update_timings.png" (it contains
aggregated values of 3 loops of a clean ant build and Eclipse startup with "refresh on startup" setting
enabled).
The first line is the aggregation of the whole workspace, the second line is one huge project with a
build folder which was updated 656 times for these 3 runs, summing up to 48s spent during SVN status
update just in this project (and more than 3 minutes for the whole workspace).

I applied one change to the update algorithm, see attached patch "FileModificationMan​ager.patch". I
changed the SVN update loops of folders to remember and skip already updated folders. The time needed
to update the project was down to 1/4 (~13s), the whole workspace took now 73s (-60%).

What do you think about this change? Is it a valid modification of the algorithm?

« Previous message in topic | 3 of 6 | Next message in topic »

Messages

Show all messages in topic

[Issue 1540] New - Refresh SVN status cache takes up to an hour janmae Jan Mäser 2013-08-02 01:08:26 PDT
     [Issue 1540] Refresh SVN status cache takes up to an hour janmae Jan Mäser 2013-08-09 00:59:47 PDT
     [Issue 1540] Refresh SVN status cache takes up to an hour stefane Stefan Eggerstorfer 2016-03-05 13:46:58 PST
     [Issue 1540] Refresh SVN status cache takes up to an hour stefane Stefan Eggerstorfer 2016-03-05 13:49:35 PST
     [Issue 1540] Refresh SVN status cache takes up to an hour stefane Stefan Eggerstorfer 2016-03-05 13:49:54 PST
     [Issue 1540] Refresh SVN status cache takes up to an hour mralwasser Patric R. 2016-04-29 06:00:55 PDT
Messages per page: