C. Michael Pilato wrote: > From time to time, I've seen evidence that our trunk code is walking up too > far in its parent tree as well, but every time I try to create a reliable > recipe, I can't. I have nothing but wc-1 working copies on my system for > day-to-day use. (I run subversion 1.6.x by default.) My home directory is > versioned, for example, as is the directory ~/tests (but nothing inside > ~/tests is versioned). What I've seen, though, is that if I use trunk svn > to do some testing, creating working copies and such inside ~/test/, > sometimes I get errors that indicate that the client has crawled up out of > that wc-ng working copy and is looking at ~/test/. Obviously, it'd be fine > if it crawled up that far, realized that it had gone above the WC root, and > just gracefully realized that it had crawled too far. But instead, it fails > with an error. Unfortunately, I can't recall which error is presented: > "working copy is too old", perhaps.
Here's a recipe for this problem. ------------------------------------------------------------ #!/bin/sh OLD_SVN=/home/cmpilato/projects/subversion/branches/1.6.x/subversion/svn/svn OLD_SVNADMIN=/home/cmpilato/projects/subversion/branches/1.6.x/subversion/svnadmin/svnadmin SVN17=/home/cmpilato/projects/subversion/trunk/subversion/svn/svn echo "### Remove junk from previous test runs." rm -rf crawl-too-high mkdir crawl-too-high echo "### Create a couple of repositories to play with." ${OLD_SVNADMIN} create crawl-too-high/repos1 ${OLD_SVNADMIN} create crawl-too-high/repos2 echo "### Checkout the first repository using a pre-1.7 client." ${OLD_SVN} co file://`pwd`/crawl-too-high/repos1 crawl-too-high/wc echo "### Commit the addition of a subdirectory into the repository." ${OLD_SVN} mkdir crawl-too-high/wc/subdir ${OLD_SVN} ci -m "Create a subdirectory." crawl-too-high/wc echo "### Now checkout the second repository again, this time using" echo "### Subversion 1.7, into the subdir of the pre-1.7 working copy." ${SVN17} co file://`pwd`/crawl-too-high/repos2 crawl-too-high/wc/subdir ----------------------------------------------------------- And here's what I see today when I run it: ### Remove junk from previous test runs. ### Create a couple of repositories to play with. ### Checkout the first repository using a pre-1.7 client. Checked out revision 0. ### Commit the addition of a subdirectory into the repository. A crawl-too-high/wc/subdir Adding crawl-too-high/wc/subdir Committed revision 1. ### Now checkout the second repository again, this time using ### Subversion 1.7, into the subdir of the pre-1.7 working copy. subversion/svn/checkout-cmd.c:173: (apr_err=155036) subversion/libsvn_client/checkout.c:168: (apr_err=155036) subversion/libsvn_wc/lock.c:123: (apr_err=155036) subversion/libsvn_wc/lock.c:123: (apr_err=155036) subversion/libsvn_wc/wc_db.c:5450: (apr_err=155036) subversion/libsvn_wc/wc_db.c:1073: (apr_err=155036) subversion/libsvn_wc/wc_db.c:425: (apr_err=155036) subversion/libsvn_wc/upgrade.c:1083: (apr_err=155036) svn: Working copy format of '/home/cmpilato/tests/crawl-too-high/wc/subdir' is too old (10); please run 'svn upgrade' -- C. Michael Pilato <cmpil...@collab.net> CollabNet <> www.collab.net <> Distributed Development On Demand
signature.asc
Description: OpenPGP digital signature