From 9aeff092c05820d6a9252d7a3f8db86f71f2205f Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Thu, 26 Jan 2023 09:13:39 +0900 Subject: [PATCH] Revert "Rename contrib module basic_archive to basic_wal_module" This reverts commit 0ad3c60, as per feedback from Tom Lane, Robert Haas and Andres Freund. The new name used for the module had little support. This moves back to basic_archive as module name, and we will likely use that as template for recovery modules, as well. Discussion: https://postgr.es/m/CA+TgmoYG5uGOp7DGFT5gzC1kKFWGjkLSj_wOQxGhfMcvVEiKGA@mail.gmail.com --- contrib/Makefile | 2 +- .../.gitignore | 0 .../Makefile | 14 ++++---- .../basic_archive.c} | 26 +++++++------- contrib/basic_archive/basic_archive.conf | 4 +++ .../expected/basic_archive.out} | 0 contrib/basic_archive/meson.build | 34 +++++++++++++++++++ .../sql/basic_archive.sql} | 0 .../basic_wal_module/basic_wal_module.conf | 4 --- contrib/basic_wal_module/meson.build | 34 ------------------- contrib/meson.build | 2 +- .../sgml/appendix-obsolete-basic-archive.sgml | 25 -------------- doc/src/sgml/appendix-obsolete.sgml | 1 - doc/src/sgml/archive-modules.sgml | 2 +- ...sic-wal-module.sgml => basic-archive.sgml} | 30 ++++++++-------- doc/src/sgml/contrib.sgml | 2 +- doc/src/sgml/filelist.sgml | 3 +- 17 files changed, 78 insertions(+), 105 deletions(-) rename contrib/{basic_wal_module => basic_archive}/.gitignore (100%) rename contrib/{basic_wal_module => basic_archive}/Makefile (55%) rename contrib/{basic_wal_module/basic_wal_module.c => basic_archive/basic_archive.c} (93%) create mode 100644 contrib/basic_archive/basic_archive.conf rename contrib/{basic_wal_module/expected/basic_wal_module.out => basic_archive/expected/basic_archive.out} (100%) create mode 100644 contrib/basic_archive/meson.build rename contrib/{basic_wal_module/sql/basic_wal_module.sql => basic_archive/sql/basic_archive.sql} (100%) delete mode 100644 contrib/basic_wal_module/basic_wal_module.conf delete mode 100644 contrib/basic_wal_module/meson.build delete mode 100644 doc/src/sgml/appendix-obsolete-basic-archive.sgml rename doc/src/sgml/{basic-wal-module.sgml => basic-archive.sgml} (64%) diff --git a/contrib/Makefile b/contrib/Makefile index 98acaf8690..bbf220407b 100644 --- a/contrib/Makefile +++ b/contrib/Makefile @@ -9,7 +9,7 @@ SUBDIRS = \ amcheck \ auth_delay \ auto_explain \ - basic_wal_module \ + basic_archive \ basebackup_to_shell \ bloom \ btree_gin \ diff --git a/contrib/basic_wal_module/.gitignore b/contrib/basic_archive/.gitignore similarity index 100% rename from contrib/basic_wal_module/.gitignore rename to contrib/basic_archive/.gitignore diff --git a/contrib/basic_wal_module/Makefile b/contrib/basic_archive/Makefile similarity index 55% rename from contrib/basic_wal_module/Makefile rename to contrib/basic_archive/Makefile index 1f88aaf469..55d299d650 100644 --- a/contrib/basic_wal_module/Makefile +++ b/contrib/basic_archive/Makefile @@ -1,11 +1,11 @@ -# contrib/basic_wal_module/Makefile +# contrib/basic_archive/Makefile -MODULES = basic_wal_module -PGFILEDESC = "basic_wal_module - basic write-ahead log module" +MODULES = basic_archive +PGFILEDESC = "basic_archive - basic archive module" -REGRESS = basic_wal_module -REGRESS_OPTS = --temp-config $(top_srcdir)/contrib/basic_wal_module/basic_wal_module.conf -# Disabled because these tests require "shared_preload_libraries=basic_wal_module", +REGRESS = basic_archive +REGRESS_OPTS = --temp-config $(top_srcdir)/contrib/basic_archive/basic_archive.conf +# Disabled because these tests require "shared_preload_libraries=basic_archive", # which typical installcheck users do not have (e.g. buildfarm clients). NO_INSTALLCHECK = 1 @@ -14,7 +14,7 @@ PG_CONFIG = pg_config PGXS := $(shell $(PG_CONFIG) --pgxs) include $(PGXS) else -subdir = contrib/basic_wal_module +subdir = contrib/basic_archive top_builddir = ../.. include $(top_builddir)/src/Makefile.global include $(top_srcdir)/contrib/contrib-global.mk diff --git a/contrib/basic_wal_module/basic_wal_module.c b/contrib/basic_archive/basic_archive.c similarity index 93% rename from contrib/basic_wal_module/basic_wal_module.c rename to contrib/basic_archive/basic_archive.c index 78c36656a8..3d29711a31 100644 --- a/contrib/basic_wal_module/basic_wal_module.c +++ b/contrib/basic_archive/basic_archive.c @@ -1,6 +1,6 @@ /*------------------------------------------------------------------------- * - * basic_wal_module.c + * basic_archive.c * * This file demonstrates a basic archive library implementation that is * roughly equivalent to the following shell command: @@ -20,7 +20,7 @@ * Copyright (c) 2022-2023, PostgreSQL Global Development Group * * IDENTIFICATION - * contrib/basic_wal_module/basic_wal_module.c + * contrib/basic_archive/basic_archive.c * *------------------------------------------------------------------------- */ @@ -41,7 +41,7 @@ PG_MODULE_MAGIC; static char *archive_directory = NULL; -static MemoryContext basic_wal_module_context; +static MemoryContext basic_archive_context; static bool basic_archive_configured(void); static bool basic_archive_file(const char *file, const char *path); @@ -57,7 +57,7 @@ static bool compare_files(const char *file1, const char *file2); void _PG_init(void) { - DefineCustomStringVariable("basic_wal_module.archive_directory", + DefineCustomStringVariable("basic_archive.archive_directory", gettext_noop("Archive file destination directory."), NULL, &archive_directory, @@ -66,11 +66,11 @@ _PG_init(void) 0, check_archive_directory, NULL, NULL); - MarkGUCPrefixReserved("basic_wal_module"); + MarkGUCPrefixReserved("basic_archive"); - basic_wal_module_context = AllocSetContextCreate(TopMemoryContext, - "basic_wal_module", - ALLOCSET_DEFAULT_SIZES); + basic_archive_context = AllocSetContextCreate(TopMemoryContext, + "basic_archive", + ALLOCSET_DEFAULT_SIZES); } /* @@ -156,7 +156,7 @@ basic_archive_file(const char *file, const char *path) * we can easily reset it during error recovery (thus avoiding memory * leaks). */ - oldcontext = MemoryContextSwitchTo(basic_wal_module_context); + oldcontext = MemoryContextSwitchTo(basic_archive_context); /* * Since the archiver operates at the bottom of the exception stack, @@ -183,7 +183,7 @@ basic_archive_file(const char *file, const char *path) /* Reset our memory context and switch back to the original one */ MemoryContextSwitchTo(oldcontext); - MemoryContextReset(basic_wal_module_context); + MemoryContextReset(basic_archive_context); /* Remove our exception handler */ PG_exception_stack = NULL; @@ -206,7 +206,7 @@ basic_archive_file(const char *file, const char *path) /* Reset our memory context and switch back to the original one */ MemoryContextSwitchTo(oldcontext); - MemoryContextReset(basic_wal_module_context); + MemoryContextReset(basic_archive_context); return true; } @@ -221,7 +221,7 @@ basic_archive_file_internal(const char *file, const char *path) uint64 epoch; /* milliseconds */ ereport(DEBUG3, - (errmsg("archiving \"%s\" via basic_wal_module", file))); + (errmsg("archiving \"%s\" via basic_archive", file))); snprintf(destination, MAXPGPATH, "%s/%s", archive_directory, file); @@ -285,7 +285,7 @@ basic_archive_file_internal(const char *file, const char *path) (void) durable_rename(temp, destination, ERROR); ereport(DEBUG1, - (errmsg("archived \"%s\" via basic_wal_module", file))); + (errmsg("archived \"%s\" via basic_archive", file))); } /* diff --git a/contrib/basic_archive/basic_archive.conf b/contrib/basic_archive/basic_archive.conf new file mode 100644 index 0000000000..7c82a4b82b --- /dev/null +++ b/contrib/basic_archive/basic_archive.conf @@ -0,0 +1,4 @@ +archive_mode = on +archive_library = 'basic_archive' +basic_archive.archive_directory = '.' +wal_level = replica diff --git a/contrib/basic_wal_module/expected/basic_wal_module.out b/contrib/basic_archive/expected/basic_archive.out similarity index 100% rename from contrib/basic_wal_module/expected/basic_wal_module.out rename to contrib/basic_archive/expected/basic_archive.out diff --git a/contrib/basic_archive/meson.build b/contrib/basic_archive/meson.build new file mode 100644 index 0000000000..bc1380e6f6 --- /dev/null +++ b/contrib/basic_archive/meson.build @@ -0,0 +1,34 @@ +# Copyright (c) 2022-2023, PostgreSQL Global Development Group + +basic_archive_sources = files( + 'basic_archive.c', +) + +if host_system == 'windows' + basic_archive_sources += rc_lib_gen.process(win32ver_rc, extra_args: [ + '--NAME', 'basic_archive', + '--FILEDESC', 'basic_archive - basic archive module',]) +endif + +basic_archive = shared_module('basic_archive', + basic_archive_sources, + kwargs: contrib_mod_args, +) +contrib_targets += basic_archive + +tests += { + 'name': 'basic_archive', + 'sd': meson.current_source_dir(), + 'bd': meson.current_build_dir(), + 'regress': { + 'sql': [ + 'basic_archive', + ], + 'regress_args': [ + '--temp-config', files('basic_archive.conf'), + ], + # Disabled because these tests require "shared_preload_libraries=basic_archive", + # which typical runningcheck users do not have (e.g. buildfarm clients). + 'runningcheck': false, + }, +} diff --git a/contrib/basic_wal_module/sql/basic_wal_module.sql b/contrib/basic_archive/sql/basic_archive.sql similarity index 100% rename from contrib/basic_wal_module/sql/basic_wal_module.sql rename to contrib/basic_archive/sql/basic_archive.sql diff --git a/contrib/basic_wal_module/basic_wal_module.conf b/contrib/basic_wal_module/basic_wal_module.conf deleted file mode 100644 index 9a4ffacf68..0000000000 --- a/contrib/basic_wal_module/basic_wal_module.conf +++ /dev/null @@ -1,4 +0,0 @@ -archive_mode = on -archive_library = 'basic_wal_module' -basic_wal_module.archive_directory = '.' -wal_level = replica diff --git a/contrib/basic_wal_module/meson.build b/contrib/basic_wal_module/meson.build deleted file mode 100644 index 59939d71c4..0000000000 --- a/contrib/basic_wal_module/meson.build +++ /dev/null @@ -1,34 +0,0 @@ -# Copyright (c) 2022-2023, PostgreSQL Global Development Group - -basic_wal_module_sources = files( - 'basic_wal_module.c', -) - -if host_system == 'windows' - basic_wal_module_sources += rc_lib_gen.process(win32ver_rc, extra_args: [ - '--NAME', 'basic_wal_module', - '--FILEDESC', 'basic_wal_module - basic write-ahead log module',]) -endif - -basic_wal_module = shared_module('basic_wal_module', - basic_wal_module_sources, - kwargs: contrib_mod_args, -) -contrib_targets += basic_wal_module - -tests += { - 'name': 'basic_wal_module', - 'sd': meson.current_source_dir(), - 'bd': meson.current_build_dir(), - 'regress': { - 'sql': [ - 'basic_wal_module', - ], - 'regress_args': [ - '--temp-config', files('basic_wal_module.conf'), - ], - # Disabled because these tests require "shared_preload_libraries=basic_wal_module", - # which typical runningcheck users do not have (e.g. buildfarm clients). - 'runningcheck': false, - }, -} diff --git a/contrib/meson.build b/contrib/meson.build index 2db77a18d7..bd4a57c43c 100644 --- a/contrib/meson.build +++ b/contrib/meson.build @@ -11,7 +11,7 @@ subdir('adminpack') subdir('amcheck') subdir('auth_delay') subdir('auto_explain') -subdir('basic_wal_module') +subdir('basic_archive') subdir('bloom') subdir('basebackup_to_shell') subdir('bool_plperl') diff --git a/doc/src/sgml/appendix-obsolete-basic-archive.sgml b/doc/src/sgml/appendix-obsolete-basic-archive.sgml deleted file mode 100644 index 5070b3b6ab..0000000000 --- a/doc/src/sgml/appendix-obsolete-basic-archive.sgml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - <command>basic_archive</command> renamed to <command>basic_wal_module</command> - - - basic_archive - basic_wal_module - - - - PostgreSQL 15 provided an archive module named - basic_archive - basic_archive. - This module was renamed to basic_wal_module. See - for documentation of - basic_wal_module, and see - the release notes for PostgreSQL 16 - for details on this change. - - - diff --git a/doc/src/sgml/appendix-obsolete.sgml b/doc/src/sgml/appendix-obsolete.sgml index 87c1b1020d..b1a00c8ce6 100644 --- a/doc/src/sgml/appendix-obsolete.sgml +++ b/doc/src/sgml/appendix-obsolete.sgml @@ -38,6 +38,5 @@ &obsolete-pgxlogdump; &obsolete-pgresetxlog; &obsolete-pgreceivexlog; - &obsolete-basic-archive; diff --git a/doc/src/sgml/archive-modules.sgml b/doc/src/sgml/archive-modules.sgml index 1a32006e2c..ef02051f7f 100644 --- a/doc/src/sgml/archive-modules.sgml +++ b/doc/src/sgml/archive-modules.sgml @@ -32,7 +32,7 @@ - The contrib/basic_wal_module module contains a working + The contrib/basic_archive module contains a working example, which demonstrates some useful techniques. diff --git a/doc/src/sgml/basic-wal-module.sgml b/doc/src/sgml/basic-archive.sgml similarity index 64% rename from doc/src/sgml/basic-wal-module.sgml rename to doc/src/sgml/basic-archive.sgml index c418b01eb8..b4d43ced20 100644 --- a/doc/src/sgml/basic-wal-module.sgml +++ b/doc/src/sgml/basic-archive.sgml @@ -1,16 +1,16 @@ - + - - basic_wal_module — an example write-ahead log module + + basic_archive — an example WAL archive module - - basic_wal_module + + basic_archive - basic_wal_module is an example of an archive module. - This module copies completed WAL segment files to the specified directory. - This may not be especially useful, but it can serve as a starting point for + basic_archive is an example of an archive module. This + module copies completed WAL segment files to the specified directory. This + may not be especially useful, but it can serve as a starting point for developing your own archive module. For more information about archive modules, see . @@ -21,15 +21,15 @@ must be enabled. - + Configuration Parameters - basic_wal_module.archive_directory (string) + basic_archive.archive_directory (string) - basic_wal_module.archive_directory configuration parameter + basic_archive.archive_directory configuration parameter @@ -52,12 +52,12 @@ # postgresql.conf archive_mode = 'on' -archive_library = 'basic_wal_module' -basic_wal_module.archive_directory = '/path/to/archive/directory' +archive_library = 'basic_archive' +basic_archive.archive_directory = '/path/to/archive/directory' - + Notes @@ -70,7 +70,7 @@ basic_wal_module.archive_directory = '/path/to/archive/directory' - + Author diff --git a/doc/src/sgml/contrib.sgml b/doc/src/sgml/contrib.sgml index 3225284eea..12c79b798b 100644 --- a/doc/src/sgml/contrib.sgml +++ b/doc/src/sgml/contrib.sgml @@ -105,7 +105,7 @@ CREATE EXTENSION extension_name; &auth-delay; &auto-explain; &basebackup-to-shell; - &basic-wal-module; + &basic-archive; &bloom; &btree-gin; &btree-gist; diff --git a/doc/src/sgml/filelist.sgml b/doc/src/sgml/filelist.sgml index 2d36c34ce8..0d6be9a2fa 100644 --- a/doc/src/sgml/filelist.sgml +++ b/doc/src/sgml/filelist.sgml @@ -116,7 +116,7 @@ - + @@ -200,4 +200,3 @@ - -- 2.39.5