| Re: [ISSUE] Cancelling svn checkout leaves an open file handle
From: Nathan Hartman <hartman.nathan_at_gmail.com>
 Date: Wed, 9 Sep 2020 00:44:22 -0400 
On Tue, Sep 8, 2020 at 6:08 AM Uroš Jovanović <urosh3d_at_gmail.com> wrote:
 Moving this to the dev@ list...
 Potentially long-running APIs such as 'checkout' allow the client to
 It sounds to me like one of those places sees a cancel request and
 Last night I tried to find such a place by reading code.
 The 'checkout' command sets up a working copy (if necessary) and then
 The 'update' logic is quite involved as it handles all sorts of
 My thoughts for an automated approach, provided there is a way for a
 1. Check out a working copy of a repository, giving a cancel_func 'A'
 2. Loop n times, the loop counter being a global variable 'x':
    2.1: Delete the working copy.
    2.2: Check out a working copy of the same repository, giving a
    2.3: Test whether there are open file handles. If there are, we
 3. If x >= n, quit; we didn't find the problem.
 4. Delete the working copy.
 5. Check out a working copy of the same repository, giving a different
 Notes and caveats:
 1. This could run for days (or years).
 2. Then again, if it can be exposed pretty reliably by a user hitting
 3. I think a huge repository isn't needed. The Greek Tree used by the
 4. This relies on the logic being executed identically for each
 5. No idea how this could be turned into a regression test.
 6. If there's a better way, I'd love to hear it!
 Nathan
 | 
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.