Greg Stein <gstein@lyra.org> writes:
> General comment: I've been seeing a *LOT* of pool creation/manipulation in
> the various SVN code. My initial feeling is that we're going a bit overboard
> with the pools, and that it will steer us into Bad Areas(tm). i.e. the
> problem we've seen where a pool is destroyed while references within it
> still exist.
>
> IMO, I would ask people to be much more conservative with pool usage. Don't
> just go and create/destroy them willy nilly. More pools, more confusion
> ("gee, which pool is this in?"). Create/dest of pools is only important
> within high-level loops that are unbounded in size (the subpool is used to
> impose a bound).
The FS code is probably pretty guilty of this. If there's stuff in
there which looks too fussy, tell me what to remove.
However, there are some cases where it seems important. For example,
if the delta generator just uses a single pool, instead of creating a
new pool for every directory it recurses into, then the total memory
consumed to compute a delta will be enough to hold the entire delta in
memory. After going to all this trouble to use streamy
representations of things, that seems a waste.
Received on Sat Oct 21 14:36:10 2006