aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access/gist/gist.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2008-11-13 17:42:19 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2008-11-13 17:42:19 +0000
commitb608b24245cb3acffac6f596107a8ffab6880ae6 (patch)
tree25705a494e620874c68418e94015954f3184d789 /src/backend/access/gist/gist.c
parent940c412d7fe1ac9fc779d4f3f181f4928da90ba6 (diff)
downloadpostgresql-b608b24245cb3acffac6f596107a8ffab6880ae6.tar.gz
postgresql-b608b24245cb3acffac6f596107a8ffab6880ae6.zip
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.
Diffstat (limited to 'src/backend/access/gist/gist.c')
-rw-r--r--src/backend/access/gist/gist.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/backend/access/gist/gist.c b/src/backend/access/gist/gist.c
index 91b8fe4d055..26f3ddbf853 100644
--- a/src/backend/access/gist/gist.c
+++ b/src/backend/access/gist/gist.c
@@ -8,7 +8,7 @@
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/access/gist/gist.c,v 1.149 2008/01/01 19:45:46 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/access/gist/gist.c,v 1.149.2.1 2008/11/13 17:42:18 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -147,7 +147,7 @@ gistbuild(PG_FUNCTION_ARGS)
buildstate.tmpCtx = createTempGistContext();
/* do the heap scan */
- reltuples = IndexBuildHeapScan(heap, index, indexInfo,
+ reltuples = IndexBuildHeapScan(heap, index, indexInfo, true,
gistbuildCallback, (void *) &buildstate);
/* okay, all heap tuples are indexed */