pg.ddx.io pgsql-admin@postgresql.org mailing list archive
help / color / mirror / Atom feedUpgrading 9.6.9 to 10.4
7+ messages / 3 participants
[nested] [flat]
* Upgrading 9.6.9 to 10.4
@ 2018-06-26 22:37 John Scalia <jayknowsunix@gmail.com>
0 siblings, 1 reply; 7+ messages in thread
From: John Scalia @ 2018-06-26 22:37 UTC (permalink / raw)
To: pgsql-admin@lists.postgresql.org
Hi all,
My employer is in the process of upgrading PostgreSQL, and they would like me to make this happen without any real interruption of service. As I understand it, 9.6 does not support the publish/subscribe model like 10.4 does, but logical replication is the basis of that model. So, does anyone have any suggestions for how to implement the receiver side on a 10.4 server? Or could you at least point me to some sort of how-to page?
TIA,
Jay
Sent from my iPad
^ permalink raw reply [nested|flat] 7+ messages in thread
* Re: Upgrading 9.6.9 to 10.4
@ 2018-06-26 22:47 David Morton <david.morton@eroad.com>
parent: John Scalia <jayknowsunix@gmail.com>
0 siblings, 3 replies; 7+ messages in thread
From: David Morton @ 2018-06-26 22:47 UTC (permalink / raw)
To: John Scalia <jayknowsunix@gmail.com>; pgsql-admin@lists.postgresql.org <pgsql-admin@lists.postgresql.org>
Take a look at pglogical ... we've used it for 9.4 -> 9.6 and the same theories apply going to 10.x I imagine. People have used it in combination with pgbouncer to achieve near outage-less upgrades. Some helpful links below:
https://blog.2ndquadrant.com/pglogical-logical-replication-postgresql-10/
https://blog.2ndquadrant.com/near-zero-downtime-automated-upgrades-postgresql-clusters-cloud/
https://blog.2ndquadrant.com/near-zero-downtime-automated-upgrades-postgresql-clusters-cloud-part-ii...
On 27/06/18, 10:38 AM, "John Scalia" <jayknowsunix@gmail.com> wrote:
Hi all,
My employer is in the process of upgrading PostgreSQL, and they would like me to make this happen without any real interruption of service. As I understand it, 9.6 does not support the publish/subscribe model like 10.4 does, but logical replication is the basis of that model. So, does anyone have any suggestions for how to implement the receiver side on a 10.4 server? Or could you at least point me to some sort of how-to page?
TIA,
Jay
Sent from my iPad
^ permalink raw reply [nested|flat] 7+ messages in thread
* Re: Upgrading 9.6.9 to 10.4
@ 2018-06-27 00:01 John Scalia <jayknowsunix@gmail.com>
parent: David Morton <david.morton@eroad.com>
2 siblings, 0 replies; 7+ messages in thread
From: John Scalia @ 2018-06-27 00:01 UTC (permalink / raw)
To: David Morton <david.morton@eroad.com>; +Cc: pgsql-admin@lists.postgresql.org <pgsql-admin@lists.postgresql.org>
Thanks, David
Sent from my iPad
> On Jun 26, 2018, at 6:47 PM, David Morton <david.morton@eroad.com> wrote:
>
> Take a look at pglogical ... we've used it for 9.4 -> 9.6 and the same theories apply going to 10.x I imagine. People have used it in combination with pgbouncer to achieve near outage-less upgrades. Some helpful links below:
> https://blog.2ndquadrant.com/pglogical-logical-replication-postgresql-10/
> https://blog.2ndquadrant.com/near-zero-downtime-automated-upgrades-postgresql-clusters-cloud/
> https://blog.2ndquadrant.com/near-zero-downtime-automated-upgrades-postgresql-clusters-cloud-part-ii...
>
>
> On 27/06/18, 10:38 AM, "John Scalia" <jayknowsunix@gmail.com> wrote:
>
> Hi all,
>
> My employer is in the process of upgrading PostgreSQL, and they would like me to make this happen without any real interruption of service. As I understand it, 9.6 does not support the publish/subscribe model like 10.4 does, but logical replication is the basis of that model. So, does anyone have any suggestions for how to implement the receiver side on a 10.4 server? Or could you at least point me to some sort of how-to page?
>
> TIA,
> Jay
>
>
> Sent from my iPad
>
>
^ permalink raw reply [nested|flat] 7+ messages in thread
* Re: Upgrading 9.6.9 to 10.4
@ 2018-06-27 14:13 John Scalia <jayknowsunix@gmail.com>
parent: David Morton <david.morton@eroad.com>
2 siblings, 0 replies; 7+ messages in thread
From: John Scalia @ 2018-06-27 14:13 UTC (permalink / raw)
To: David Morton <david.morton@eroad.com>; +Cc: pgsql-admin@lists.postgresql.org <pgsql-admin@lists.postgresql.org>
I managed to download the sources for the pglogical extension and successfully built it for my 9.6.9 instance. I then tried issuing a “make clean”, then reset the PATH setting, so it could find version 10, but the “make USE_PGXS=1” then failed with:
pglogical_output_plugin.h:20:30: fatal error: pglogical_compat.h: No such file or directory
But I do see the required file in the compat10 sub directory, so why can’t make find it?
Sent from my iPhone
> On Jun 26, 2018, at 6:47 PM, David Morton <david.morton@eroad.com> wrote:
>
> Take a look at pglogical ... we've used it for 9.4 -> 9.6 and the same theories apply going to 10.x I imagine. People have used it in combination with pgbouncer to achieve near outage-less upgrades. Some helpful links below:
> https://blog.2ndquadrant.com/pglogical-logical-replication-postgresql-10/
> https://blog.2ndquadrant.com/near-zero-downtime-automated-upgrades-postgresql-clusters-cloud/
> https://blog.2ndquadrant.com/near-zero-downtime-automated-upgrades-postgresql-clusters-cloud-part-ii...
>
>
> On 27/06/18, 10:38 AM, "John Scalia" <jayknowsunix@gmail.com> wrote:
>
> Hi all,
>
> My employer is in the process of upgrading PostgreSQL, and they would like me to make this happen without any real interruption of service. As I understand it, 9.6 does not support the publish/subscribe model like 10.4 does, but logical replication is the basis of that model. So, does anyone have any suggestions for how to implement the receiver side on a 10.4 server? Or could you at least point me to some sort of how-to page?
>
> TIA,
> Jay
>
>
> Sent from my iPad
>
>
^ permalink raw reply [nested|flat] 7+ messages in thread
* Re: Upgrading 9.6.9 to 10.4
@ 2018-06-27 19:53 John Scalia <jayknowsunix@gmail.com>
parent: David Morton <david.morton@eroad.com>
2 siblings, 1 reply; 7+ messages in thread
From: John Scalia @ 2018-06-27 19:53 UTC (permalink / raw)
To: David Morton <david.morton@eroad.com>; +Cc: pgsql-admin@lists.postgresql.org <pgsql-admin@lists.postgresql.org>
Ok, I figured out why the Makefile is broken for pglogical for PostgreSQL V.10. The pg_config utility returned 10.4 for the line setting Makefile parameter PGVER. Adding a simple “| cut -c1-2 to that line allows the Makefile to run for 9.6 and 10.4, probably other versions as well.
There are compile problems, however, in several source files. I don’t have the code in front of me, but one doing heap work calls replorigin_drop with a single argument, but that changed in V10 to need 2 args. Fairly easy to fix that one.
Another source calls ExecARUpdateTriggers, and its friends Insert and Delete, those signatures have changed as well, and I haven’t yet figured out how to alter pglogical for compiling these.
If anyone reading here is from 2nd Quadrant,I’m curious if this is actually being maintained. I did post these as an issue on github.
—
Jay
Sent from my iPad
> On Jun 26, 2018, at 6:47 PM, David Morton <david.morton@eroad.com> wrote:
>
> Take a look at pglogical ... we've used it for 9.4 -> 9.6 and the same theories apply going to 10.x I imagine. People have used it in combination with pgbouncer to achieve near outage-less upgrades. Some helpful links below:
> https://blog.2ndquadrant.com/pglogical-logical-replication-postgresql-10/
> https://blog.2ndquadrant.com/near-zero-downtime-automated-upgrades-postgresql-clusters-cloud/
> https://blog.2ndquadrant.com/near-zero-downtime-automated-upgrades-postgresql-clusters-cloud-part-ii...
>
>
> On 27/06/18, 10:38 AM, "John Scalia" <jayknowsunix@gmail.com> wrote:
>
> Hi all,
>
> My employer is in the process of upgrading PostgreSQL, and they would like me to make this happen without any real interruption of service. As I understand it, 9.6 does not support the publish/subscribe model like 10.4 does, but logical replication is the basis of that model. So, does anyone have any suggestions for how to implement the receiver side on a 10.4 server? Or could you at least point me to some sort of how-to page?
>
> TIA,
> Jay
>
>
> Sent from my iPad
>
>
^ permalink raw reply [nested|flat] 7+ messages in thread
* Re: Upgrading 9.6.9 to 10.4
@ 2018-07-11 16:36 Michael Banck <michael.banck@credativ.de>
parent: John Scalia <jayknowsunix@gmail.com>
0 siblings, 1 reply; 7+ messages in thread
From: Michael Banck @ 2018-07-11 16:36 UTC (permalink / raw)
To: John Scalia <jayknowsunix@gmail.com>; +Cc: David Morton <david.morton@eroad.com>; pgsql-admin@lists.postgresql.org <pgsql-admin@lists.postgresql.org>
Hi John,
On Wed, Jun 27, 2018 at 03:53:20PM -0400, John Scalia wrote:
> Ok, I figured out why the Makefile is broken for pglogical for
> PostgreSQL V.10. The pg_config utility returned 10.4 for the line
> setting Makefile parameter PGVER. Adding a simple “| cut -c1-2 to that
> line allows the Makefile to run for 9.6 and 10.4, probably other
> versions as well.
(10.4 isn't a major version, it's the fourth minor/patch release of the
v10 major version).
If you don't have the `| cut -c 1-2' in your Makefile then you're
probably looking at the wrong branch, the pglogical master branch on
github is stale, you need (for reasons that escape me) the REL2_x_STABLE
branch. Or probably the 2.2.0 release tarball would work just as fine.
> There are compile problems, however, in several source files. I don’t
> have the code in front of me, but one doing heap work calls
> replorigin_drop with a single argument, but that changed in V10 to
> need 2 args. Fairly easy to fix that one.
>
> Another source calls ExecARUpdateTriggers, and its friends Insert and
> Delete, those signatures have changed as well, and I haven’t yet
> figured out how to alter pglogical for compiling these.
I assume those failues are addressed in the above branch/release as
well, but I have not verified that.
Cheers
Michael
--
Michael Banck
Projektleiter / Senior Berater
Tel.: +49 2166 9901-171
Fax: +49 2166 9901-100
Email: michael.banck@credativ.de
credativ GmbH, HRB Mönchengladbach 12080
USt-ID-Nummer: DE204566209
Trompeterallee 108, 41189 Mönchengladbach
Geschäftsführung: Dr. Michael Meskes, Jörg Folz, Sascha Heuer
Unser Umgang mit personenbezogenen Daten unterliegt
folgenden Bestimmungen: https://www.credativ.de/datenschutz
^ permalink raw reply [nested|flat] 7+ messages in thread
* Re: Upgrading 9.6.9 to 10.4
@ 2018-07-11 16:54 John Scalia <jayknowsunix@gmail.com>
parent: Michael Banck <michael.banck@credativ.de>
0 siblings, 0 replies; 7+ messages in thread
From: John Scalia @ 2018-07-11 16:54 UTC (permalink / raw)
To: Michael Banck <michael.banck@credativ.de>; +Cc: David Morton <david.morton@eroad.com>; pgsql-admin@lists.postgresql.org <pgsql-admin@lists.postgresql.org>
Tried several branches including the one you specified. None of them mentioned the newly revised PostgreSQL functions that were causing the compilation to break. I did manage to alter the code so it will now build with either 9.6 or the 10.4 instance. Was just sharing my experience as it was certainly broken prior.
Sent from my iPhone
> On Jul 11, 2018, at 12:36 PM, Michael Banck <michael.banck@credativ.de> wrote:
>
> Hi John,
>
>> On Wed, Jun 27, 2018 at 03:53:20PM -0400, John Scalia wrote:
>> Ok, I figured out why the Makefile is broken for pglogical for
>> PostgreSQL V.10. The pg_config utility returned 10.4 for the line
>> setting Makefile parameter PGVER. Adding a simple “| cut -c1-2 to that
>> line allows the Makefile to run for 9.6 and 10.4, probably other
>> versions as well.
>
> (10.4 isn't a major version, it's the fourth minor/patch release of the
> v10 major version).
>
> If you don't have the `| cut -c 1-2' in your Makefile then you're
> probably looking at the wrong branch, the pglogical master branch on
> github is stale, you need (for reasons that escape me) the REL2_x_STABLE
> branch. Or probably the 2.2.0 release tarball would work just as fine.
>
>> There are compile problems, however, in several source files. I don’t
>> have the code in front of me, but one doing heap work calls
>> replorigin_drop with a single argument, but that changed in V10 to
>> need 2 args. Fairly easy to fix that one.
>>
>> Another source calls ExecARUpdateTriggers, and its friends Insert and
>> Delete, those signatures have changed as well, and I haven’t yet
>> figured out how to alter pglogical for compiling these.
>
> I assume those failues are addressed in the above branch/release as
> well, but I have not verified that.
>
>
> Cheers
>
> Michael
>
> --
> Michael Banck
> Projektleiter / Senior Berater
> Tel.: +49 2166 9901-171
> Fax: +49 2166 9901-100
> Email: michael.banck@credativ.de
>
> credativ GmbH, HRB Mönchengladbach 12080
> USt-ID-Nummer: DE204566209
> Trompeterallee 108, 41189 Mönchengladbach
> Geschäftsführung: Dr. Michael Meskes, Jörg Folz, Sascha Heuer
>
> Unser Umgang mit personenbezogenen Daten unterliegt
> folgenden Bestimmungen: https://www.credativ.de/datenschutz
^ permalink raw reply [nested|flat] 7+ messages in thread
end of thread, other threads:[~2018-07-11 16:54 UTC | newest]
Thread overview: 7+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2018-06-26 22:37 Upgrading 9.6.9 to 10.4 John Scalia <jayknowsunix@gmail.com>
2018-06-26 22:47 ` David Morton <david.morton@eroad.com>
2018-06-27 00:01 ` John Scalia <jayknowsunix@gmail.com>
2018-06-27 14:13 ` John Scalia <jayknowsunix@gmail.com>
2018-06-27 19:53 ` John Scalia <jayknowsunix@gmail.com>
2018-07-11 16:36 ` Michael Banck <michael.banck@credativ.de>
2018-07-11 16:54 ` John Scalia <jayknowsunix@gmail.com>
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox