ok.
On 2026/07/08 17:20, Jeremy Evans wrote:
> On 07/08 08:19, Stuart Henderson wrote:
> > Ah yes, that works (and will give a file closer to the previous unmodified
> > version in some cases).
> >
> > --
> > Sent from a phone, apologies for poor formatting.
> >
> > On 8 July 2026 16:33:30 Jeremy Evans <[email protected]> wrote:
> >
> > > On 07/08 11:15, Stuart Henderson wrote:
> > > > On 2026/07/08 10:26, Olivier Cherrier wrote:
> > > > > ??? Hello,
> > > > >
> > > > > While upgrading using method 1 (dump / restore),
> > > > > the 'postgresql-pg_upgrade' pkg is not installed.
> > > > >
> > > > > Please see attached patch.
> > > >
> > > > > @@ -120,7 +120,7 @@ Examine your old file for local changes
> > > > > (/var/postgresql/data/postgresql.conf). The following command may
> > > > > help
> > > > > identify them:
> > > > >
> > > > > -# diff -wu
> > > > ${LOCALBASE}/share/postgresql-${PREV_MAJOR}/postgresql.conf.sample \
> > > > > +# diff -wu ${LOCALBASE}/share/postgresql/postgresql.conf.sample \
> > > > > /var/postgresql/data-${PREV_MAJOR}/postgresql.conf
> > > >
> > > > It's probably better to install postgresql-pg_upgrade. This will allow
> > > > comparing the live config file against a default one with fewer
> > > > differences as it's from a more similar version. e.g.
> > >
> > > I don't think we should recommend pg_upgrade in the non-pg_upgrade case.
> > > I think we should move the configuration difference instructions before
> > > pkg_add -ui. Then we don't need pg_upgrade. What are your thoughts on
> > > that?
>
> OKs/change requests for the following patch?
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/databases/postgresql/Makefile,v
> retrieving revision 1.320
> diff -u -p -u -p -r1.320 Makefile
> --- Makefile 8 Jul 2026 12:41:59 -0000 1.320
> +++ Makefile 9 Jul 2026 00:17:39 -0000
> @@ -6,7 +6,7 @@ COMMENT-plpython=Python procedural langu
> COMMENT-pg_upgrade=Support for upgrading PostgreSQL data from previous
> version
>
> VERSION= 18.4
> -REVISION-main= 0
> +REVISION-main= 1
> PREV_MAJOR= 17
> DISTNAME= postgresql-${VERSION}
> PKGNAME-main= postgresql-client-${VERSION}
> Index: pkg/README-server
> ===================================================================
> RCS file: /cvs/ports/databases/postgresql/pkg/README-server,v
> retrieving revision 1.39
> diff -u -p -u -p -r1.39 README-server
> --- pkg/README-server 22 Jan 2026 01:24:20 -0000 1.39
> +++ pkg/README-server 9 Jul 2026 00:17:39 -0000
> @@ -90,43 +90,43 @@ Option 1: Dump and Restore
> This will work for any upgrade from any major version of PostgreSQL
> to the current version.
>
> -1) Backup all your data:
> +1) Determine local PostgreSQL configuration changes:
> +# diff -wu ${LOCALBASE}/share/postgresql/postgresql.conf.sample \
> + /var/postgresql/data/postgresql.conf | \
> + tee /var/postgresql/data/postgresql.conf.diff
> +
> +2) Backup all your data:
> # su _postgresql -c "cd /var/postgresql && \
> pg_dumpall -U postgres > /var/postgresql/full.sqldump"
>
> -2) Shutdown the server:
> +3) Shutdown the server:
> # rcctl stop postgresql
>
> -3) Upgrade your PostgreSQL package with pkg_add.
> +4) Upgrade your PostgreSQL package with pkg_add.
> # pkg_add -ui postgresql-server
>
> -4) Backup your old data directory and rename:
> +5) Backup your old data directory and rename:
> # cd /var/postgresql && tar cf - data | gzip -1 > data.tar.gz
> # mv /var/postgresql/data /var/postgresql/data-${PREV_MAJOR}
>
> -5) Create a new data directory:
> +6) Create a new data directory:
> # su _postgresql -c "mkdir /var/postgresql/data"
> # su _postgresql -c "cd /var/postgresql && \
> initdb -D /var/postgresql/data -U postgres -A scram-sha-256 -E UTF8 -W"
>
> -6) Restore your old pg_hba.conf and (if used) SSL certificates
> +7) Restore your old pg_hba.conf and (if used) SSL certificates
> # su _postgresql -c \
> "cp /var/postgresql/data-${PREV_MAJOR}/pg_hba.conf /var/postgresql/data/"
> # su _postgresql -c \
> "cp /var/postgresql/data-${PREV_MAJOR}/server.{crt,key}
> /var/postgresql/data/"
>
> -Some postgresql.conf settings changed or disappeared in this version.
> -Examine your old file for local changes and apply them to the new version
> -(/var/postgresql/data/postgresql.conf). The following command may help
> -identify them:
> -
> -# diff -wu
> ${LOCALBASE}/share/postgresql-${PREV_MAJOR}/postgresql.conf.sample \
> - /var/postgresql/data-${PREV_MAJOR}/postgresql.conf
> +8) Apply configuration changes using the diff file created in step 1:
> +# $EDITOR /var/postgresql/data/postgresql.conf
>
> -7) Start PostgreSQL:
> +9) Start PostgreSQL:
> # rcctl start postgresql
>
> -8) Restore your data:
> +10) Restore your data:
> # su _postgresql -c "cd /var/postgresql && \
> psql -U postgres < /var/postgresql/full.sqldump"
>