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

Re: nested copies broken on trunk

From: Philip Martin <philip.martin_at_wandisco.com>
Date: Thu, 28 Jan 2010 16:10:56 +0000

Stefan Sperling <stsp_at_elego.de> writes:

> + svn cp nested-copy/trunk/gamma nested-copy/trunk/gamma.copied
> A nested-copy/trunk/gamma.copied
> + svn mv nested-copy/trunk/gamma.copied/delta nested-copy/trunk/gamma.copied/delta.copied
> A nested-copy/trunk/gamma.copied/delta.copied
> D nested-copy/trunk/gamma.copied/delta
> + svn commit -m this commit breaks the WC nested-copy/trunk
> Adding nested-copy/trunk/gamma.copied
> Deleting nested-copy/trunk/gamma.copied/delta
> Adding nested-copy/trunk/gamma.copied/delta.copied
> subversion/svn/commit-cmd.c:142: (apr_err=200000)
> subversion/libsvn_client/commit.c:861: (apr_err=200000)
> svn: Commit succeeded, but other errors follow:
> subversion/libsvn_client/commit.c:879: (apr_err=155010)
> svn: Error bumping revisions post-commit (details follow):
> subversion/libsvn_wc/adm_ops.c:769: (apr_err=155010)
> subversion/libsvn_wc/workqueue.c:1726: (apr_err=155010)
> subversion/libsvn_wc/workqueue.c:936: (apr_err=155010)
> subversion/libsvn_wc/wc_db.c:4289: (apr_err=155010)
> subversion/libsvn_wc/wc_db.c:593: (apr_err=155010)
> svn: The node 'delta' was not found.

workqueue.c:run_deletion_postcommit calls svn_wc__db_scan_base_repos
assuming that the deleted file has a base_node entry, but it doesn't
because it was copied. It looks like svn_wc__node_get_repos_info
instead of svn_wc__db_scan_base_repos would do the right thing except
that svn_wc__node_get_repos_info needs two changes:

- it needs to return repos_relpath, that's easy

- it needs to accept svn_wc__db_t * instead of svn_wc_context_t *,
  that's tricky. It's possible since the svn_wc__db_t is the only bit
  of the context that gets used, but it doesn't match the interface
  of all the other node functions.

I've hacked up a local copy of the function with these changes and the
commit works.

Received on 2010-01-28 17:11:35 CET

This is an archived mail posted to the Subversion Dev mailing list.