I have a backup where I’m trying to restore only specific documents to a specific bucket… I tried the command on my Windows machine where I have a test couchbase server and it worked fine… trying the same command on a redhat 7 server it always restores zero documents.
It’s not a new bucket, it’s a bucket with the same name but I only need to restore the documents that starts with [Abc.com] as these documents are missing from that node.
I think that’s why these documents are not getting restored, seems to me that couchbase keeps a track of all files and updates deletions too… (because if I do the operation on a new bucket or a flushed one, it works like I intend)
At this point I’m not sure how can I transfer a bunch of files cleanly from one node to another.
This is working as design, the restore using conflict resolution just like XDCR for more information see the documentation. This behaviour can be over written by using the --force-updates option:
–force-updates
Forces data in the Couchbase cluster to be overwritten even if the data in the cluster is newer. By default updates are not forced and all updates use Couchbase’s conflict resolution mechanism to ensure that if newer data exists on the cluster that is not overwritten by older restore data.
I tried --force-updates and then the documents starting with [Abc.com] were restored but the problem is that even the other documents that doesn’t have the prefix were also restored… It’s like if I use --force-updates the --filter-keys flag is totally ignored. My objective is to restore documents that have a specific prefix without any conflict resolution and without operating/restoring any other documents. Is that possible?