pg: reset seq num in replication after commit msg #597
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Untracked transaction are intended to have a sequence number of -1, indicating there was no sequence update, which is used by transactions from a
pg.DB
instance to correlate WAL data updates with a certain transaction.This commit fixes the replication monitor to work correctly with concurrent untracked transactions by, such as those from the event store:
seq
var to -1 in thecaptureRepl
loop after each commitseq
still -1 (not updated by an untracked transaction), do NOT send the commit ID on the channelThis also beefs up the logging and error handling in unexpected cases, which corresponds to improper use of
replMon
methods or concurrent (ab)use of the sentry table to break correct transaction sequencing.@charithabandi Pls rebase
spam-test
on this branch to test.