pgsql: Change hash index creation so that rather than always

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Change hash index creation so that rather than always
Date: 2008-03-15 20:46:32
Message-ID: 20080315204632.0AB917558DB@cvs.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Change hash index creation so that rather than always establishing exactly
two buckets at the start, we create a number of buckets appropriate for the
estimated size of the table. This avoids a lot of expensive bucket-split
actions during initial index build on an already-populated table.

This is one of the two core ideas of Tom Raney and Shreya Bhargava's patch
to reduce hash index build time. I'm committing it separately to make it
easier for people to test the effects of this separately from the effects
of their other core idea (pre-sorting the index entries by bucket number).

Modified Files:
--------------
pgsql/src/backend/access/hash:
README (r1.6 -> r1.7)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/hash/README?r1=1.6&r2=1.7)
hash.c (r1.98 -> r1.99)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/hash/hash.c?r1=1.98&r2=1.99)
hashpage.c (r1.72 -> r1.73)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/hash/hashpage.c?r1=1.72&r2=1.73)
pgsql/src/backend/optimizer/util:
plancat.c (r1.140 -> r1.141)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/util/plancat.c?r1=1.140&r2=1.141)
pgsql/src/include/access:
hash.h (r1.84 -> r1.85)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/access/hash.h?r1=1.84&r2=1.85)
pgsql/src/include/optimizer:
plancat.h (r1.47 -> r1.48)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/plancat.h?r1=1.47&r2=1.48)

Browse pgsql-committers by date

  From Date Subject
Next Message Magnus Hagander 2008-03-16 16:42:44 pgsql: Some cleanups of enum-guc code, per comments from Tom.
Previous Message User Nanardon 2008-03-15 13:43:29 pgrpm - pgrpm: - don't use rpmds to fetch dependencies, then supporting