Hello,
I compiled svn trunk / apr 0.9.x with serf and tried the svntest
system with it. It didn't go so well. Either the system was
segfaulting (1), or I am seeing following errors:
svn: Error running context: Error string not specified yet
I have compiled apr with "--enable-pool-debug=yes".
Secondly, I ran serf with valgrind and I got following results:
==12141== Memcheck, a memory error detector.
==12141== Copyright (C) 2002-2006, and GNU GPL'd, by Julian Seward et al.
==12141== Using LibVEX rev 1658, a library for dynamic binary translation.
==12141== Copyright (C) 2004-2006, and GNU GPL'd, by OpenWorks LLP.
==12141== Using valgrind-3.2.1, a dynamic binary instrumentation framework.
==12141== Copyright (C) 2000-2006, and GNU GPL'd, by Julian Seward et al.
==12141== For more details, rerun with: -v
==12141==
==12141== Warning: invalid file descriptor -1 in syscall close()
==12141== Conditional jump or move depends on uninitialised value(s)
==12141== at 0x5638E3F: handler_default (util.c:763)
==12141== by 0x5746648: serf_context_run (context.c:744)
==12141== by 0x563622B: finish_report (update.c:2105)
==12141== by 0x4C5B588: svn_wc_crawl_revisions2 (adm_crawler.c:599)
==12141== by 0x4B47601: svn_client__update_internal (update.c:151)
==12141== by 0x4B2ED6A: svn_client__checkout_internal (checkout.c:157)
==12141== by 0x4B2EFF4: svn_client_checkout3 (checkout.c:222)
==12141== by 0x405E2B: svn_cl__checkout (checkout-cmd.c:159)
==12141== by 0x40AA24: main (main.c:1544)
==12141== Warning: invalid file descriptor -1 in syscall close()
==12141== Warning: invalid file descriptor -1 in syscall close()
==12141== Warning: invalid file descriptor -1 in syscall close()
==12141== Warning: invalid file descriptor -1 in syscall close()
==12141==
==12141== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 4 from 1)
==12141== malloc/free: in use at exit: 24,688 bytes in 5 blocks.
==12141== malloc/free: 365,371 allocs, 365,366 frees, 60,583,066 bytes allocated.
==12141== For counts of detected errors, rerun with: -v
==12141== searching for pointers to 5 not-freed blocks.
==12141== checked 649,224 bytes.
==12141==
==12141==
==12141== 24,576 bytes in 3 blocks are definitely lost in loss record 3 of 3
==12141== at 0x4A1FB4B: malloc (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
==12141== by 0x6479144: apr_allocator_alloc (apr_pools.c:293)
==12141== by 0x57485C4: serf_bucket_mem_alloc (allocator.c:183)
==12141== by 0x5745C5E: serf_connection_request_create (context.c:1056)
==12141== by 0x56321F7: svn_ra_serf__deliver_props (property.c:567)
==12141== by 0x5632406: svn_ra_serf__retrieve_props (property.c:611)
==12141== by 0x5638430: svn_ra_serf__discover_root (util.c:913)
==12141== by 0x5634753: svn_ra_serf__get_latest_revnum (serf.c:211)
==12141== by 0x4B461AF: svn_client__get_revision_number (revisions.c:65)
==12141== by 0x4B4340F: svn_client__repos_locations (ra.c:760)
==12141== by 0x4B43A2E: svn_client__ra_session_from_path (ra.c:922)
==12141== by 0x4B2EABF: svn_client__checkout_internal (checkout.c:84)
==12141==
==12141== LEAK SUMMARY:
==12141== definitely lost: 24,576 bytes in 3 blocks.
==12141== possibly lost: 0 bytes in 0 blocks.
==12141== still reachable: 112 bytes in 2 blocks.
==12141== suppressed: 0 bytes in 0 blocks.
==12141== Reachable blocks (those to which a pointer was found) are not shown.
==12141== To see them, rerun with: --show-reachable=yes
I will try to compile the serf with apr-1.x and see if that makes any
difference.
In anycase, when I get the serf to working with our regression tests,
I can/will start running nightly tests with it. It would be nice if
someone could confirm if or not he or she can run serf with regtests.
BR, Jani
1) I tested the system just before your windows fixes and now it seems
that I can't anymore reproduce the segfault. However I will include
the backtrace which I generated at the time.
gdb /svntest/inst/svn_trunk/bin/svn
GNU gdb 6.5
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) r co http://svn.collab.net/repos/svn/trunk
Starting program: /svntest/inst/svn_trunk/bin/svn co http://svn.collab.net/repos/svn/trunk
[Thread debugging using libthread_db enabled]
[New Thread 47423145703104 (LWP 27819)]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 47423145703104 (LWP 27819)]
pool_alloc (pool=0x6, size=80) at /srv/svntest/svntest/apr/apr-0.9.x/memory/unix/apr_pools.c:1285
1285 node = pool->nodes;
(gdb) bt
#0 pool_alloc (pool=0x6, size=80) at /srv/svntest/svntest/apr/apr-0.9.x/memory/unix/apr_pools.c:1285
#1 0x00002b218f213486 in apr_pcalloc_debug (pool=0x2b218fc08980, size=47423145675440, file_line=0x5d71 <Address 0x5d71 out of bounds>)
at /srv/svntest/svntest/apr/apr-0.9.x/memory/unix/apr_pools.c:1334
#2 0x00002b218f20d3ed in alloc_socket (new=0x7fffff91b380, p=0x6) at /srv/svntest/svntest/apr/apr-0.9.x/network_io/unix/sockets.c:60
#3 0x00002b218f20dbad in apr_socket_create_ex (new=0x7fffff91b380, ofamily=2, type=1, protocol=0, cont=0x2b218fc08ab0)
at /srv/svntest/svntest/apr/apr-0.9.x/network_io/unix/sockets.c:89
#4 0x00002b218e4d5e67 in open_connections () from /svntest/inst/serf_trunk/lib/libserf-0.so.0
#5 0x00002b218e4d6e17 in serf_context_run () from /svntest/inst/serf_trunk/lib/libserf-0.so.0
#6 0x00002b218e3c92b5 in svn_ra_serf__context_run_wait (done=0x53dd24, sess=0x536850, pool=0x536110)
at /srv/svntest/svntest/svn/svn_trunk/subversion/libsvn_ra_serf/util.c:187
#7 0x00002b218e3c2428 in svn_ra_serf__retrieve_props (prop_vals=<value optimized out>, sess=0x536850, conn=<value optimized out>,
url=<value optimized out>, rev=<value optimized out>, depth=<value optimized out>, props=0x2b218e4d0480, pool=0x536110)
at /srv/svntest/svntest/svn/svn_trunk/subversion/libsvn_ra_serf/property.c:615
#8 0x00002b218e3c8431 in svn_ra_serf__discover_root (vcc_url=0x7fffff91b510, rel_path=0x0, session=0x536850, conn=0x537610,
orig_path=<value optimized out>, pool=0x536110) at /srv/svntest/svntest/svn/svn_trunk/subversion/libsvn_ra_serf/util.c:904
#9 0x00002b218e3c4754 in svn_ra_serf__get_latest_revnum (ra_session=<value optimized out>, latest_revnum=0x7fffff91b690, pool=0x536110)
at /srv/svntest/svntest/svn/svn_trunk/subversion/libsvn_ra_serf/serf.c:211
#10 0x00002b218d8d31b0 in svn_client__get_revision_number (revnum=0x7fffff91b690, ra_session=0x2b218fc08980, revision=0x7fffff91b760,
path=0x535c10 "http://svn.collab.net/repos/svn/trunk", pool=0x536110)
at /srv/svntest/svntest/svn/svn_trunk/subversion/libsvn_client/revisions.c:65
#11 0x00002b218d8d0410 in svn_client__repos_locations (start_url=0x7fffff91b798, start_revision=0x7fffff91b788, end_url=0x7fffff91b778,
end_revision=0x7fffff91b790, ra_session=0x536830, path=0x535c10 "http://svn.collab.net/repos/svn/trunk", revision=0x7fffff91b760,
start=0x7fffff91b750, end=0x7fffff91b740, ctx=0x5325a0, pool=0x536110) at /srv/svntest/svntest/svn/svn_trunk/subversion/libsvn_client/ra.c:760
#12 0x00002b218d8d0a2f in svn_client__ra_session_from_path (ra_session_p=0x7fffff91b850, rev_p=0x7fffff91b860, url_p=0x7fffff91b858,
path_or_url=0x535c10 "http://svn.collab.net/repos/svn/trunk", peg_revision_p=0x7fffff91b910, revision=0x0, ctx=0x5325a0, pool=0x536110)
at /srv/svntest/svntest/svn/svn_trunk/subversion/libsvn_client/ra.c:922
#13 0x00002b218d8bbac0 in svn_client__checkout_internal (result_rev=0x0, url=<value optimized out>, path=0x5358f0 "trunk",
peg_revision=0x7fffff91b910, revision=0x7fffff91b920, recurse=1, ignore_externals=0, allow_unver_obstructions=0, timestamp_sleep=0x0,
ctx=0x5325a0, pool=0x535940) at /srv/svntest/svntest/svn/svn_trunk/subversion/libsvn_client/checkout.c:84
#14 0x00002b218d8bbff5 in svn_client_checkout3 (result_rev=0x2b218fc08980, URL=0x2b218fc08ab0 " \212À\217!+",
path=0x5d71 <Address 0x5d71 out of bounds>, peg_revision=0x540230, revision=0x0, recurse=8192, ignore_externals=0, allow_unver_obstructions=0,
ctx=0x5325a0, pool=0x535940) at /srv/svntest/svntest/svn/svn_trunk/subversion/libsvn_client/checkout.c:222
#15 0x0000000000405e1c in svn_cl__checkout (os=<value optimized out>, baton=<value optimized out>, pool=<value optimized out>)
at /srv/svntest/svntest/svn/svn_trunk/subversion/svn/checkout-cmd.c:159
#16 0x000000000040aa15 in main (argc=<value optimized out>, argv=<value optimized out>)
at /srv/svntest/svntest/svn/svn_trunk/subversion/svn/main.c:1544
(gdb)
--
Jani Averbach
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Oct 30 16:49:49 2006