Re: drop/truncate table sucks for large values of shared buffers - Mailing list pgsql-hackers

From Robert Haas
Subject Re: drop/truncate table sucks for large values of shared buffers
Date
Msg-id CA+TgmoZiPkkUXr+Ebu=cGmmhPpc=N5uo-FvetxSfkT_4BZadQg@mail.gmail.com
Whole thread Raw
In response to Re: drop/truncate table sucks for large values of shared buffers  (Andres Freund <andres@anarazel.de>)
Responses Re: drop/truncate table sucks for large values of shared buffers  (Andres Freund <andres@anarazel.de>)
List pgsql-hackers
On Sat, Jun 27, 2015 at 11:38 AM, Andres Freund <andres@anarazel.de> wrote:
> On 2015-06-27 10:10:04 -0400, Tom Lane wrote:
>> In the past we've speculated about fixing the performance of these things
>> by complicating the buffer lookup mechanism enough so that it could do
>> "find any page for this table/tablespace/database" efficiently.
>> Nobody's had ideas that seemed sane performance-wise though.
>
> I've started to play around with doing that a year or three back. My
> approach was to use a linux style radix tree for the buffer mapping
> table.  Besides lack of time what made it hard to be efficient was the
> size of our buffer tags requiring rather deep trees.
>
> I think I was considering playing around with a two-level tree (so we
> could cache a pointer in Relation or such), but the memory management
> requirements for that made my head hurt too much. The other alternative
> is to work on having a much simpler buffer tag

Wouldn't even a two-level tree have the same problem you complained
about vis-a-vis chash?  In that case, you were of the opinion that
even ONE extra level of indirection was enough to pinch.  (I'm still
hoping there is a way to fix that, but even so.)

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company



pgsql-hackers by date:

Previous
From: Pavel Stehule
Date:
Subject: Re: proposal: condition blocks in psql
Next
From: "David G. Johnston"
Date:
Subject: Re: proposal: condition blocks in psql