Как обработать нечитаемый файл шарда?

Я периодически выполняю резервное копирование всего своего сервера (включая виртуальные машины) rsync, Теперь что-то не так с моим жестким диском, и некоторые файлы не читаются, включая файл CouchDB (сообщение обфусцировано):

cp: error reading '/var/lib/lxc/my-couch2/rootfs/home/foo/couchdb/couchdb/data/.shards/40000000-5fffffff/bar2.1533443496_design/mrview/54f171fe1f24ac4eb52ac24c85f9d8fc.view': Input/output error

Согласно документации:

Для обеспечения надежности резервного копирования рекомендуется выполнить резервное копирование вторичных индексов (хранящихся в data/.shards) перед резервным копированием основных файлов базы данных (хранящихся в data/shards, а также баз данных системного уровня в родительских данных / каталог). Это связано с тем, что CouchDB будет автоматически обрабатывать представления / вторичные индексы, которые немного устарели, обновляя их при следующем доступе к чтению, но представления или вторичные индексы, которые новее, чем связанные с ними базы данных, вызовут полное перестроение индекса. Это может быть очень дорогостоящей и длительной операцией, и может повлиять на вашу способность к быстрому восстановлению в аварийной ситуации.

Итак, AFAIK это временный файл. Есть ли способ перестроить этот файл, используя сам CouchDB, чтобы мы могли как исправить файл на сервере, так и нормально сделать резервную копию?

1 ответ

Я задал тот же вопрос по apache / couchdb / questions. Что касается ответа, я создал резервную копию ошибочного файла и запустил все представления в базе данных. bar2, Этот файл восстановлен, и все, кажется, работает правильно.

Другие вопросы по тегам