On Sun, Mar 13, 2011 at 21:57, Ivan Zhakov <ivan_at_visualsvn.com> wrote:
> On Sun, Mar 13, 2011 at 18:38, <lgo_at_apache.org> wrote:
>> Author: lgo
>> Date: Sun Mar 13 15:38:01 2011
>> New Revision: 1081141
>>
>> URL: http://svn.apache.org/viewvc?rev=1081141&view=rev
>> Log:
>> ra_serf: Drastically limit memory usage on large checkouts. Stop reading the update
>> report response when too many fetches/propfinds are already active.
>>
>> * subversion/libsvn_ra_serf/update.c
>> (MAX_OUTSTANDING_REQS): New define.
>> (throttled_handle_xml_parser): Wraps a normal xml parser, stops reading when too
>> many active requests.
>> (finish_report): use the new throttled_handle_xml_parser.
>>
>>
> Hi Lieven,
>
> I understand the problem, but on my Windows box your change has three problems:
> 1. svn export uses 100% CPU, because serf call
> throttled_handle_xml_parser all the time. Because APR_POLLIN is still
> enabled in pollset.
>
> 2. Memory usage didn't change on my tests, svn export of svn-trunk
> still uses 50MB of memory
>
Sorry, I was wrong: this patch improves memory usage. Memory usage of
svn export of drops to 50mb instead of die at 550mb.
> 3. Time of svn export increased from 50s to 120s.
>
The difference not so bug: from 50-55s to 60-80s.
--
Ivan Zhakov
Received on 2011-03-14 08:18:14 CET