I was going to convert my bdb repositories to fsfs earlier today when I
noticed that the repository for my web pages wasn't complete. svnadmin
had aborted on a specific revision — r1447 — and this happens every time
as long as I use 1.1.x and --fs-type=fsfs . Using BDB, svn-1.0.5 or
trunk@r10245 works fine. It generates an error and dies in
subversion/libsvn_subr/io.c:2019 the following way:
======== CUT {{{ ========
------- Committed revision 1443 >>>
<<< Started new transaction, based on original revision 1444
* adding path : branches/utv/svn.sunbase.org ... done.
* adding path : branches/utv/svn.sunbase.org/public ... done.
------- Committed revision 1444 >>>
<<< Started new transaction, based on original revision 1445
* adding path : trunk/svn.sunbase.org ... done.
* adding path : trunk/svn.sunbase.org/public ... done.
------- Committed revision 1445 >>>
<<< Started new transaction, based on original revision 1446
* adding path : branches/utv/svn.sunbase.org/public/index.html ... done.
------- Committed revision 1446 >>>
<<< Started new transaction, based on original revision 1447
* adding path : trunk/public ...COPIED... done.
subversion/libsvn_subr/io.c:2019: (apr_err=120001)
svn: Warning
2004-07-12 17:56:13 sunny@ba0614:~$
======== CUT }}} ========
The warning is incomplete, but there is a TODO in the source about
making it informative.
This is a gdb backtrace when breaking at
subversion/libsvn_subr/io.c:2019 :
======== CUT {{{ ========
------- Committed revision 1445 >>>
<<< Started new transaction, based on original revision 1446
* adding path : branches/utv/svn.sunbase.org/public/index.html ... done.
------- Committed revision 1446 >>>
<<< Started new transaction, based on original revision 1447
* adding path : trunk/public ...COPIED... done.
[Switching to Thread 16384 (LWP 7874)]
Breakpoint 1, svn_io_read_length_line (file=0x80ef5a8, buf=0xbfffe080 "1446 branches/utv/svn.sunbase.org/public/in", limit=0xbfffe07c, pool=0x81e3b20) at subversion/libsvn_subr/io.c:2019
(gdb) bt
#0 svn_io_read_length_line (file=0x80ef5a8, buf=0xbfffe080 "1446 branches/utv/svn.sunbase.org/public/in", limit=0xbfffe07c, pool=0x81e3b20) at subversion/libsvn_subr/io.c:2019
#1 0x0805c584 in read_change (change_p=0xbffff0c4, file=0x80ef5a8, pool=0x81e3b20) at subversion/libsvn_fs_fs/fs_fs.c:1931
#2 0x0805c749 in fetch_all_changes (changed_paths=0x80ef458, copyfrom_hash=0x80ef3f8, file=0x80ef5a8, pool=0x81e3b20) at subversion/libsvn_fs_fs/fs_fs.c:1979
#3 0x0805c932 in svn_fs_fs__txn_changes_fetch (changed_paths_p=0xbffff140, fs=0x80c2d78, txn_id=0x80e29f8 "1446-1", copyfrom_cache=0x80ef3f8, pool=0x81e3b20) at subversion/libsvn_fs_fs/fs_fs.c:2042
#4 0x0805f4ea in write_final_changed_path_info (offset_p=0xbffff18c, file=0x80fbc78, fs=0x80c2d78, txn_id=0x80e29f8 "1446-1", pool=0x81e3b20) at subversion/libsvn_fs_fs/fs_fs.c:3210
#5 0x0805fe87 in svn_fs_fs__commit (new_rev_p=0xbffff210, fs=0x80c2d78, txn=0x80e29b8, pool=0x80e16d0) at subversion/libsvn_fs_fs/fs_fs.c:3438
#6 0x08064527 in svn_fs_fs__commit_txn (conflict_p=0xbffff26c, new_rev_p=0xbffff268, txn=0x80e29b8, pool=0x80e16d0) at subversion/libsvn_fs_fs/tree.c:1955
#7 0x08057334 in svn_fs_commit_txn (conflict_p=0xbffff26c, new_rev=0xbffff268, txn=0x80e29b8, pool=0x80e16d0) at subversion/libsvn_fs/fs-loader.c:391
#8 0x08051b68 in close_revision (baton=0x80e1708) at subversion/libsvn_repos/load.c:1095
#9 0x08050894 in svn_repos_parse_dumpstream2 (stream=0x80c4728, parse_fns=0x80c4840, parse_baton=0x80c47c0, cancel_func=0x804abe9 <check_cancel>, cancel_baton=0x0, pool=0x80c16b0) at subversion/libsvn_repos/load.c:551
#10 0x08051f51 in svn_repos_load_fs (repos=0x80c1b68, dumpstream=0x80c4728, feedback_stream=0x80c4788, uuid_action=svn_repos_load_uuid_default, parent_dir=0x0, cancel_func=0x804abe9 <check_cancel>, cancel_baton=0x0, pool=0x80c16b0) at subversion/libsvn_repos/load.c:1232
#11 0x0804b78c in subcommand_load (os=0x80c16e8, baton=0xbffff4d0, pool=0x80c16b0) at subversion/svnadmin/main.c:587
#12 0x0804ccc8 in main (argc=3, argv=0xbffff5b4) at subversion/svnadmin/main.c:1170
(gdb)
$ svn --version
svn, version 1.1.0 (dev build)
compiled Jul 12 2004, 08:06:21
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
2004-07-13 00:46:29 sunny@ba0614:~/src/cvs$
2004-07-13 00:46:26 sunny@ba0614:~/src/cvs$ svn --version
svn, version 1.1.0 (dev build)
compiled Jul 12 2004, 08:06:21
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
2004-07-13 00:46:41 sunny@ba0614:~/src/cvs$ libtool --version
ltmain.sh (GNU libtool) 1.5.6 (1.1220.2.95 2004/04/11 05:50:42) Debian: 203 $
[...]
2004-07-13 00:46:49 sunny@ba0614:~/src/cvs$ autoconf --version
Autoconf version 2.13
2004-07-13 00:46:56 sunny@ba0614:~/src/cvs$ gcc --version
gcc (GCC) 3.3.4 (Debian)
[...]
2004-07-13 00:47:00 sunny@ba0614:~/src/cvs$ ld --version
GNU ld version 2.14.90.0.7 20031029 Debian GNU/Linux
[...]
2004-07-13 00:47:03 sunny@ba0614:~/src/cvs$ # neon-1.2.7
2004-07-13 00:47:18 sunny@ba0614:~/src/cvs$ # apr from apache-2.0.49
2004-07-13 00:47:30 sunny@ba0614:~/src/cvs$ cat /usr/local/prg/svn-1.1.x/include/subversion-1/svn-revision.txt
10244S
======== CUT }}} ========
Tested with the same results on a Debian 3.0 (woody/stable) and Debian
sarge/testing box. The action performed in r1447 was
$ svn cp $SR/sunbase/branches/utv/svn.sunbase.org/public/index.html $SR/sunbase/trunk/public/
where the environment variable $SR has the value
SR=svn+ssh://sunny@svnhost:/home/sunny/Svn
Regards,
Øyvind A. Holm
---------------------
cat /dev/urandom >SCO
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Jul 13 01:25:29 2004