Принятие простого CouchDB к теории о том, что сжатие CouchDB абсолютно безразлично к удаленным документам.
Удаление документа с couch с помощью метода DELETE приводит к следующему при попытке его получить:
localhost: 5984 / enq / deleted-doc-id {"ошибка": "not_found", "причина": "удалено"}
Ожидается.
Теперь я сжимаю базу данных: локальный: 5984 / enq / _compact {'ok': true}
И проверьте, что уплотнение завершено "compact_running": false
Теперь я ожидаю, что CouchDB вернет not_found, причина "отсутствует" при простом GET локальный: 5984 / enq / удаленный-идентификатор-документа {"error": "not_found", "cause": "deleted"}
И попытка с? rev = deleted_rev дает мне полный документ, да, для бесполезных данных.
Правильно ли я полагаю, что уплотнение couchdb не показывает никакой специальной обработки для удаленных документов и просто смотрит на счетчик оборотов снова предел оборотов при принятии решения, что является частью сжатия. Есть ли специальный rev_limit, который мы можем установить для удаленных документов?
Конечно, единственным решением не может быть _purge? на данный момент у нас должны быть тысячи осиротевших удаленных документов, и хотя мы хотим сохранить некоторую историю версий для обычных документов, мы не хотим уменьшать наш rev_limit до 1, чтобы помочь в этом сценарии
Какие проблемы репликации мы должны знать из с очисткой?