Author: julianfoad Revision: 1040663 Modified property: svn:log Modified: svn:log at Wed Dec 1 13:03:33 2010 ------------------------------------------------------------------------------ --- svn:log (original) +++ svn:log Wed Dec 1 13:03:33 2010 @@ -1,6 +1,16 @@ -Speed up the pristine store garbage collection done by "svn cleanup". In a -trunk svn WC on my system, this reduces the overall "svn cleanup" time from -about 1 second to about 0.2 seconds for a no-op cleanup with a hot cache. +Speed up the pristine store garbage collection done by "svn cleanup" by +reducing the algorithm from quadratic to linear time in the number of +pristine texts. + +This reduces the overall time for a no-op "svn cleanup" massively for large +WCs: + + WC with 1766 pristines, 2031 NODES table rows (^/subversion/trunk) + reduced from 1 second to 0.2 seconds + WC with 14838 pristines, 78245 NODES table rows (^/subversion/branches) + reduced from 15 MINUTES to 0.7 seconds + +(Times quoted above are the best among several trials, on my Linux system.) * subversion/libsvn_wc/wc_db.c (svn_wc__db_pristine_cleanup): Instead of using a separate query to check
