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

Re: Repository corruption? If so how do I recover?

From: Ben Collins-Sussman <sussman_at_collab.net>
Date: 2005-01-17 15:40:41 CET

On Jan 17, 2005, at 7:57 AM, Robert Sfeir wrote:

> Just fyi, way to reproduce this issue (bug?)
>
> Create a file (Foo.java) in your subversion dir.
>
> svn add Foo.java
>
> now do: mv Foo.java to another directory (I will explain shortly)
>
> svn add Foo.java in new location.
>
> go to root of your repository and svn commit. The commit happens
> happily, however try to do an svn update on the first directory you
> put Foo.java and you will error out.
>
> The reason this happened is because I was in IntelliJIDEA Irida
> working with the tmate plugin, and since Irida doesn't currently
> support moving, it moved the file and I forgot to remove it from that
> location manually. When I committed using svn commit, svn didn't warn
> or throw an error.
>
> So I think while this is a problem with the way the file was moved,
> Subversion should be smarter about picking that up I think, or at
> least interrupt the commit and error out to show that there is a
> missing file which was added.
>

I'm not sure how to reproduce your problem; or maybe I did, and I got
exactly the error I expected:

[sussman_at_BenBook:~/scratch]$ svn co file:///usr/local/svn/testrepos wc
A wc/svn_error_codes.h
A wc/svn_fs.h
A wc/svn_diff.h
A wc/svn_sorts.h
A wc/svn_dav.h
A wc/svn_test.h
A wc/svn_base64.h
A wc/svn_ctype.h
A wc/svn_version.h
A wc/svn_ra_svn.h
A wc/svn_repos.h
A wc/svn_delta.h
A wc/svn_path.h
A wc/svn_xml.h
A wc/svn_subst.h
A wc/svn_props.h
A wc/svn_types.h
A wc/svn_config.h
A wc/svn_string.h
A wc/svn_io.h
A wc/mod_dav_svn.h
A wc/svn_wc.h
A wc/svn_cmdline.h
A wc/svn_client.h
A wc/svn_quoprint.h
A wc/svn_hash.h
A wc/svn_md5.h
A wc/svn_error.h
A wc/svn_pools.h
A wc/svn_utf.h
A wc/svn_time.h
A wc/svn_auth.h
A wc/svn_opt.h
A wc/svn_ra.h
Checked out revision 1.
[sussman@BenBook:~/scratch]$ cd wc
[sussman@BenBook:~/scratch/wc]$ touch Foo.java
[sussman@BenBook:~/scratch/wc]$ svn add Foo.java
A Foo.java
[sussman@BenBook:~/scratch/wc]$ cd ..
[sussman_at_BenBook:~/scratch]$ svn co file:///usr/local/svn/testrepos wc2
A wc2/svn_error_codes.h
A wc2/svn_fs.h
A wc2/svn_diff.h
A wc2/svn_sorts.h
A wc2/svn_dav.h
A wc2/svn_test.h
A wc2/svn_base64.h
A wc2/svn_ctype.h
A wc2/svn_version.h
A wc2/svn_ra_svn.h
A wc2/svn_repos.h
A wc2/svn_delta.h
A wc2/svn_path.h
A wc2/svn_xml.h
A wc2/svn_subst.h
A wc2/svn_props.h
A wc2/svn_types.h
A wc2/svn_config.h
A wc2/svn_string.h
A wc2/svn_io.h
A wc2/mod_dav_svn.h
A wc2/svn_wc.h
A wc2/svn_cmdline.h
A wc2/svn_client.h
A wc2/svn_quoprint.h
A wc2/svn_hash.h
A wc2/svn_md5.h
A wc2/svn_error.h
A wc2/svn_pools.h
A wc2/svn_utf.h
A wc2/svn_time.h
A wc2/svn_auth.h
A wc2/svn_opt.h
A wc2/svn_ra.h
Checked out revision 1.
[sussman@BenBook:~/scratch]$ mv wc/Foo.java wc2/
[sussman@BenBook:~/scratch]$ svn add wc2/Foo.java
A wc2/Foo.java
[sussman@BenBook:~/scratch]$ cd wc2
[sussman@BenBook:~/scratch/wc2]$ svn commit -m blah
Adding Foo.java
Transmitting file data .
Committed revision 2.
[sussman@BenBook:~/scratch/wc2]$ cd ..
[sussman@BenBook:~/scratch]$ svn up wc
subversion/libsvn_wc/update_editor.c:1478: (apr_err=155000)
svn: Failed to add file 'wc/Foo.java': object of the same name is
already scheduled for addition
[sussman@BenBook:~/scratch]$

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Mon Jan 17 15:46:59 2005

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