jackc / pglogrepl

PostgreSQL logical replication library for Go.
MIT License
336 stars 63 forks source link

v2, to support pgx/v5 #45

Closed wttw closed 2 years ago

wttw commented 2 years ago

This adds a v2 version that's identical to v1 but uses the pgx/v5 versions of pgconn and pgproto.

Tests pass with PostgreSQL versions 10 through 15.

pglogrepl_demo works with PostgreSQL 14 and 15. I've not tested pgphysrepl_demo.

I'm not particularly happy with SendStandbyCopyDone(). It seems to work, but I know the timeline/LSN returned case isn't tested.

closes #37

jackc commented 2 years ago

👍 on supporting pgx v5.

But I'm reluctant to make it v2. That implies more stability in the semver sense than I'm comfortable with. pglogrepl hasn't had a v1 release for a reason -- there are still occasional breaking changes -- and there are few enough active users that I'm not confident that the API is correct.

I'm not sure that merging it straight into master is the right answer either ... but it is pre-v1 so there aren't any semver guarantees.

wttw commented 2 years ago

Yeah. Maybe fork the current version as pglogrepl4, then update pglogrepl master to require pgx/v5? That doesn't leave current users with a pgx/v4 codebase entirely out in the cold.

I've created PR #46 with the same changes applied to master.