subversion-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mark Raymond" <ma...@raymonds.org.uk>
Subject RE: svnserve crash
Date Fri, 02 Nov 2012 22:37:34 GMT
> Now, the first thing that jumps out is that some of the actual parameters
are 0x00000000 or 0x00001000; for example:
> #14  0x13f639fd8 in serve(conn=(svn_ra_svn_conn_st *) 0x00000000,
params=(serve_params_t *) 0x00000000, pool=(apr_pool_t *) 0x00000000) at
> which might suggest a stack smash, or just that this is how windows stack
traces normally work and I'm not aware of that convention.

I think the hex values here may be truncated; this is a 64-bit compile, and
those are 32 bits long.

I've now compiled a debug version and I attached Visual Studio to svnserve
to see what happens. The stack trace looked similar, except there's an extra
8 digits after each hex value which has non-zero numbers.

In debug mode, I get an assertion fail for _CrtIsValidHeapPointer, which
occurs due to this attempt to free memory:

utils->free(data.data);

on line 256 of plugins\db_berkeley.c in Cyrus SASL code. I've now found that
if I remove this line, then the problem disappears, and svnserve works fine
- though obviously this probably results in a memory leak!

I'm considering this solved for me now. I've tried to measure the memory
leak, and it seems each check out / commit leaks ~8KB, which is small enough
to not worry me, especially as I'll be rebooting the computer svnserve is on
regularly.

> Are you using 1.7.7?
Yes



Mime
View raw message