aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2007-11-16 03:23:07 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2007-11-16 03:23:07 +0000
commitfb8b38e4bf324787d090f77261441bf13b02a69c (patch)
tree0f33554f9b88168d7d26d8ec5630efe0ecc227ac
parentf639df0d612628bc56d9c422badeb0893fb5928e (diff)
downloadpostgresql-fb8b38e4bf324787d090f77261441bf13b02a69c.tar.gz
postgresql-fb8b38e4bf324787d090f77261441bf13b02a69c.zip
Add a couple of notes pointing out that GIN index build time is very
sensitive to maintenance_work_mem (something I just learned the hard way).
-rw-r--r--doc/src/sgml/gin.sgml17
-rw-r--r--doc/src/sgml/textsearch.sgml9
2 files changed, 22 insertions, 4 deletions
diff --git a/doc/src/sgml/gin.sgml b/doc/src/sgml/gin.sgml
index 61a3f0f4ec1..1b7f105ac56 100644
--- a/doc/src/sgml/gin.sgml
+++ b/doc/src/sgml/gin.sgml
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/gin.sgml,v 2.12 2007/11/13 23:36:26 tgl Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/gin.sgml,v 2.13 2007/11/16 03:23:07 tgl Exp $ -->
<chapter id="GIN">
<title>GIN Indexes</title>
@@ -162,6 +162,17 @@
</varlistentry>
<varlistentry>
+ <term><xref linkend="guc-maintenance-work-mem"></term>
+ <listitem>
+ <para>
+ Build time for a <acronym>GIN</acronym> index is very sensitive to
+ the <varname>maintenance_work_mem</> setting; it doesn't pay to
+ skimp on work memory during index creation.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
<term><xref linkend="guc-gin-fuzzy-search-limit"></term>
<listitem>
<para>
@@ -177,8 +188,8 @@
</para>
<para>
To facilitate controlled execution of such queries
- <acronym>GIN</acronym> has a configurable soft upper limit on the size
- of the returned set, the
+ <acronym>GIN</acronym> has a configurable soft upper limit on the
+ number of rows returned, the
<varname>gin_fuzzy_search_limit</varname> configuration parameter.
It is set to 0 (meaning no limit) by default.
If a non-zero limit is set, then the returned set is a subset of
diff --git a/doc/src/sgml/textsearch.sgml b/doc/src/sgml/textsearch.sgml
index 0a153c465cd..b43872cca5c 100644
--- a/doc/src/sgml/textsearch.sgml
+++ b/doc/src/sgml/textsearch.sgml
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/textsearch.sgml,v 1.35 2007/11/14 23:48:55 tgl Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/textsearch.sgml,v 1.36 2007/11/16 03:23:07 tgl Exp $ -->
<chapter id="textsearch">
<title id="textsearch-title">Full Text Search</title>
@@ -3257,6 +3257,13 @@ EXPLAIN SELECT * FROM apod WHERE textsearch @@ to_tsquery('supernovae');
</para>
<para>
+ Note that <acronym>GIN</acronym> index build time can often be improved
+ by increasing <xref linkend="guc-maintenance-work-mem">, while
+ <acronym>GiST</acronym> index build time is not sensitive to that
+ parameter.
+ </para>
+
+ <para>
Partitioning of big collections and the proper use of GiST and GIN indexes
allows the implementation of very fast searches with online update.
Partitioning can be done at the database level using table inheritance