Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DBZ-1082 Add docs for write_recovery snapshot mode #241

Closed
wants to merge 1 commit into from

Conversation

addisonj
Copy link

This adds details for the write_recovery snapshot mode as well as a
concise description of how it works and it's limitations.

See the issue for the linked code changes.

This adds details for the write_recovery snapshot mode as well as a
concise description of how it works and it's limitations.

See the issue for the linked code changes.
addisonj pushed a commit to instructure/debezium that referenced this pull request Jan 16, 2019
This commit adds a new snapshot mode to postgres connector, WRITE_RECOVERY,
which is intended to allow the user to recover the writes in the event
of a lost postgres replication slot.

This works by keeping track of the "catalog_xmin" from the replication
slot and then using this to find any records that may have changed in
the event of losing a slot by searching for records only more
recent than the last known `catalog_xmin`

See the docs PR for more details: debezium/debezium.github.io#241

Just to re-iterate on the limitations of this:
- It only gurantees you see the latest version of `INSERT` and `UPDATE`
opreations, `DELETE` may still be missed
- It may miss intermediate row states, in the event of multiple changes
to a row during the time period we are recovering from
@gunnarmorling
Copy link
Member

Hey @addisonj, I'm going to close this one for the time being, as per our discussion on the PR in core and the different route this should take. Thanks a lot for your efforts and looking forward to the new SPI-based approach.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants