Hi All,
Thanks for having such a great mailing list. I hope I'm sending to the correct distribution.
I will start with describing my current architecture and where do I use logical replication.
I have several nodes each running a postgres-sql database. Each of these nodes has an API server which uses the database in order to retrieve data.
I recently created an aggregated node which according to the logical replication documentation is a common use-case "Consolidating
multiple databases into a single one (for example for analytical purposes)."
The aggregation node also has an API server and should serve
the same use cases as a regular node serves but with aggregated information.
My question is about schema upgrades. As very well documented logical replication does not replicate schema changes,
thus all schema modifications should be done on both regular-nodes and aggregated-node.
Here are my constraints and relaxation points:
I started with a naive approach:
My next approach was to let the logical replication "drain" until there are no changes in the database and then
upgrading all of the nodes, but this breaks constraint #2.
What is the correct way to perform such an operation?
Is there a way to keep constraint #1 or the only option is to not allow "breaking" schema changes between versions.
Thank you,
Dan.
|