Hi all,
I've encountered a problem whereby svn operations to an authenticated
apache2 server are hanging indefinitely.
It happens erratically but often enough that it's normally reproducible
within 20 operations.
I'm using ubuntu 9.10 on the client side.
I've reproduced this with subversion 1.6.4, 1.6.5 and 1.6.9 in
conjunction with gnome-keyring 2.28.1 and 2.28.2.
I've tested against two different apache2 servers (2.0.52, 2.2.3).
It doesn't appear to be server related though. I packet traced during
the problem and the last response from the server is an authorisation
request. There is nothing further from the client at that stage.
Here is a gdb backtrace from svn 1.6.9 from where I was able to trigger
the problem after 13 consecutive 'svn ls' commands. It appears to be
waiting indefinitely for gnome-keyring.
#0 0x00007ffff43d9388 in poll () from /lib/libc.so.6
#1 0x00007ffff207237c in ?? () from /lib/libglib-2.0.so.0
#2 0x00007ffff20729f5 in g_main_loop_run () from /lib/libglib-2.0.so.0
#3 0x00007ffff274f3e0 in get_default_keyring_name (pool=<value
optimized out>) at subversion/libsvn_auth_gnome_keyring/gnome_keyring.c:160
#4 0x00007ffff274fc99 in simple_gnome_keyring_save_creds (saved=<value
optimized out>, credentials=0x656928, provider_baton=0x0,
parameters=0x655430,
realmstring=0x662c08 "<http://svn-test.wetafx.co.nz:80>
svn.wetafx.co.nz", pool=0x662738) at
subversion/libsvn_auth_gnome_keyring/gnome_keyring.c:437
#5 0x00007ffff5e17bd4 in svn_auth_save_credentials (state=0x662bd8,
pool=0x662738) at subversion/libsvn_subr/auth.c:325
#6 0x00007ffff7bd34a2 in svn_client__get_revision_number
(revnum=0x7fffffffd350, youngest_rev=0x7fffffffd338,
ra_session=0x692920, revision=0xffffffffffffffff, path=0x6484d0
"http://svn-test.wetafx.co.nz/test",
pool=0x662738) at subversion/libsvn_client/revisions.c:66
#7 0x00007ffff7bd01e1 in svn_client__repos_locations (start_url=<value
optimized out>, start_revision=0x7fffffffd438, end_url=<value optimized
out>, end_revision=0x7fffffffd440, ra_session=0x662878,
path=0x6484d0 "http://svn-test.wetafx.co.nz/test",
revision=0x7fffffffd410, start=0x7fffffffd400, end=0x7fffffffd3f0,
ctx=0x643410, pool=0x662738) at subversion/libsvn_client/ra.c:657
#8 0x00007ffff7bd06b9 in svn_client__ra_session_from_path
(ra_session_p=0x7fffffffd530, rev_p=0x7fffffffd528,
url_p=0x7fffffffd518, path_or_url=0x6484d0
"http://svn-test.wetafx.co.nz/test", base_access=0x0,
peg_revision_p=<value optimized out>, revision=0x7fffffffd708,
ctx=0x643410, pool=0x662738) at subversion/libsvn_client/ra.c:454
#9 0x00007ffff7bbc0b8 in svn_client_list2
(path_or_url=0xfffffffffffffdfc <Address 0xfffffffffffffdfc out of
bounds>, peg_revision=0x7fffffffd5c0, revision=0x1,
depth=svn_depth_immediates, dirent_fields=1, fetch_locks=0,
list_func=0x40b120 <print_dirent>, baton=0x7fffffffd5d0,
ctx=0x643410, pool=0x662738) at subversion/libsvn_client/list.c:134
#10 0x000000000040aed4 in svn_cl__list (os=<value optimized out>,
baton=<value optimized out>, pool=0x642a08) at subversion/svn/list-cmd.c:277
#11 0x000000000040e352 in main (argc=<value optimized out>, argv=<value
optimized out>) at subversion/svn/main.c:2119
Here is a gdb backtrace from gnome-keyring-daemon at the time:
#0 0x00007f03912063c3 in poll () from /lib/libc.so.6
#1 0x000000000041e058 in ?? ()
#2 0x00007f03914e137c in ?? () from /lib/libglib-2.0.so.0
#3 0x00007f03914e19f5 in g_main_loop_run () from /lib/libglib-2.0.so.0
#4 0x000000000040e790 in ?? ()
#5 0x00007f0391151abd in __libc_start_main () from /lib/libc.so.6
#6 0x000000000040dd89 in ?? ()
#7 0x00007fff611be7b8 in ?? ()
#8 0x000000000000001c in ?? ()
#9 0x0000000000000004 in ?? ()
#10 0x00007fff611c0459 in ?? ()
#11 0x0000000000000000 in ?? ()
Any help would be much appreciated.
Thanks,
--
Ben
Received on 2010-02-19 06:33:25 CET