I’m evaluating using sync gateway 2.0 with our couchbase lite 1.5 based iOS client because in our use case we don’t need revision history, which is killing our replication performance with sync gateway 1.5. I have sync gateway 2.0 setup with allow_conflicts=false and revs_limit=1. This appears to work ok for replicating updates, but for some reason, when I delete a document via sync gateway, the tombstone is not getting replicated to the client, even if it’s running continuous replication. Stopping and starting replication doesn’t help either. Is this a known issue?
I tried this again with revs_limit=2 instead of 1 and it works. Is it the intent with a setting of ‘1’ that deletes aren’t tracked?
Setting revs_limit to 1 eliminates the ability to track the revision history. That means whenever CBL gets a new revision from SG it doesn’t know what its ancestry is, so it saves it as a conflict. And deletions always lose conflicts, so they’re effectively ignored.
Don’t set revs_limit to 1.
Thanks for the clarification. From a conflict resolution standpoint, what I want to achieve is ‘last update/delete wins’. Looking at this doc: https://developer.couchbase.com/documentation/mobile/1.5/training/develop/adding-synchronization/index.html#resolve-conflicts
Would I need to implement a live query that monitors for conflicts and that applies this simple resolution strategy?