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

Merge adding dangling symlink fails

From: Brian Buesker <bbuesker_at_qualcomm.com>
Date: 2005-06-15 02:39:41 CEST

I initially sent this to users@ but did not receive a response. I don't
mean to pester, but I just wanted to make sure it didn't accidentally
fall through the cracks. Should I file this as an issue?

I came across the following problem. If a versioned symlink is dangling,
and you do a merge which tries to add that symlink again, it fails with
an error (message shown is from svn 1.1.4, although the message is the
same with a different line number for other versions):

subversion/libsvn_subr/io.c:1946: (apr_err=2)
svn: Can't open file 'link': No such file or directory

It fails with the same error even with an svn merge --dry-run.

The reproduction recipe is simple (below and in the attached script):

% REPOS=$PWD/svn.$$
% REPOS_URL=file://$REPOS
% svnadmin create $REPOS
% mkdir import
% cd import
% mkdir branches trunk
% svn import -m 'initial import' . $REPOS_URL
Adding trunk
Adding branches

Committed revision 1.
% cd ..
% svn co $REPOS_URL/trunk
Checked out revision 1.
% cd trunk
% ln -s dangling link
% svn add link
A link
% svn commit -m 'added dangling link'
Adding link
Transmitting file data .
Committed revision 2.
% cd ..
% $SVN co $REPOS_URL/branches
Checked out revision 2.
% cd branches
% ln -s dangling link
% svn add link
A link
% svn commit -m 'added dangling link'
Adding link
Transmitting file data .
Committed revision 3.
% svn merge --dry-run -r1:2 ../trunk
subversion/libsvn_subr/io.c:1946: (apr_err=2)
svn: Can't open file 'link': No such file or directory

I have reproduced this with the head of the 1.2.x branch as well as trunk.

Here is my environment:
OS: Fedora Core 3

SVN Version:
% svn --version
svn, version 1.1.4 (r13838)
  compiled Apr 5 2005, 15:49:54

Copyright (C) 2000-2004 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet
(http://www.Collab.Net/).

The following repository access (RA) modules are available:

* ra_dav : Module for accessing a repository via WebDAV (DeltaV) protocol.
 - handles 'http' schema
 - handles 'https' schema
* ra_local : Module for accessing a repository on local disk.
 - handles 'file' schema
* ra_svn : Module for accessing a repository using the svn network
protocol.
 - handles 'svn' schema

Compiler:
$ gcc --version
gcc (GCC) 3.4.2 20041017 (Red Hat 3.4.2-6.fc3)
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Perl:
$ perl -v

This is perl, v5.8.5 built for i386-linux-thread-multi

Copyright 1987-2004, Larry Wall

Perl may be copied only under the terms of either the Artistic License
or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using `man perl' or `perldoc perl'. If you have access to the
Internet, point your browser at http://www.perl.com/, the Perl Home Page.

Berkeley DB Version: 4.2.52

OpenSSL Version:
$ rpm -q openssl
openssl-0.9.7a-40

Please let me know if you need any more information.

Thanks,
Brian

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

Received on Wed Jun 15 02:40:37 2005

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.