db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mike Matrigali <mikem_...@sbcglobal.net>
Subject Re: [jira] Closed: (DERBY-704) Large page cache kills initial performance
Date Tue, 15 Nov 2005 18:33:52 GMT
just got a chance to look at the patch, it would have been nice if
some of the great comments that are in the bug description had made
it into the code changes.

Knut Anders Hatlen (JIRA) wrote:

>      [ http://issues.apache.org/jira/browse/DERBY-704?page=all ]
> Knut Anders Hatlen closed DERBY-704:
> ------------------------------------
> Fixed in revision 344270.
>>Large page cache kills initial performance
>>         Key: DERBY-704
>>         URL: http://issues.apache.org/jira/browse/DERBY-704
>>     Project: Derby
>>        Type: Bug
>>  Components: Services, Performance
>>    Versions:,,,,,,,
>> Environment: All platforms
>>    Reporter: Knut Anders Hatlen
>>    Assignee: Knut Anders Hatlen
>>     Fix For:
>> Attachments: DERBY-704.diff, cpu-usage.png, derbyall_report.txt, throughput.png
>>When the page cache is large the performance gets lower as the page
>>cache is being filled. As soon as the page cache is filled, the
>>throughput increases. In the period with low performance, the CPU
>>usage is high, and when the performance increases the CPU usage is
>>This behaviour is caused by the algorithm for finding free slots in
>>the page cache. If there are invalid pages in the page cache, it will
>>be scanned to find one of those pages. However, when multiple clients
>>access the database, the invalid pages are often already taken. This
>>means that the entire page cache will be scanned, but no free invalid
>>page is found. Since the scan of the page cache is synchronized on the
>>cache manager, all other threads that want to access the page cache
>>have to wait. When the page cache is large, this will kill the
>>When the page cache is full, this is not a problem, as there will be
>>no invalid pages.

View raw message