On 24 Aug 2011, at 22:16, Stefan Fritsch wrote: > I have another idea: Instead of using apr_brigade_partition write a > new function ap_brigade_copy_part that leaves the original brigade > untouched. It would copy the necessary buckets to a new brigade and > then split the first and last of those copied buckets as necessary and > destroy the excess buckets. AFAICS, this would reduce the quadratic > growth into linear. Do you think that would solve our problems?
This looks really rather need - it seems to tackle the core issue - that of memory; and it also makes it better for legitimate request with many ranges in it (while I never noticed before - going back and looking at them - them PDF requests do take a lot of memory). Dw.