Wednesday, November 01, 2017

Re: Update: PostgreSQL 9.6.5 -> 10.0

On Wed, Nov 01, 2017 at 11:26:45AM -0700, Jeremy Evans wrote:
> This updates PostgreSQL from 9.6.5 to 10.0. Starting in 10.0,
> the versioning policy will change, so instead of 10.0.1, the
> next bugfix release will be 10.1, and the next feature release
> will be 11.0.
>
> There are many compelling reasons to upgrade, see:
>
> https://www.postgresql.org/about/news/1786/
> https://www.postgresql.org/docs/10/static/release-10.html
>
> The update is fairly straightforward, though I moved some things
> around in the PLISTs:
>
> * All python-dependent code moves to the -plpython subpackage,
> as it doesn't make sense to have plpython itself in -plpython,
> but hstore-plpython and ltree-plpython in -contrib.
>
> * Some server-specific programs such as pg_basebackup and
> pg_receivexlog (renamed to pg_receivewal) move from -client
> to -server, since they are only useful if you are running
> a PostgreSQL server.
>
> postgresql-previous gets updated from 9.5.5 to 9.6.5, and
> postgresql-pg_upgrade now depends on a postgresql-previous
> version that is at least greater than the previous major
> version, which should fix issues if someone runs
> "pkg_add postgresql-server".
>
> I've tried a pg_upgrade from 9.6 to 10 and didn't run into
> any problems, but it was on a very simple test database.
>
> Included at the bottom are necessary bumps for postgresql-pllua
> and postgresql-plv8, since those always depend on specific
> PostgreSQL versions.
>
> I've tried building some of the dependencies. citus needs an
> update to work with PostgreSQL 10, the diff to update to the
> latest citus version is included below. No other issues
> noticed yet, but I haven't finished building the dependencies
> for PostGIS.
>
> This should probably go into a bulk so we can see what the
> fallout is.
>

Hi Jeremy,

Thanks for your diff. Let me compare it with my own diff (i'm running pg 10 since beta 1).
Regards,


> Thanks,
> Jeremy
>
> Index: postgresql/Makefile
> ===================================================================
> RCS file: /cvs/ports/databases/postgresql/Makefile,v
> retrieving revision 1.229
> diff -u -p -u -p -r1.229 Makefile
> --- postgresql/Makefile 13 Sep 2017 14:24:08 -0000 1.229
> +++ postgresql/Makefile 1 Nov 2017 17:14:24 -0000
> @@ -7,8 +7,8 @@ COMMENT-contrib=PostgreSQL RDBMS contrib
> COMMENT-plpython=Python procedural language for PostgreSQL
> COMMENT-pg_upgrade=Support for upgrading PostgreSQL data from previous version
>
> -VERSION= 9.6.5
> -PREV_MAJOR= 9.5
> +VERSION= 10.0
> +PREV_MAJOR= 9.6
> DISTNAME= postgresql-${VERSION}
> PKGNAME-main= postgresql-client-${VERSION}
> PKGNAME-server= postgresql-server-${VERSION}
> @@ -18,10 +18,10 @@ PKGNAME-plpython=postgresql-plpython-${V
> PKGNAME-pg_upgrade=postgresql-pg_upgrade-${VERSION}
>
> CATEGORIES= databases
> -SHARED_LIBS= ecpg 7.8 \
> - ecpg_compat 4.8 \
> - pgtypes 4.7 \
> - pq 6.9
> +SHARED_LIBS= ecpg 7.9 \
> + ecpg_compat 4.9 \
> + pgtypes 4.8 \
> + pq 6.10
>
> HOMEPAGE= http://www.postgresql.org/
>
> @@ -96,10 +96,10 @@ WANTLIB-server= ${WANTLIB-main} perl pq>
> RUN_DEPENDS-contrib= databases/postgresql,-server=${VERSION}
> LIB_DEPENDS-contrib= databases/postgresql=${VERSION} \
> ${LIB_DEPENDS-main}
> -WANTLIB-contrib= ${WANTLIB-main} pq>=4
> +WANTLIB-contrib= ${WANTLIB-main} pq>=4 perl
>
> RUN_DEPENDS-pg_upgrade= databases/postgresql,-server=${VERSION} \
> - databases/postgresql-previous
> + databases/postgresql-previous>=${PREV_MAJOR}
> LIB_DEPENDS-pg_upgrade= databases/postgresql=${VERSION} \
> ${LIB_DEPENDS-main}
> WANTLIB-pg_upgrade= ${WANTLIB-main} pq>=4
> Index: postgresql/distinfo
> ===================================================================
> RCS file: /cvs/ports/databases/postgresql/distinfo,v
> retrieving revision 1.68
> diff -u -p -u -p -r1.68 distinfo
> --- postgresql/distinfo 13 Sep 2017 14:24:08 -0000 1.68
> +++ postgresql/distinfo 1 Nov 2017 14:12:43 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (postgresql-9.6.5.tar.gz) = eelgXTIbVFsu2d8Yrf0uUslQ3JNGtl6VJ/EXExYn3Ao=
> -SIZE (postgresql-9.6.5.tar.gz) = 25652523
> +SHA256 (postgresql-10.0.tar.gz) = hsg6Zkt3ARSGG8lqnso8Pv4owDhManHGEEJs1CsBZPs=
> +SIZE (postgresql-10.0.tar.gz) = 25830653
> Index: postgresql/patches/patch-src_backend_libpq_ip_c
> ===================================================================
> RCS file: /cvs/ports/databases/postgresql/patches/patch-src_backend_libpq_ip_c,v
> retrieving revision 1.2
> diff -u -p -u -p -r1.2 patch-src_backend_libpq_ip_c
> --- postgresql/patches/patch-src_backend_libpq_ip_c 13 Feb 2016 21:54:28 -0000 1.2
> +++ postgresql/patches/patch-src_backend_libpq_ip_c 1 Nov 2017 14:22:27 -0000
> @@ -3,9 +3,10 @@ $OpenBSD: patch-src_backend_libpq_ip_c,v
> Use the address family from the address, not from the netmask,
> since the latter is unreliable. Fixes "samenet"/"samehost".
>
> ---- src/backend/libpq/ip.c.orig Mon Feb 8 21:15:19 2016
> -+++ src/backend/libpq/ip.c Fri Feb 12 17:18:09 2016
> -@@ -423,17 +423,16 @@ run_ifaddr_callback(PgIfAddrCallback callback, void *c
> +Index: src/backend/libpq/ifaddr.c
> +--- src/backend/libpq/ifaddr.c.orig
> ++++ src/backend/libpq/ifaddr.c
> +@@ -200,17 +200,16 @@ run_ifaddr_callback(PgIfAddrCallback callback, void *c
> /* Check that the mask is valid */
> if (mask)
> {
> Index: postgresql/patches/patch-src_backend_storage_lmgr_s_lock_c
> ===================================================================
> RCS file: /cvs/ports/databases/postgresql/patches/patch-src_backend_storage_lmgr_s_lock_c,v
> retrieving revision 1.2
> diff -u -p -u -p -r1.2 patch-src_backend_storage_lmgr_s_lock_c
> --- postgresql/patches/patch-src_backend_storage_lmgr_s_lock_c 8 Jan 2015 15:01:11 -0000 1.2
> +++ postgresql/patches/patch-src_backend_storage_lmgr_s_lock_c 1 Nov 2017 14:21:21 -0000
> @@ -1,12 +1,13 @@
> $OpenBSD: patch-src_backend_storage_lmgr_s_lock_c,v 1.2 2015/01/08 15:01:11 pea Exp $
> ---- src/backend/storage/lmgr/s_lock.c.orig Sun May 11 14:16:48 2014
> -+++ src/backend/storage/lmgr/s_lock.c Thu May 15 21:52:50 2014
> -@@ -219,7 +219,7 @@ static void
> +Index: src/backend/storage/lmgr/s_lock.c
> +--- src/backend/storage/lmgr/s_lock.c.orig
> ++++ src/backend/storage/lmgr/s_lock.c
> +@@ -251,7 +251,7 @@ static void
> tas_dummy()
> {
> - __asm__ __volatile__(
> + __asm__ __volatile__(
> -#if defined(__NetBSD__) && defined(__ELF__)
> +#if (defined(__NetBSD__) || defined(__OpenBSD__)) && defined(__ELF__)
> /* no underscore for label and % for registers */
> - "\
> + "\
> .global tas \n\
> Index: postgresql/patches/patch-src_bin_scripts_vacuumdb_c
> ===================================================================
> RCS file: /cvs/ports/databases/postgresql/patches/patch-src_bin_scripts_vacuumdb_c,v
> retrieving revision 1.1
> diff -u -p -u -p -r1.1 patch-src_bin_scripts_vacuumdb_c
> --- postgresql/patches/patch-src_bin_scripts_vacuumdb_c 10 Sep 2016 13:03:41 -0000 1.1
> +++ postgresql/patches/patch-src_bin_scripts_vacuumdb_c 1 Nov 2017 14:21:21 -0000
> @@ -1,6 +1,7 @@
> $OpenBSD: patch-src_bin_scripts_vacuumdb_c,v 1.1 2016/09/10 13:03:41 ajacoutot Exp $
> ---- src/bin/scripts/vacuumdb.c.orig Sat Sep 10 10:37:08 2016
> -+++ src/bin/scripts/vacuumdb.c Sat Sep 10 10:38:12 2016
> +Index: src/bin/scripts/vacuumdb.c
> +--- src/bin/scripts/vacuumdb.c.orig
> ++++ src/bin/scripts/vacuumdb.c
> @@ -10,6 +10,8 @@
> *-------------------------------------------------------------------------
> */
> @@ -9,4 +10,4 @@ $OpenBSD: patch-src_bin_scripts_vacuumdb
> +
> #include "postgres_fe.h"
>
> - #include "common.h"
> + #ifdef HAVE_SYS_SELECT_H
> Index: postgresql/patches/patch-src_include_storage_s_lock_h
> ===================================================================
> RCS file: /cvs/ports/databases/postgresql/patches/patch-src_include_storage_s_lock_h,v
> retrieving revision 1.3
> diff -u -p -u -p -r1.3 patch-src_include_storage_s_lock_h
> --- postgresql/patches/patch-src_include_storage_s_lock_h 13 Feb 2016 21:54:28 -0000 1.3
> +++ postgresql/patches/patch-src_include_storage_s_lock_h 1 Nov 2017 14:21:21 -0000
> @@ -1,9 +1,10 @@
> $OpenBSD: patch-src_include_storage_s_lock_h,v 1.3 2016/02/13 21:54:28 sthen Exp $
> ---- src/include/storage/s_lock.h.orig Mon Feb 8 21:15:19 2016
> -+++ src/include/storage/s_lock.h Fri Feb 12 17:18:09 2016
> -@@ -749,6 +749,29 @@ typedef unsigned char slock_t;
> +Index: src/include/storage/s_lock.h
> +--- src/include/storage/s_lock.h.orig
> ++++ src/include/storage/s_lock.h
> +@@ -693,6 +693,29 @@ typedef unsigned char slock_t;
> + do { __asm__ __volatile__("" : : : "memory"); *(lock) = 0; } while (0)
>

No comments:

Post a Comment