You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Alexis Huxley <ah...@gmx.net> on 2002/07/02 16:37:50 UTC

simultaneous commit of two working copies fails

Hi 

I did the following using svn from June 27 (sorry, how do I map
back from my binary to a revision?):

I took two pseudo-modules from my repository:

	te35$ svn co http://dione.no-ip.org/svn/ade/trunk -d ade
	te35$ svn co http://dione.no-ip.org/svn/gvd/trunk -d gvd

I made changes to ade/Makefile and gvd/Makefile.

'svn help status' says I can do the following:

	te35$ svn st gvd ade

and indeed it worked:

	M      gvd/Makefile
	?      gvd/bldcfg/.adeconf.cmdline
	?      gvd/bldcfg/paths.mk
	?      gvd/bldcfg/paths.spp
	M      ade/Makefile
	?      ade/bin/adeconf
	?      ade/bin/adeinst
	?      ade/bin/aderel
	?      ade/bin/aderoot
	?      ade/bin/adespp
	?      ade/bldcfg/.adeconf.cmdline
	?      ade/bldcfg/paths.mk
	?      ade/bldcfg/paths.spp

'svn help commit' says I can do the following:

	te35$ svn commit gvd ade

But when I came to try to commit them I got:

	<authentification skipped>
	Sending        ade/Makefile
	Sending        gvd/Makefile
	Transmitting file data .
	apr_error: #2, src_err 0 : <No such file or directory>
  	Commit failed (details follow):
	
	apr_error: #2, src_err 0 : <No such file or directory>
  	svn_io_open_unique_file: error attempting /home/ahuxley/dev/.work-only/svnwcs/.svn/tmp/tempfile.10136.00001.tmp

But when I commit each working copy individually:

	te35$ svn commit ade
	te35$ svn commit gvd

it works fine.

A search for 'commit' in summaries on Issuezilla didn't show up anything.
Is this a bug? 

My error_log contained only an entry for the user mismatch
authentification failure before I went on to enter the right
username, access_log contained the following:

te35.hq.eso.org - - [02/Jul/2002:18:32:08 +0200] "OPTIONS /svn HTTP/1.1" 200 183
te35.hq.eso.org - - [02/Jul/2002:18:32:08 +0200] "MKACTIVITY /svn/!svn/act/7e53ff3f-d21d-b211-941b-ca24bb1e654d HTTP/1.1" 401 479
te35.hq.eso.org - ahuxley [02/Jul/2002:18:32:11 +0200] "MKACTIVITY /svn/!svn/act/7e53ff3f-d21d-b211-941b-ca24bb1e654d HTTP/1.1" 401 479
te35.hq.eso.org - alexis [02/Jul/2002:18:32:14 +0200] "MKACTIVITY /svn/!svn/act/7e53ff3f-d21d-b211-941b-ca24bb1e654d HTTP/1.1" 201 300
te35.hq.eso.org - - [02/Jul/2002:18:32:15 +0200] "PROPFIND /svn HTTP/1.1" 207 370
te35.hq.eso.org - - [02/Jul/2002:18:32:17 +0200] "PROPFIND /svn/!svn/vcc/default HTTP/1.1" 207 337
te35.hq.eso.org - alexis [02/Jul/2002:18:32:19 +0200] "CHECKOUT /svn/!svn/bln/28 HTTP/1.1" 201 315
te35.hq.eso.org - alexis [02/Jul/2002:18:32:21 +0200] "PROPPATCH /svn/!svn/wbl/7e53ff3f-d21d-b211-941b-ca24bb1e654d/28 HTTP/1.1" 207 314
te35.hq.eso.org - - [02/Jul/2002:18:32:21 +0200] "PROPFIND /svn HTTP/1.1" 207 322
te35.hq.eso.org - - [02/Jul/2002:18:32:22 +0200] "PROPFIND /svn/ade HTTP/1.1" 207 329
te35.hq.eso.org - - [02/Jul/2002:18:32:22 +0200] "PROPFIND /svn/ade/trunk HTTP/1.1" 207 341
te35.hq.eso.org - alexis [02/Jul/2002:18:32:22 +0200] "CHECKOUT /svn/!svn/ver/1/ade/trunk/Makefile HTTP/1.1" 201 331
te35.hq.eso.org - - [02/Jul/2002:18:32:22 +0200] "PROPFIND /svn/gvd HTTP/1.1" 207 329
te35.hq.eso.org - - [02/Jul/2002:18:32:23 +0200] "PROPFIND /svn/gvd/trunk HTTP/1.1" 207 341
te35.hq.eso.org - alexis [02/Jul/2002:18:32:23 +0200] "CHECKOUT /svn/!svn/ver/28/gvd/trunk/Makefile HTTP/1.1" 201 331

Alexis

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: simultaneous commit of two working copies fails

Posted by cm...@collab.net.
Ben Collins-Sussman <su...@collab.net> writes:

> Josef Wolf <jw...@raven.inka.de> writes:
> 
> > On Tue, Jul 02, 2002 at 04:34:30PM -0500, Ben Collins-Sussman wrote:
> > > Alexis Huxley <ah...@gmx.net> writes:
> > > 
> > > > 'svn help commit' says I can do the following:
> > > > 	te35$ svn commit gvd ade
> > > 
> > > In theory, your use-case might be able to work someday too; after all,
> > > your two working copies are from the same repository, and therefore
> > > the commit could still be atomic.
> > 
> > Umm... Do you suggest an automatic merge on commit? Please note that
> > both files came from the same revision of the same file in the repo.
> 
> Well, no, I wouldn't suggest that.  When the svn client goes gathering
> committable items into a list, it would/should recognize that we're
> trying to commit the same item twice with different mods, and just
> bail out.

This is, indeed, what *should* be happening (at least, it did when I
was testing it during the commit system re-write).  The entire
client-side commit process is now based on URLs (instead of working
copy paths).  So two files on your drive that have the same repository
URL should trigger an error in the commit process if both are modified
and targets to the same commit.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: simultaneous commit of two working copies fails

Posted by Ben Collins-Sussman <su...@collab.net>.
Josef Wolf <jw...@raven.inka.de> writes:

> On Tue, Jul 02, 2002 at 04:34:30PM -0500, Ben Collins-Sussman wrote:
> > Alexis Huxley <ah...@gmx.net> writes:
> > 
> > > 'svn help commit' says I can do the following:
> > > 	te35$ svn commit gvd ade
> > 
> > In theory, your use-case might be able to work someday too; after all,
> > your two working copies are from the same repository, and therefore
> > the commit could still be atomic.
> 
> Umm... Do you suggest an automatic merge on commit? Please note that
> both files came from the same revision of the same file in the repo.

Well, no, I wouldn't suggest that.  When the svn client goes gathering
committable items into a list, it would/should recognize that we're
trying to commit the same item twice with different mods, and just
bail out.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: simultaneous commit of two working copies fails

Posted by Josef Wolf <jw...@raven.inka.de>.
On Tue, Jul 02, 2002 at 04:34:30PM -0500, Ben Collins-Sussman wrote:
> Alexis Huxley <ah...@gmx.net> writes:
> 
> > 'svn help commit' says I can do the following:
> > 	te35$ svn commit gvd ade
> 
> In theory, your use-case might be able to work someday too; after all,
> your two working copies are from the same repository, and therefore
> the commit could still be atomic.

Umm... Do you suggest an automatic merge on commit? Please note that
both files came from the same revision of the same file in the repo.

-- 
-- Josef Wolf -- jw@raven.inka.de --

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: simultaneous commit of two working copies fails

Posted by Ben Collins-Sussman <su...@collab.net>.
Alexis Huxley <ah...@gmx.net> writes:

> 'svn help commit' says I can do the following:
> 
> 	te35$ svn commit gvd ade
> 
> But when I came to try to commit them I got:
> 
> 	<authentification skipped>
> 	Sending        ade/Makefile
> 	Sending        gvd/Makefile
> 	Transmitting file data .
> 	apr_error: #2, src_err 0 : <No such file or directory>
>   	Commit failed (details follow):
> 	
> 	apr_error: #2, src_err 0 : <No such file or directory>
>   	svn_io_open_unique_file: error attempting /home/ahuxley/dev/.work-only/svnwcs/.svn/tmp/tempfile.10136.00001.tmp

Oops, sorry, we should fix the help string for 'svn commit'.  I'll do
that.

'svn commit' can work on multiple targets, but those targets must be
within the *same* working copy.  For now, that's the only way we can
guarantee that the commit is atomic.

In theory, your use-case might be able to work someday too; after all,
your two working copies are from the same repository, and therefore
the commit could still be atomic.  But we don't support that case yet.

The error you're seeing is probably svn attempting to create a tmpfile
in the common parent of the two commit targets, but that common parent
has no .svn/ area!


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org