The crash also happens on WinXP SP2.
I use svn.exe client
serf: trunk r1375
subversion: trunk r947299
apache: 2.2.15
The attached file is the callstack when doing
svn co http://svn.apache.org/repos/asf/subversion/trunk
Regards.
Masaru.
2010/5/17 Stefan Küng <[email protected]>:
> On 16.05.2010 18:31, Bert Huijben wrote:
>>>
>>> -----Original Message-----
>>> From: Mark Phippard [mailto:[email protected]]
>>> Sent: zondag 16 mei 2010 18:19
>>> To: Greg Stein
>>> Cc: Stefan Küng; Subversion Development
>>> Subject: Re: problems with serf
>>>
>>> On Sun, May 16, 2010 at 11:29 AM, Greg Stein<[email protected]> wrote:
>>>>
>>>> I'll take a look at your stack traces. Thanks!
>>>>
>>>> It is very strange that this happens for you. I've been using serf as
>>>> my only connection for the past couple years. I specifically disable
>>>> neon support. It's been working just fine for me, so there is
>>>> something on your system or about how TortoiseSVN interacts with the
>>>> libraries that triggers it.
>>>
>>> It is also possible it is Serf on Windows, and not specifically
>>> TortoiseSVN. I do not know if Bert uses Serf regularly or not. I
>>> seem to recall Paul mentioning he does not use it because of crashes.
>>> I do not know if any of us that use Windows are even using trunk
>>> regularly. The performance difference on Windows was too great to use
>>> it for any real day to day work.
>>
>> The Slik buildbot runs the serf tests on Windows (The svn-slik-w2k3-x64-ra
>> bot checks svn:// and serf http://), but running the tests doesn't really
>> test actual network conditions.
>> (I can't checkout a normal Subversion trunk over HTTP using serf when the
>> TCG isa server is in its way (I get 404 errors). But I see no issues when
>> doing the same thing from home)
>
> Since the crash happens when memory is freed again (double free on the same
> memory), this could be an issue that only shows on Win7. Win XP doesn't
> really care if memory is freed more than once and crashes only if there's
> more 'wrong' than just the double-free. Win7 however has a much more strict
> memory management and crashes much more in such situations.
> But as I could see, serf has its own way to detect those double-frees for
> debug builds, so it should be possible to reproduce this on XP too.
>
> And maybe it's not even serf itself but ra_serf?
>
> Stefan
>
> --
> ___
> oo // \\ "De Chelonian Mobile"
> (_,\/ \_/ \ TortoiseSVN
> \ \_/_\_/> The coolest Interface to (Sub)Version Control
> /_/ \_\ http://tortoisesvn.net
>
msvcr80d.dll!abort() Line 53 C
svn.exe!serf_bucket_mem_free(serf_bucket_alloc_t *
allocator=0x01e1a500, void * block=0x01e13848) Line 249 C
svn.exe!serf_default_destroy_and_data(serf_bucket_t *
bucket=0x01e130c8) Line 120 + 0x13 Byte C
svn.exe!serf_aggregate_destroy_and_data(serf_bucket_t *
bucket=0x01e130c8) Line 108 + 0x9 Byte C
svn.exe!cleanup_aggregate(aggregate_context_t * ctx=0x01524cc8,
serf_bucket_alloc_t * allocator=0x011ce090) Line 54 + 0x18 Byte C
svn.exe!serf_aggregate_destroy_and_data(serf_bucket_t *
bucket=0x01524d48) Line 106 + 0x10 Byte C
svn.exe!serf_aggregate_destroy_and_data(serf_bucket_t *
bucket=0x01524c48) Line 101 + 0x16 Byte C
svn.exe!destroy_ostream(serf_connection_t * conn=0x011cdf48) Line 359
+ 0x14 Byte C
svn.exe!reset_connection(serf_connection_t * conn=0x011cdf48, int
requeue_requests=0x00000001) Line 435 + 0x9 Byte C
svn.exe!read_from_connection(serf_connection_t * conn=0x011cdf48) Line
900 + 0xb Byte C
svn.exe!serf__process_connection(serf_connection_t * conn=0x011cdf48,
short events=0x0005) Line 991 + 0x9 Byte C
svn.exe!serf_event_trigger(serf_context_t * s=0x011cd7c0, void *
serf_baton=0x011cdf50, const apr_pollfd_t * desc=0x011d2888) Line 207 + 0x11
Byte C
svn.exe!serf_context_run(serf_context_t * ctx=0x011cd7c0, int
duration=0xd693a400, apr_pool_t * pool=0x011c15e8) Line 269 + 0x11 Byte C
svn.exe!finish_report(void * report_baton=0x011cccd8, apr_pool_t *
pool=0x011c15e8) Line 2234 + 0x1a Byte C
svn.exe!svn_wc_crawl_revisions5(svn_wc_context_t * wc_ctx=0x0119b718,
const char * local_abspath=0x011c2be8, const svn_ra_reporter3_t *
reporter=0x006cfe70, void * report_baton=0x011cccd8, int
restore_files=0x00000001, svn_depth_t depth=svn_depth_infinity, int
honor_depth_exclude=0x00000000, int depth_compatibility_trick=0x00000000, int
use_commit_times=0x00000000, svn_error_t * (void *, const char *, const
svn_string_t *, const svn_string_t *, svn_depth_t, apr_pool_t *)*
external_func=0x00523fb0, void * external_baton=0x0012f968, void (void *, const
svn_wc_notify_t *, apr_pool_t *)* notify_func=0x004130d0, void *
notify_baton=0x011caf50, apr_pool_t * scratch_pool=0x011c15e8) Line 1044 +
0x12 Byte C
svn.exe!update_internal(long * result_rev=0x00000000, const char *
path=0x011caf38, const char * local_abspath=0x011c2be8, const char *
anchor_abspath=0x011c3260, const svn_opt_revision_t * revision=0x0012fbfc,
svn_depth_t depth=svn_depth_infinity, int depth_is_sticky=0x00000001, int
ignore_externals=0x00000000, int allow_unver_obstructions=0x00000000, int *
timestamp_sleep=0x0012fb60, int send_copyfrom_args=0x00000000, int
innerupdate=0x00000000, svn_client_ctx_t * ctx=0x0119b6c0, apr_pool_t *
pool=0x011c15e8) Line 265 + 0x57 Byte C
svn.exe!svn_client__update_internal(long * result_rev=0x00000000, const
char * path=0x011caf38, const svn_opt_revision_t * revision=0x0012fbfc,
svn_depth_t depth=svn_depth_infinity, int depth_is_sticky=0x00000001, int
ignore_externals=0x00000000, int allow_unver_obstructions=0x00000000, int *
timestamp_sleep=0x0012fb60, int send_copyfrom_args=0x00000000, int
innerupdate=0x00000000, svn_client_ctx_t * ctx=0x0119b6c0, apr_pool_t *
pool=0x011c15e8) Line 356 + 0x3d Byte C
svn.exe!svn_client__checkout_internal(long * result_rev=0x00000000,
const char * url=0x011c1748, const char * path=0x011caf38, const
svn_opt_revision_t * peg_revision=0x0012fbe4, const svn_opt_revision_t *
revision=0x0012fbfc, const svn_client__ra_session_from_path_results *
ra_cache=0x00000000, svn_depth_t depth=svn_depth_infinity, int
ignore_externals=0x00000000, int allow_unver_obstructions=0x00000000, int
innercheckout=0x00000000, int * timestamp_sleep=0x00000000, svn_client_ctx_t *
ctx=0x0119b6c0, apr_pool_t * pool=0x011c15e8) Line 185 + 0x31 Byte C
svn.exe!svn_client_checkout3(long * result_rev=0x00000000, const char *
URL=0x011c1628, const char * path=0x011caf38, const svn_opt_revision_t *
peg_revision=0x0012fbe4, const svn_opt_revision_t * revision=0x0012fbfc,
svn_depth_t depth=svn_depth_unknown, int ignore_externals=0x00000000, int
allow_unver_obstructions=0x00000000, svn_client_ctx_t * ctx=0x0119b6c0,
apr_pool_t * pool=0x011c15e8) Line 249 + 0x33 Byte C
svn.exe!svn_cl__checkout(apr_getopt_t * os=0x01196390, void *
baton=0x0012fdb8, apr_pool_t * pool=0x011961e8) Line 173 + 0x37 Byte C
svn.exe!main(int argc=0x00000003, const char * * argv=0x010e6750) Line
2314 + 0x1c Byte C
svn.exe!__tmainCRTStartup() Line 597 + 0x19 Byte C
svn.exe!mainCRTStartup() Line 414 C
kernel32.dll!7c817077()