apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Brian Pane <brian.p...@cnet.com>
Subject Re: apr_table_overlap and pool ancestor assumption
Date Mon, 16 Sep 2002 19:51:11 GMT
Jeff Trawick wrote:

>What will happen if keys and values in b are NOT from an ancestor of
>a's pool but b has sufficient lifetime?
>
>I'm debugging a segfault in hash_overlap() when driven by a 3rd party
>Apache module.  Clearly the 3rd party module is misusing
>apr_table_overlap() because a is from the request pool and b is from
>pconf, which is in essence a storage leak because pconf shouldn't
>grow.
>
>I can't explain the actual segfault, though.  In the segfaulting
>scenario, which is very intermittent, some pointers (tree_parent,
>merge_left) in the hash table created in apr_table_overlap are
>actually literal strings from the table.  These could also be hashes
>of the strings.
>
>Does anybody understand this code well enough to describe what bad
>will happen besides a storage leak in this scenario?  pconf isn't
>going away, so there doesn't seem to be a storage lifetime problem.
>  
>

The worst thing that should happen in that scenario is a storage leak.
If you can isolate a test case that triggers the problem, please let
me know and I'll work on debugging it.

Thanks,
Brian



Mime
View raw message