At the HTTP API level, the fastest way to do this is to run a single batch request, which provides the _idcurrent of _revall documents that need to be deleted.
Your task is to make sure that CouchCocoa really does this & mdash; I know that CouchCocoa will try to cache the _revdocuments it reads, so if you delete the documents you just read, it [CouchDatabase deleteDocuments:]should be enough, otherwise you will have to first [CouchDatabase getDocumentsWithIDs:].
, _rev, . [CouchDatabase putChanges:] . , , .
, , , .