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