On Wed, May 03, 2006 at 02:07:44PM +0200, Plüm, Rüdiger, VF EITO wrote: > > -----Ursprüngliche Nachricht----- > > Von: Joe Orton > > > > The way I would expect it to work would be by passing f->next in to > > the store_body callback, it looks doomed to eat RAM as currently > > designed. mod_disk_cache's store_body implementation can then do: > > > > 1. read bucket(s) from brigade, appending to some temp brigade > > 2. write bucket(s) in temp brigade to cache file > > 3. pass temp brigade on to f->next > > 4. clear temp brigade to ensure memory is released > > 5. goto 1 > > Yes, this was also my idea, but I would like to avoid this, because: > > 1. This is an API change which might be hard to backport. > 2. I do not really like the close tie between the storage provider > and the filter chain. It forces the provider to do things it > should not care about from my point of view.
At least this much could be solved I suppose by passing in a callback of type apr_brigade_flush which does the pass to f->next; the storage provider could remain filter-agnostic then. No idea about your other issues, sorry. joe