Re: Reduce pinning in btree indexes

From: Kevin Grittner <kgrittn(at)ymail(dot)com>
To: Kevin Grittner <kgrittn(at)ymail(dot)com>, Kyotaro HORIGUCHI <horiguchi(dot)kyotaro(at)lab(dot)ntt(dot)co(dot)jp>
Cc: "hlinnakangas(at)vmware(dot)com" <hlinnakangas(at)vmware(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Reduce pinning in btree indexes
Date: 2015-03-09 15:44:55
Message-ID: 420831444.1077571.1425915895707.JavaMail.yahoo@mail.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Kevin Grittner <kgrittn(at)ymail(dot)com> wrote:

> It doesn't seem worth posting to the list for the small changes
> since the last version; I'll wait until I update the comments and
> README files. If you want review or test the latest, you can
> peek at:
>
> https://github.com/kgrittn/postgres/tree/btnopin

Here is v3, with the promised README and code comment changes.

In the process of documenting the mark/restore area I noticed a
subtlety that I had missed (in the case that there was a mark,
advance to the next page, restore, advance within the page, and
restore). I fixed that, and in the process gave the patched code
an additional direct performance edge over unpatched code. For the
1000k marks, average timings are now:

master: 970.999 ms, stdev: 4.043
patched: 940.460 ms, stdev: 4.874

So, in the micro-benchmark showing the biggest benefit the direct
improvement is now just over 3%. It remains the case that the
primary motivation for the patch is to reduce blocking of vacuum
processes; but that's a nice side-benefit.

--
Kevin Grittner
EDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

Attachment Content-Type Size
bt-nopin-v3.patch invalid/octet-stream 40.5 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2015-03-09 15:51:48 Re: Bootstrap DATA is a pita
Previous Message Andrew Dunstan 2015-03-09 15:42:57 Re: Object files generated by ecpg test suite not ignored on Windows