From ab032128d60e3692d683ad53734daf81ad444a3e1c83362602cecd7706fb4855 Mon Sep 17 00:00:00 2001 From: Reinhard Max Date: Mon, 15 May 2023 14:53:16 +0000 Subject: [PATCH] - Change the unix domain socket location from /var/run to /run. OBS-URL: https://build.opensuse.org/package/show/server:database:postgresql/postgresql14?expand=0&rev=52 --- postgresql-README.SUSE | 80 --------------------------------- postgresql-var-run-socket.patch | 4 +- postgresql14.changes | 1 + postgresql14.spec | 2 - 4 files changed, 3 insertions(+), 84 deletions(-) delete mode 100644 postgresql-README.SUSE diff --git a/postgresql-README.SUSE b/postgresql-README.SUSE deleted file mode 100644 index 2fbea8e..0000000 --- a/postgresql-README.SUSE +++ /dev/null @@ -1,80 +0,0 @@ -Unix-Domain Socket Directory -============================ - - - -Upgrading PostgreSQL on openSUSE and SUSE Linux Enterprise Server -================================================================= - -Current versions of PostgreSQL come with the pg_upgrade tool that -simplifies and speeds up the migration of a PostgreSQL installation to -a new version. Before version 9.1 dump and restore was needed which -was much slower. - -pg_upgrade needs to have the server binaries of both versions -available. To allow this, we had to change the way PostgreSQL is -packaged as well as the naming of the packages, so that two or more -versions of PostgreSQL can be installed in parallel. The package -names for PostgreSQL contain numbers indicating the major version. - -In PostgreSQL terms for versions up to 9.6 the major version consisted -of the first two components of the three-component version number, -i.e. 8.3, 8.4, 9.0, or 9.1. So, the packages for Postgresql 9.1 are -named postgresql91, postgresql91-server, etc. Inside the packages the -files were moved from their standard locations to a versioned location -such as /usr/lib/postgresql83/bin or /usr/lib/postgresql91/bin to -avoid file conflicts if packages are installed in parallel. - -Starting with version 10 the PostgreSQL project changed their -versioning scheme from from three components to two, which means one -component for the major version and one for the minor. So, the -sequence of major version across the versioning scheme change will be: -9.4, 9.5, 9.6, 10, 11, 12. For versions that use the new versioning -scheme SUSE only puts the single component major version into the -package name, so the postgresql96 package (containg version 9.6 -according to the old versioning scheme) will be followed by -postgresql10, then postgresql11, and so on. - -The update-alternatives mechanism creates and maintains symbolic links -that cause one version (by default the highest installed version) to -re-appear in the standard locations. By default, database data are -stored under /var/lib/pgsql/data on SUSE Linux. - -The following preconditions have to be fulfilled before data migration -can be started: - - 1. If not already done, the packages of the old PostgreSQL version - must be upgraded to the new packaging scheme through a maintenance - update. - - 2. The packages of the new PostgreSQL major version need to be - installed. As pg_upgrade is contained in postgresql91-contrib, that - one has to be installed as well, at least until the migration is - done. - - 3. Unless pg_upgrade is used in link mode, the server must have - enough free disk space to temporarily hold a copy of the database - files. If the database instance was installed in the default - location, the needed space in megabytes can be determined by running - the follwing command as root: "du -hs /var/lib/pgsql/data". If space - is tight, it might help to run the "VACUUM FULL" SQL command on each - database in the instance to be migrated, but be aware that it might - take very long. - -The latest upstream documentation for pg_upgrade including step by -step instructions for performing a database migration can be found -online under https://www.postgresql.org/docs/current/pgupgrade.html , -or locally under -file:///usr/share/doc/packages/postgresqlXX/html/pgupgrade.html , if -the postgresqlXX-docs package is installed. XX is a place holder for -the respective major version here. - -NOTE: The online documentation starts with explaining how you can -install PostgreSQL from the upstream sources (which is not necessary -when you install the SUSE RPMs) and also uses other directory names -(/usr/local instead of the update-alternatives based path as described -above). - -For background information about the inner workings of pg_upgrade and -a performance comparison with the old dump and restore method, see -http://momjian.us/main/writings/pgsql/pg_upgrade.pdf . diff --git a/postgresql-var-run-socket.patch b/postgresql-var-run-socket.patch index 0b95562..aeffa51 100644 --- a/postgresql-var-run-socket.patch +++ b/postgresql-var-run-socket.patch @@ -1,4 +1,4 @@ -Change the built-in default socket directory to be /var/run/postgresql. +Change the built-in default socket directory to be /run/postgresql. For backwards compatibility with (probably non-libpq-based) clients that might still expect to find the socket in /tmp, also create a socket in /tmp. This is to resolve communication problems with clients operating @@ -48,7 +48,7 @@ Index: src/include/pg_config_manual.h */ #ifndef WIN32 -#define DEFAULT_PGSOCKET_DIR "/tmp" -+#define DEFAULT_PGSOCKET_DIR "/var/run/postgresql" ++#define DEFAULT_PGSOCKET_DIR "/run/postgresql" #else #define DEFAULT_PGSOCKET_DIR "" #endif diff --git a/postgresql14.changes b/postgresql14.changes index e2286d6..641c82e 100644 --- a/postgresql14.changes +++ b/postgresql14.changes @@ -3,6 +3,7 @@ Mon May 15 14:21:03 UTC 2023 - Reinhard Max - Overhaul postgresql-README.SUSE and move it from the binary package to the noarch wrapper package. +- Change the unix domain socket location from /var/run to /run. ------------------------------------------------------------------- Wed May 10 12:58:22 UTC 2023 - Reinhard Max diff --git a/postgresql14.spec b/postgresql14.spec index 843cf3a..3359467 100644 --- a/postgresql14.spec +++ b/postgresql14.spec @@ -156,7 +156,6 @@ Release: 0 Source0: https://ftp.postgresql.org/pub/source/v%{tarversion}/postgresql-%{tarversion}.tar.bz2 Source1: https://ftp.postgresql.org/pub/source/v%{tarversion}/postgresql-%{tarversion}.tar.bz2.sha256 Source2: baselibs.conf -Source3: postgresql-README.SUSE Source17: postgresql-rpmlintrc Patch1: postgresql-conf.patch # PL/Perl needs to be linked with rpath (bsc#578053) @@ -630,7 +629,6 @@ install -d -m 750 %buildroot/var/lib/pgsql install -d -m755 %buildroot%pgdocdir cp doc/KNOWN_BUGS doc/MISSING_FEATURES COPYRIGHT \ README HISTORY %buildroot%pgdocdir -cp -a %SOURCE3 %buildroot%pgdocdir/README.SUSE # Use versioned names for the man pages: for f in %buildroot%pgmandir/man*/*; do mv $f ${f}pg%pgmajor