pgsql: Add GUC and storage parameter to set the maximum size of GIN pen - Mailing list pgsql-committers

From Fujii Masao
Subject pgsql: Add GUC and storage parameter to set the maximum size of GIN pen
Date
Msg-id E1XoAH5-0004Yb-IG@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Add GUC and storage parameter to set the maximum size of GIN pending list.

Previously the maximum size of GIN pending list was controlled only by
work_mem. But the reasonable value of work_mem and the reasonable size
of the list are basically not the same, so it was not appropriate to
control both of them by only one GUC, i.e., work_mem. This commit
separates new GUC, pending_list_cleanup_size, from work_mem to allow
users to control only the size of the list.

Also this commit adds pending_list_cleanup_size as new storage parameter
to allow users to specify the size of the list per index. This is useful,
for example, when users want to increase the size of the list only for
the GIN index which can be updated heavily, and decrease it otherwise.

Reviewed by Etsuro Fujita.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/a1b395b6a26ae80cde17fdfd2def8d351872f399

Modified Files
--------------
doc/src/sgml/config.sgml                      |   21 +++++++++++++++++
doc/src/sgml/gin.sgml                         |   30 ++++++++++++++++---------
doc/src/sgml/gist.sgml                        |    2 +-
doc/src/sgml/ref/cluster.sgml                 |    2 +-
doc/src/sgml/ref/create_index.sgml            |   21 ++++++++++++-----
src/backend/access/common/reloptions.c        |    8 +++++++
src/backend/access/gin/ginfast.c              |    9 ++++++--
src/backend/access/gin/ginutil.c              |    4 +++-
src/backend/utils/misc/guc.c                  |   19 +++++++++-------
src/backend/utils/misc/postgresql.conf.sample |    1 +
src/bin/psql/tab-complete.c                   |    2 +-
src/include/access/gin.h                      |    3 ++-
src/include/access/gin_private.h              |    6 +++++
src/include/utils/guc.h                       |    8 +++++++
src/test/regress/expected/create_index.out    |   13 +++++++++++
src/test/regress/sql/create_index.sql         |    7 ++++++
16 files changed, 125 insertions(+), 31 deletions(-)


pgsql-committers by date:

Previous
From: Heikki Linnakangas
Date:
Subject: pgsql: Really fix compilation failure on MIPS.
Next
From: Fujii Masao
Date:
Subject: pgsql: Add generate_series(numeric, numeric).