That was my second attempt, but gdb-6.6 doesn't seem to break at my breakpoints.
gdb svnserve (inside emacs)
(gdb) break main
Breakpoint 1 at 0x804caca: file subversion/svnserve/main.c, line 304.
(gdb) run --foreground -d -T --listen-host localhost -r
/home/dchristian/local/svnrepo
Starting program:
/usr/local/google/dchristian/OpenSource/svn/subversion/svnserve
--foreground -d -T --listen-host localhost -r
/home/dchristian/local/svnrepo
Failed to read a valid object file image from memory.
[Thread debugging using libthread_db enabled]
[New Thread -1209051456 (LWP 30461)]
[Switching to Thread -1209051456 (LWP 30461)]
Breakpoint 1, main (argc=8, argv=0xbffff574) at subversion/svnserve/main.c:304
(gdb) break write
Breakpoint 2 at 0x42c9c5a0
(gdb) cont
Continuing.
[New Thread -1210766416 (LWP 30543)]
[Thread -1210766416 (LWP 30543) exited]
[New Thread -1210766416 (LWP 30549)]
[Thread -1210766416 (LWP 30549) exited]
[New Thread -1219159120 (LWP 30550)]
[New Thread -1210766416 (LWP 30551)]
[New Thread -1227764816 (LWP 30552)]
[Thread -1210766416 (LWP 30551) exited]
[Thread -1227764816 (LWP 30552) exited]
[Thread -1219159120 (LWP 30550) exited]
Meanwhile the svn import has finished successfully. It either never
calls write (not likely) or gdb didn't manage to honor the breakpoint.
In fact, I can't get it to break on 'write' even if I debug svn
import NEW file://...
It's been a while since I tried to debug threaded programs with gdb.
I'm probably forgetting something basic. Maybe some kind of dynamic
loading weirdness.
-Dan C
On 8/9/07, Garrett Rooney <rooneg@electricjellyfish.net> wrote:
> On 8/9/07, Dan Christian <dchristian@google.com> wrote:
> > I'm trying to understand some weird write performance in fsfs.
> >
> > So I fire up svnserve -X --listen-host localhost -r ~/local/svnrepo
> >
> > However, the client can't really get anywhere. I get:
> > svn import -m test ~/tmp/margin.el svn://localhost/m6
> > svn: Can't connect to host 'localhost': Connection refused
> >
> > Someone suggested that the client is making multiple connections, but
> > svnserve is exits after the first. Is there any way to make the client use
> > just the one connection?
> >
> > How can get a svnserve that works with gdb?
>
> I've usually used threaded svnserve's with the --foreground switch,
> i.e. something like:
>
> svnserve --foreground -T --listen-host localhost -r ~/local/svnrepo
>
> As you've found, -X is largely useless for debugging with a svn client
> for many commands, it's more useful if you're just typing raw commands
> in via telnet or something, but that's a pain in the ass for most
> people.
>
> -garrett
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Fri Aug 10 02:10:27 2007