[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Pool memory bug in serf/ra_serf

From: Philip Martin <philip.martin_at_wandisco.com>
Date: Tue, 02 Jul 2013 16:53:22 +0100

Philip Martin <philip.martin_at_wandisco.com> writes:

> It seems to be connected to mod_deflate. My server was loading
> mod_deflate (but not setting up any filters) and the import works with
> the client setting
>
> http-compression = no
>
> but fails with
>
> http-compression = yes
>
> Still investigating.

This appears to be a pool memory bug in serf or ra_serf. Setting
busted-proxy and then doing an import through nginx with
http-compression enabled gives:

==9035== Invalid read of size 4
==9035== at 0x8BFAA40: serf_bucket_mem_alloc (allocator.c:172)
==9035== by 0x8BFEDB4: serf_bucket_barrier_create (barrier_buckets.c:33)
==9035== by 0x6FDC6C3: accept_response (util.c:448)
==9035== by 0x6FDC70C: accept_head (util.c:463)
==9035== by 0x8BF5776: read_from_connection (outgoing.c:989)
==9035== by 0x8BF597C: serf__process_connection (outgoing.c:1108)
==9035== by 0x8BF37A2: serf_event_trigger (context.c:239)
==9035== by 0x8BF3915: serf_context_run (context.c:307)
==9035== by 0x6FDCE2B: svn_ra_serf__context_run_wait (util.c:736)
==9035== by 0x6FDD071: svn_ra_serf__context_run_one (util.c:810)
==9035== by 0x6FC4AC6: close_file (commit.c:2145)
==9035== by 0x4E6CA97: import_file (import.c:282)
==9035== by 0x4E6D79D: import (import.c:732)
==9035== by 0x4E6E5D4: svn_client_import5 (import.c:980)
==9035== by 0x412D5B: svn_cl__import (import-cmd.c:115)
==9035== by 0x4292A5: sub_main (svn.c:2929)
==9035== by 0x4295D2: main (svn.c:3020)
==9035== Address 0x9b27498 is 40 bytes inside a block of size 72 free'd
==9035== at 0x4C27D4E: free (vg_replace_malloc.c:427)
==9035== by 0x5F6D0E9: pool_clear_debug (apr_pools.c:1576)
==9035== by 0x5F6D23D: pool_destroy_debug (apr_pools.c:1638)
==9035== by 0x5F6D326: apr_pool_destroy_debug (apr_pools.c:1680)
==9035== by 0x5F6E69C: apr_pool_destroy (apr_pools.c:2610)
==9035== by 0x8BF46B9: destroy_request (outgoing.c:348)
==9035== by 0x8BF5860: read_from_connection (outgoing.c:1047)
==9035== by 0x8BF597C: serf__process_connection (outgoing.c:1108)
==9035== by 0x8BF37A2: serf_event_trigger (context.c:239)
==9035== by 0x8BF3915: serf_context_run (context.c:307)
==9035== by 0x6FDCE2B: svn_ra_serf__context_run_wait (util.c:736)
==9035== by 0x6FDD071: svn_ra_serf__context_run_one (util.c:810)
==9035== by 0x6FC42B2: add_file (commit.c:1923)
==9035== by 0x4E6C764: import_file (import.c:219)
==9035== by 0x4E6D79D: import (import.c:732)
==9035== by 0x4E6E5D4: svn_client_import5 (import.c:980)
==9035== by 0x412D5B: svn_cl__import (import-cmd.c:115)
==9035== by 0x4292A5: sub_main (svn.c:2929)
==9035== by 0x4295D2: main (svn.c:3020)

-- 
Philip Martin | Subversion Committer
WANdisco | Non-Stop Data
www.wandisco.com
Received on 2013-07-02 17:54:03 CEST

This is an archived mail posted to the Subversion Dev mailing list.