Обсуждение: pgsql: Reduce lock levels of some ALTER TABLE cmds

Поиск
Список
Период
Сортировка

pgsql: Reduce lock levels of some ALTER TABLE cmds

От
Simon Riggs
Дата:
Reduce lock levels of some ALTER TABLE cmds

VALIDATE CONSTRAINT

CLUSTER ON
SET WITHOUT CLUSTER

ALTER COLUMN SET STATISTICS
ALTER COLUMN SET ()
ALTER COLUMN RESET ()

All other sub-commands use AccessExclusiveLock

Simon Riggs and Noah Misch

Reviews by Robert Haas and Andres Freund

Branch
------
master

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

Modified Files
--------------
doc/src/sgml/mvcc.sgml                    |    9 +-
doc/src/sgml/ref/alter_table.sgml         |   38 ++++++-
src/backend/catalog/toasting.c            |   51 ++++++---
src/backend/commands/cluster.c            |   14 +--
src/backend/commands/createas.c           |    4 +-
src/backend/commands/tablecmds.c          |  174 ++++++++++++++++++-----------
src/backend/tcop/utility.c                |    4 +-
src/backend/utils/adt/ruleutils.c         |   33 +++++-
src/backend/utils/cache/relcache.c        |   74 ++++++++++--
src/include/catalog/toasting.h            |    8 +-
src/test/isolation/isolation_schedule     |    1 +
src/test/regress/expected/alter_table.out |   81 ++++++++++++--
src/test/regress/sql/alter_table.sql      |   29 +++++
13 files changed, 401 insertions(+), 119 deletions(-)