On Wednesday, July 03, 2013 6:10 PM Simon Riggs wrote:
On 3 July 2013 12:56, Amit Kapila <amit.kapila@huawei.com> wrote:
>>>My perspectives here would be
>>> * BufFreelistLock is a huge issue. Finding a next victim block needs to
be
an O(1) operation, yet it is currently much worse than that. Measuring
>>> contention on that lock hides that problem, since having shared buffers
lock up for 100ms or more but only occasionally is a huge problem, even if
it
>>> doesn't occur frequently enough for the averaged contention to show as
an
issue.
>> To optimize finding next victim buffer, I am planning to run the clock
>> sweep in background. Apart from that do you have any idea to make it
closer
>> to O(1)?
> Yes, I already posted patches to attentuate the search time. Please check
back last few CFs of 9.3
Okay, I got it. I think you mean 9.2.
Patch: Reduce locking on StrategySyncStart()
https://commitfest.postgresql.org/action/patch_view?id=743
Patch: Reduce freelist locking during DROP TABLE/DROP DATABASE
https://commitfest.postgresql.org/action/patch_view?id=744
I shall pay attention to patches and the discussion during my work on
enhancement of this patch.
With Regards,
Amit Kapila.