Hacker News new | ask | show | jobs
by comboy 2045 days ago
May I ask why do you care about that setting?

edit: I thought they support "replica" but not "logical" thus the question

4 comments

Without logical replication you're effectively locked in the same way people talk about Oracle lock-in. If you have any sizable amount of data you'd have to do a dump/restore to get it out which would be a change of data size operation. For 100 GB of data you're looking at 1-3 hrs depending, for 1 TB you'd be looking at a day probably.

Logical replication allows you to create replication slots and send it to other places. It does allow for more interesting things as well. One really common use case (not even migrating off) is change data capture out of Postgres into Kafka leveraging Debezium. In older versions of Postgres you could use wal2json for this, now more more recent versions with logical replication supported the pgoutput plugin is great here.

Upgrades are a thing, but in place upgrades can be fully captured without logical replication. The short is though they are limiting a lot of what Postgres can do by not supporting it.

It's unclear to me why they don't support this. RDS has had it since years, Azure Postgres added support for Debezium recently (we helped a bit with that), Heroku has it, but Postgres on GCP is missing support for logical replication and thus Debezium. I'm subscribed to the feature request (https://issuetracker.google.com/issues/70756171), it's upvoted by users weekly, if not more often.

Disclaimer: I'm the lead of Debezium

mostly because it' makes a lot of stuff easier. like database upgrades (no downtime), especially when google gives zero fucks in implementing pg_upgrade support. also everything that @craigkerstiens said. (shamlessly point to his text)
My favourite feature of logical is to push some data from master to partial replicas for closer geo-proximty on read queries.
It's required for logical replication which is an important feature for downtimeless major version upgrades and more interesting replication topologies, change data capture, etc.