From: | Greg Stark <stark(at)mit(dot)edu> |
---|---|
To: | Andrew Gierth <andrew(at)tao11(dot)riddles(dot)org(dot)uk> |
Cc: | Jeff Janes <jeff(dot)janes(at)gmail(dot)com>, Mark Kirkwood <mark(dot)kirkwood(at)catalyst(dot)net(dot)nz>, Kisung Kim <kskim(at)bitnine(dot)net>, Lukas Fittl <lukas(at)fittl(dot)com>, PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Btree Index on PostgreSQL and Wiredtiger (MongoDB3.2) |
Date: | 2016-08-13 00:39:30 |
Message-ID: | CAM-w4HNyLQAoeDMKAv_d64pOueaD5fkuDgGHnWv2n_+TzwE33w@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Sat, Aug 13, 2016 at 1:18 AM, Andrew Gierth
<andrew(at)tao11(dot)riddles(dot)org(dot)uk> wrote:
>
> Hmm? The code in _bt_findsplitloc and _bt_checksplitloc doesn't seem to
> agree with this.
>
> (Inserting on the high leaf page is a special case, which is where the
> fillfactor logic kicks in; that's why sequentially filled indexes are
> (by default) 90% full rather than 100%. But other pages split into
> roughly equal halves.)
Hm, I was going from this lore. I didn't realize it was only for
inserts near the end of the index. That's cleverer than I realized.
commit 1663f3383849968415d29965ef9bfdf5aac4d358
Author: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Date: Sat Sep 29 23:49:51 2001 +0000
Tweak btree page split logic so that when splitting a page that is
rightmost on its tree level, we split 2/3 to the left and 1/3 to the
new right page, rather than the even split we use elsewhere. The idea
is that when faced with a steadily increasing series of inserted keys
(such as sequence or timestamp values), we'll end up with a btree that's
about 2/3ds full not 1/2 full, which is much closer to the desired
steady-state load for a btree. Per suggestion from Ann Harrison of
IBPhoenix.
--
greg
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2016-08-13 00:54:21 | Re: Add hint for function named "is" |
Previous Message | Andrew Gierth | 2016-08-13 00:18:34 | Re: Btree Index on PostgreSQL and Wiredtiger (MongoDB3.2) |