pgsql: Avoid having autovacuum workers wait for relation locks.

Поиск
Список
Период
Сортировка
От Robert Haas
Тема pgsql: Avoid having autovacuum workers wait for relation locks.
Дата
Msg-id E1Pmdsi-0001wG-DQ@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Avoid having autovacuum workers wait for relation locks.

Waiting for relation locks can lead to starvation - it pins down an
autovacuum worker for as long as the lock is held.  But if we're doing
an anti-wraparound vacuum, then we still wait; maintenance can no longer
be put off.

To assist with troubleshooting, if log_autovacuum_min_duration >= 0,
we log whenever an autovacuum or autoanalyze is skipped for this reason.

Per a gripe by Josh Berkus, and ensuing discussion.

Branch
------
master

Details
-------
http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=32896c40ca766146312b28a5a0eb3f66ca0300ed

Modified Files
--------------
doc/src/sgml/config.sgml            |    5 +++-
src/backend/commands/analyze.c      |   15 ++++++++++++-
src/backend/commands/vacuum.c       |   39 ++++++++++++++++++++++++++--------
src/backend/postmaster/autovacuum.c |   14 +++++++++--
src/include/nodes/parsenodes.h      |    3 +-
5 files changed, 61 insertions(+), 15 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Heikki Linnakangas
Дата:
Сообщение: pgsql: Oops, forgot to bump catversion in the Serializable Snapshot Iso
Следующее
От: Heikki Linnakangas
Дата:
Сообщение: pgsql: Fix copy-pasto in description of pg_serial, and silence compiler