From: | tgl(at)postgresql(dot)org (Tom Lane) |
---|---|
To: | pgsql-committers(at)postgresql(dot)org |
Subject: | pgsql: Prevent synchronous scan during GIN index build, because GIN is |
Date: | 2008-11-13 17:42:10 |
Message-ID: | 20081113174210.4F2EC7545A4@cvs.postgresql.org |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Log Message:
-----------
Prevent synchronous scan during GIN index build, because GIN is optimized
for inserting tuples in increasing TID order. It's not clear whether this
fully explains Ivan Sergio Borgonovo's complaint, but simple testing
confirms that a scan that doesn't start at block 0 can slow GIN build by
a factor of three or four.
Backpatch to 8.3. Sync scan didn't exist before that.
Modified Files:
--------------
pgsql/src/backend/access/gin:
gininsert.c (r1.15 -> r1.16)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/gin/gininsert.c?r1=1.15&r2=1.16)
pgsql/src/backend/access/gist:
gist.c (r1.153 -> r1.154)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/gist/gist.c?r1=1.153&r2=1.154)
pgsql/src/backend/access/hash:
hash.c (r1.106 -> r1.107)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/hash/hash.c?r1=1.106&r2=1.107)
pgsql/src/backend/access/nbtree:
nbtree.c (r1.164 -> r1.165)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/nbtree/nbtree.c?r1=1.164&r2=1.165)
pgsql/src/backend/catalog:
index.c (r1.307 -> r1.308)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/index.c?r1=1.307&r2=1.308)
pgsql/src/include/catalog:
index.h (r1.75 -> r1.76)
(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/index.h?r1=1.75&r2=1.76)
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2008-11-13 17:42:19 | pgsql: Prevent synchronous scan during GIN index build, because GIN is |
Previous Message | Peter Eisentraut | 2008-11-13 15:59:51 | pgsql: array_agg aggregate function, as per SQL:2008, but without ORDER |