You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by "Hyrum K. Wright" <hy...@mail.utexas.edu> on 2009/03/05 18:46:50 UTC

1.6 svnsync aborts

Another bug in 1.6 with svnsync:

dhcp-198-227:test Hyrum$ ~/dev/svn-1.6.x/subversion/svnsync/svnsync  
sync file:///Users/Hyrum/dev/test/svnrepo-1.6 --config-dir config-serf/
Assertion failed: (svn_path_is_canonical(base, pool)), function  
svn_path_join_many, file subversion/libsvn_subr/path.c, line 146.
Abort trap
dhcp-198-227:test Hyrum$

The same problem is also reproducible on trunk, with the following  
stack trace:
(gdb) r sync file:///Users/Hyrum/dev/test/svnrepo-1.6 --config-dir  
config-serf/
Starting program: /Users/Hyrum/dev/svn-trunk/subversion/svnsync/ 
svnsync sync file:///Users/Hyrum/dev/test/svnrepo-1.6 --config-dir  
config-serf/
Reading symbols for shared libraries ++++++++++++++++ 
+...................... done
Assertion failed: (svn_dirent_is_canonical(base, pool)), function  
svn_dirent_join_many, file subversion/libsvn_subr/dirent_uri.c, line  
893.

Program received signal SIGABRT, Aborted.
0x90eeae42 in __kill ()
(gdb) backtrace
#0  0x90eeae42 in __kill ()
#1  0x90eeae34 in kill$UNIX2003 ()
#2  0x90f5d23a in raise ()
#3  0x90f69679 in abort ()
#4  0x90f5e3db in __assert_rtn ()
#5  0x000a327c in svn_dirent_join_many (pool=0x811418, base=0xbffff94d  
"config-serf/") at subversion/libsvn_subr/dirent_uri.c:893
#6  0x0009ff6c in svn_config_get_user_config_path (path=0xbffff6b4,  
config_dir=0xbffff94d "config-serf/", fname=0x0, pool=0x811418) at  
subversion/libsvn_subr/config_file.c:1110
#7  0x0009fa6d in svn_config_ensure (config_dir=0xbffff94d "config- 
serf/", pool=0x811418) at subversion/libsvn_subr/config_file.c:503
#8  0x00005940 in main (argc=5, argv=0xbffff820) at subversion/svnsync/ 
main.c:2072
(gdb)

-Hyrum

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1273221

RE: 1.6 svnsync aborts

Posted by Bert Huijben <rh...@sharpsvn.net>.
> -----Original Message-----
> From: Hyrum K. Wright [mailto:hyrum_wright@mail.utexas.edu]
> Sent: Thursday, March 05, 2009 7:47 PM
> To: dev@subversion.tigris.org
> Cc: Bert Huijben
> Subject: 1.6 svnsync aborts
> 
> Another bug in 1.6 with svnsync:
> 
> dhcp-198-227:test Hyrum$ ~/dev/svn-1.6.x/subversion/svnsync/svnsync
> sync file:///Users/Hyrum/dev/test/svnrepo-1.6 --config-dir config-serf/

It looks like svnsync does no canonicalization on the config path passed in
this example. (See the stack trace.. It is passed down from main in every
stack frame).

On posix the only canonical path that can end with a '/' is "/". 

	Bert

> Assertion failed: (svn_path_is_canonical(base, pool)), function
> svn_path_join_many, file subversion/libsvn_subr/path.c, line 146.
> Abort trap
> dhcp-198-227:test Hyrum$
> 
> The same problem is also reproducible on trunk, with the following
> stack trace:
> (gdb) r sync file:///Users/Hyrum/dev/test/svnrepo-1.6 --config-dir
> config-serf/
> Starting program: /Users/Hyrum/dev/svn-trunk/subversion/svnsync/
> svnsync sync file:///Users/Hyrum/dev/test/svnrepo-1.6 --config-dir
> config-serf/
> Reading symbols for shared libraries ++++++++++++++++
> +...................... done
> Assertion failed: (svn_dirent_is_canonical(base, pool)), function
> svn_dirent_join_many, file subversion/libsvn_subr/dirent_uri.c, line
> 893.
> 
> Program received signal SIGABRT, Aborted.
> 0x90eeae42 in __kill ()
> (gdb) backtrace
> #0  0x90eeae42 in __kill ()
> #1  0x90eeae34 in kill$UNIX2003 ()
> #2  0x90f5d23a in raise ()
> #3  0x90f69679 in abort ()
> #4  0x90f5e3db in __assert_rtn ()
> #5  0x000a327c in svn_dirent_join_many (pool=0x811418, base=0xbffff94d
> "config-serf/") at subversion/libsvn_subr/dirent_uri.c:893
> #6  0x0009ff6c in svn_config_get_user_config_path (path=0xbffff6b4,
> config_dir=0xbffff94d "config-serf/", fname=0x0, pool=0x811418) at
> subversion/libsvn_subr/config_file.c:1110
> #7  0x0009fa6d in svn_config_ensure (config_dir=0xbffff94d "config-
> serf/", pool=0x811418) at subversion/libsvn_subr/config_file.c:503
> #8  0x00005940 in main (argc=5, argv=0xbffff820) at subversion/svnsync/
> main.c:2072
> (gdb)
> 
> -Hyrum
> 
> ------------------------------------------------------
> http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageI
> d=1273221

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1273652