[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Mysterious "Transaction is out of date" error

From: <cmpilato_at_collab.net>
Date: 2002-08-05 19:17:44 CEST

Gareth McCaughan <Gareth.McCaughan@pobox.com> writes:

> Consider the following shell script:
>
> #!/usr/local/bin/bash -v
> BASE=<some directory or other>
> R=$BASE/svn-r
> W=$BASE/svn-w
> rm -rf $R $W
> svnadmin create $R
> mkdir $W
> cd $W
> mkdir project
> svn import -m 'initial import' file://$R project project
> svn co file://$R/project project
> cd project
> mkdir a
> svn add a
> touch a/b
> svn add a/b
> svn commit -m 'add stuff'
> echo zog >> a/b
> svn commit -m 'extend a/b'
> svn cp a c
> svn commit -m 'duplicate directory'
>
> The final commit fails, thus:
>
> Adding c
> Adding c/b
>
> subversion/libsvn_client/commit.c:662
> svn_error: #21087 : <Transaction is out of date>
> Commit failed (details follow):
>
> subversion/libsvn_ra_local/commit_editor.c:112
> svn_error: #21087 : <Transaction is out of date>
> out of date: `/project/c/b' in txn `4'

Here's the deal with this bug.

You saw in your commit that both 'c' and 'c/b' were being explicitly
added during the commit. Now, adding 'c' as a copy of 'a' during the
commit also adds to the transaction all of 'a's children (which in
this case include 'b'). Then the commit tries to add 'c/b' and *wham*
the commit fails because 'c/b' already exists (it was copied over with
'c' in the first step of the commit).

This is a bug. Repeat. This is a bug. Gonna give it a quick
look-see right now. :-)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Aug 5 19:20:15 2002

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.