svnadmin: ожидаемая текущая версия будет 51, но найдена 52 - PullRequest
1 голос
/ 13 февраля 2012

Мне только что пришлось восстановиться из резервной копии, и, к удивлению, после этого у меня возникли проблемы с хранилищем svn. Каждая операция в этом хранилище не выполняется, я не могу оформить заказ, экспортировать, даже не восстановить. Вывод «svnadmin recovery is»: svnadmin: ожидаемый текущий оборот 51, но найден 52

Код безопасен, так как есть рабочие копии, но как я могу снова использовать этот репозиторий?

1 Ответ

0 голосов
/ 13 декабря 2012

Возможно, вы захотите прочитать из документации SVN о бэкенде FS_FS. Но, по сути, файл с именем "db / current" в вашем репо представляет собой текстовый файл с номером последней версии, тогда как db / revs / - это папка, содержащая файл для каждой ревизии (который после 1.5 может быть разбит на папки с осколками).

Если ваш инструмент резервного копирования опускается в обороты / и создает резервные копии всех файлов там, а пользователь выполняет фиксацию во время резервного копирования, возможно, вы пропустите этот последний коммит, прежде чем файл rev будет перемещен из базы данных / транзакций. / to db / revs / НО по-прежнему выполняется резервное копирование дБ / текущего файла, который был увеличен. То есть у вас есть revs / для 51 ревизии, но текущие списки "52" как самый последний коммит!

Рекомендованным способом обеспечения согласованности резервного копирования является игнорирование дБ / транзакций (поскольку это пустое место, которое будет использоваться при создании оборотов) и резервное копирование дБ / текущих ПЕРЕД копированием дБ / оборотов. В худшем случае, это revs / может содержать, например, 52 ревизии и текущие точки до 51. Это соответствует и все будет работать нормально. «Восстановление svnadmin» даже исправит это для вас.

ОДНАКО, если вы сначала не создадите резервную копию db / current (как вы этого не сделали), очень просто открыть ее с помощью vim, nano или другого текстового редактора и просто уменьшить число. В вашем случае измените 52 на 51, и все должно быть проверено правильно.

Часть о резервных копиях также документирована в документе , сравнивающем FS_FS с FS_Base, который я обнаружил с момента первого появления FS_FS

...