issue 1075 analysis [long] [for Philip!]
From: Ben Collins-Sussman <sussman_at_collab.net>
Date: 2003-09-25 19:28:15 CEST
Philip (and others):
I spent most of yesterday studying wc code and issue #1075.
I think the codebase has changed a lot since then, and if possible,
I've tried to organize my thoughts below.
Issue #1075: proper cleanup of 'dead' entries.
* 'dead' entry definition:
An entry (pointing to a subdirectory) which was reported 'missing'
There are two types of dead entry:
type 1 - the kind that arises from: 'rm -rf subdir; svn up'
type 2 - the kind that arises from: 'svn rm subdir; svn commit; svn up'
Because the server never restored the subdirectory, the client has
* Where/when should dead-entry cleanup happen?
That's tricky. Certainly, dead entry cleanup needs to happen
But what about dead entries living outside the scope of the editor
However, if we interrupt the update in the middle of this final
1. the directory still claims to be at the old revision, with
2. the directory claims to be at the new revision, with all
The final-walk process is responsible for guaranteeing that each wc
* WHERE are the danger points in our current codebase?
Philip pointed out some risks last May: but I'm not so certain they
In the final update walk, recursively_tweak_entries() is already
But I *do* see a a problem in the update-editor's close_dir(), where
Philip (or others), can you confirm my analysis?
---------------------------------------------------------------------
|
This is an archived mail posted to the Subversion Dev mailing list.
This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.