Обсуждение: pgsql: Refactor relation opening for VACUUM and ANALYZE

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

pgsql: Refactor relation opening for VACUUM and ANALYZE

От
Michael Paquier
Дата:
Refactor relation opening for VACUUM and ANALYZE

VACUUM and ANALYZE share similar logic when it comes to opening a
relation to work on in terms of how the relation is opened, in which
order locks are tried and how logs should be generated when something
does not work as expected.

This commit refactors things so as both use the same code path to handle
the way a relation is opened, so as the integration of new options
becomes easier.

Author: Michael Paquier
Reviewed-by: Nathan Bossart
Discussion: https://postgr.es/m/20180927075152.GT1659@paquier.xyz

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/e3a25ab9ea56ac540dc683cdf6f6a4b923bd22be

Modified Files
--------------
src/backend/commands/analyze.c |  55 ++------------
src/backend/commands/vacuum.c  | 169 ++++++++++++++++++++++++++---------------
src/include/commands/vacuum.h  |   2 +
3 files changed, 117 insertions(+), 109 deletions(-)