[3.0.8 Backport] Oneshot replications should wait for DCP to catch up on changes feed

Description

We need to wait to have channel grant sequences to come over DCP before we backfill a channel on the changes feed.

As it stands one shot replication take the same approach to this situation as continuous feeds. Continuous will skip over this until we receive the sequence in question over dcp so the validFrom seqno (highseqno on cahce) will cover it. This approach is fine for continuous feeds as we expect that there will be a retry of the above after we get the sequence over dcp as the replication in question will continue running. But for oneshot feeds this can cause issues, we can end up sipping backfill on a channel due to bad timing of not receiving the grant sequence over dcp and thus documents in a particular channel could be missed off replication.

Propose a solution where we block on replication to wait for this sequence to come over dcp to finish the replication.

In a customer saw this case and are asking for this to be fixed.

Activity

Show:

CB robot June 7, 2023 at 11:15 PM

Build sync_gateway-3.0.8-3 contains sync_gateway commit e3d9fac with commit message:
(3.0.8 backport) Allow one-shot replications to wait for DCP to catch up on changes feed (#6284)

Fixed
Pinned fields
Click on the next to a field label to start pinning.

Details

Assignee

Reporter

Story Points

Components

Sprint

Fix versions

Priority

Instabug

Open Instabug

PagerDuty

Sentry

Zendesk Support

Created April 14, 2023 at 10:34 AM
Updated August 31, 2024 at 11:00 AM
Resolved June 8, 2023 at 12:12 AM
Instabug