Replication issue diagnostics #304
Draft
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.
This uses the persisted timestamp for last commit/keepalive to report replication issues in the diagnostics API.
If the replication stream is idle, a new keepalive should be performed once every minute. This means we cannot test more granular than that, but this should report cases where:
However, this will not detect cases where the replication process makes progress but falls behind. For those cases, monitor the
powersync_replication_lag_seconds
metric instead.This change also reduces the Postgres keepalive message interval from 5 minutes to 1 minute. We already have a different keepalive mechanism in MongoDB doing the same.
TODO: