[
https://issues.apache.org/jira/browse/COUCHDB-1496?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13294221#comment-13294221
]
Dave Cottlehuber commented on COUCHDB-1496:
-------------------------------------------
Thanks for logging this issue Maya. A common issue is that the replication
filter does not pass _deleted documents; CouchDB
effectively tombstones deleted docs by replacing the content with {"_id":
myid", "_deleted": true} so you need to ensure these
pass through the filter even if the original doc does not.
Can you please attach a sample document, the replication filter you are using,
and also the replication syntax you're using?
> Incomplete Replication on Several Circumstances
> -----------------------------------------------
>
> Key: COUCHDB-1496
> URL: https://issues.apache.org/jira/browse/COUCHDB-1496
> Project: CouchDB
> Issue Type: Bug
> Affects Versions: 1.2
> Environment: iriscouch
> Reporter: Maya Alipin
> Priority: Minor
>
> I have found that on several circumstances, CouchDB's continous filtered
> replication doesn't do what I expect.
> 1. deleted documents in source database ends up not deleted in destination
> database
> 2. I notice on continuous replication, the replication status will remain
> incomplete until check-pointed sequence equals source sequence. On continuous
> filtered replication, an update may not pass the filter and cause the
> replication to become incomplete.
> I found the replication remains incomplete even if there is an update that
> pass the filter. I need to restart the replication to get the update
> replicated to the destination database.
> Test Scenario:
> 1. Trigger a filtered continuous replication from database X to database Y on
> _replicator database. Replication progress is 100%
> 2. Add new document(A1) on database X.
> 3. Document A1 pass the replication filter, thus A1 is replicated to database
> Y. Replication progress is 100%
> 4. Delete document A1 on database X. Replication progress become 99%,
> document A1 still exists on database Y.
> 6. Restart the filtered continuous replication from database X to database Y
> by deleting document on _replicator database and create it again
> 7. Replication progress stops at 99%.
> 8. Add new document(A2) on database X.
> 9. Document A2 pass the replication filter, thus A2 is replicated to database
> Y. Replication progress become 100%
> 10. Delete document A2 on database X. Replication progress become 99%,
> document A2 still exists on database Y.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira