Details
-
Bug
-
Resolution: Fixed
-
Blocker
-
3.1.0
-
Security Level: Public
Description
This has found by running a test in iOS : https://github.com/couchbase/couchbase-lite-ios/blob/master/Objective-C/Tests/DatabaseTest.m#L1534-L1564. The test failed as it is waiting for both push and pull replicator to be IDLE. It turns out pull replicator just went to stopped instead of idle.
I have debugged and it turned out there is a bug in `Replicator::computeActivityLevel()` that causes the following line to get executed when the continuous pull replicator is idle.
https://github.com/couchbase/couchbase-lite-core/blob/master/Replicator/Replicator.cc#L427
The real problem is that isContinuous() returns false. The code is very suspicious and it also loses track of the collection index:
https://github.com/couchbase/couchbase-lite-core/blob/master/Replicator/Worker.hh#L148-L153
Attachments
Issue Links
- relates to
-
CBL-3504 Gather info - missing idle status from Replicator
- Closed