Hey @shashanks,
I believe you asked this question on StackOverflow, but it doesn’t hurt for me to explain it here as well.
The best way to accomplish this is to create a Couchbase view by key and then range query over that view via your NodeJS code, making deletes on the results.
- http://docs.couchbase.com/admin/admin/Views/views-querySample.html
- http://docs.couchbase.com/couchbase-manual-2.0/#couchbase-views-writing-querying-selection-partial
- Couchbase Node.js SDK Class: ViewQuery
For example, your Couchbase view could look like the following:
function(doc, meta) {
emit(meta.id, null);
}
Then in your NodeJS code, you could have something that looks like this:
var couchbase = require('couchbase');
var ViewQuery = couchbase.ViewQuery;
var query = ViewQuery.from('designdoc', 'by_id');
query.range("pii_", "pii_" + "\u0000", false);
var myBucket = myCluster.openBucket();
myBucket.query(query, function(err, results) {
for(i in results) {
// Delete code in here
}
});
Of course your Couchbase design document and view will be named differently than the example that I gave, but the important part is the ViewQuery.range
function that was used.
All document ids prefixed with pii_ would be returned, in which case you can loop over them and start deleting.
For reference, the StackOverflow thread is as follows:
Best,