pgsql: Allow archiving via loadable modules.

Поиск
Список
Период
Сортировка
От Robert Haas
Тема pgsql: Allow archiving via loadable modules.
Дата
Msg-id E1nFhTB-0006Ib-DD@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Allow archiving via loadable modules.

Running a shell command for each file to be archived has a lot of
overhead and may not offer as much error checking as you want, or the
exact semantics that you want. So, offer the option to call a loadable
module for each file to be archived, rather than running a shell command.

Also, add a 'basic_archive' contrib module as an example implementation
that archives to a local directory.

Nathan Bossart, with a little bit of kibitzing by me.

Discussion: http://postgr.es/m/20220202224433.GA1036711@nathanxps13

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/5ef1eefd76f404ddc59b885d50340e602b70f05f

Modified Files
--------------
contrib/Makefile                                 |   1 +
contrib/basic_archive/.gitignore                 |   4 +
contrib/basic_archive/Makefile                   |  20 ++
contrib/basic_archive/basic_archive.c            | 371 +++++++++++++++++++++++
contrib/basic_archive/basic_archive.conf         |   3 +
contrib/basic_archive/expected/basic_archive.out |  29 ++
contrib/basic_archive/sql/basic_archive.sql      |  22 ++
doc/src/sgml/archive-modules.sgml                | 136 +++++++++
doc/src/sgml/backup.sgml                         |  85 ++++--
doc/src/sgml/basic-archive.sgml                  |  81 +++++
doc/src/sgml/config.sgml                         |  37 ++-
doc/src/sgml/contrib.sgml                        |   1 +
doc/src/sgml/filelist.sgml                       |   2 +
doc/src/sgml/high-availability.sgml              |   6 +-
doc/src/sgml/postgres.sgml                       |   1 +
doc/src/sgml/ref/pg_basebackup.sgml              |   4 +-
doc/src/sgml/ref/pg_receivewal.sgml              |   6 +-
doc/src/sgml/wal.sgml                            |   2 +-
src/backend/access/transam/xlog.c                |   2 +-
src/backend/postmaster/pgarch.c                  | 110 ++++++-
src/backend/postmaster/shell_archive.c           |  24 +-
src/backend/utils/init/miscinit.c                |   1 +
src/backend/utils/misc/guc.c                     |  12 +-
src/backend/utils/misc/postgresql.conf.sample    |   3 +
src/include/access/xlog.h                        |   1 -
src/include/postmaster/pgarch.h                  |  38 ++-
26 files changed, 938 insertions(+), 64 deletions(-)


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

Предыдущее
От: Andres Freund
Дата:
Сообщение: Re: pgsql: Further fix for EvalPlanQual with mix of local and foreign parti
Следующее
От: Robert Haas
Дата:
Сообщение: pgsql: In basic_archive tests, insist on wal_level='replica'.