jdc0589 25 minutes ago

I wish this was around 5 or 6 years ago when I was writing a direct native consumer of a logical replication slot, also in Go coincidentally. It's way easier to do natively with Postgres than I'd have guessed, but still a bit of a PITA. I wish I still had access to that code to do a side-by-side.

This looks great by comparison from what I remember though.

tudorg an hour ago

Great to see pgstream on HN!

Besides DDL changes, pgstream can also do on-the-fly data anonymization and data masking. It can stream to other stores, like Elasticsearch, but the current main focus is on PG to PG replication with DDL changes and anonymization.

We've been using it in Xata to power our `xata clone` functionality, which creates a "staging replica" on the Xata platform, with anonymized data that closely resembles production. Then one gets fast copy-on-write branching from this anonymized staging replica. This is great for creating dev branches and ephemeral environments.