RE: Unreferenced pristines behavior in 1.7
From: Gleason, Todd <Todd.Gleason_at_elekta.com>
Date: Wed, 30 Nov 2011 07:45:42 -0800
> -----Original Message-----
Something similar occurred to me some time ago. It seems problematic that a user might move or copy WCs outside the root location though; Subversion would have no easy way to track that and might end up needing to re-fetch all the pristines somehow. You could put the store into the user's profile or something to make it fully user-global, but you would still have the problem of dealing with users moving or copying WCs around.
To deal with this you might want a more sophisticated management system, where the user could specify locations containing WCs, and Subversion could interrogate their top-level .svn directories to perform a global cleanup (fixing reference counts and whatnot).
Another option would be an MRU-style behavior where you update the global store with indicators of how recently you have seen files (and I have no idea how you could make this scale), and toss pristines that seem stale. This would be more automatic but it seems like it wouldn't work all that well.
A third option might be a little of a hybrid; you would have Subversion implicitly determine where your WCs were and have it scan around those locations during certain operations, attempting to update reference counts and whatnot. Still, if you moved a WC then its pristine might get wiped...unless you access them from the new location within a certain period of time.
If you really wanted to make this work well, you'd probably need to install a daemon or service to monitor WC directory (and possibly other directory) locations. A side advantage of this would be that you could detect changes in real time rather than doing file tree scans to check for modified files.
If you did any of this though, you might want to make optional behaviors such as "share this WCs pristine with other WCs" (aka global storage), "remove pristine if they have not been accessed in x days" (aka MRU behavior), and "watch filesystem for WC changes" (aka monitoring daemon/service).
Please consider the environment before printing this e-mail.
The contents of this e-mail message (including any attachments) are confidential to and are intended to be conveyed for the use of the recipient to whom it is addressed only. If you receive this transmission in error, please notify the sender of this immediately and delete the message from your system. Any distribution, reproduction or use of this message by someone other than recipient is not authorized and may be unlawful.
This is an archived mail posted to the Subversion Users mailing list.