Я только начал испытывать это неделю назад, и я попробовал несколько вещей, но это продолжается. Она начинается с сообщения об ошибке неудачной фиксации:
Невозможно установить указатель положения в файле '(путь к редакции)': была предпринята попытка переместить указатель файла перед началом файла.
Получив его в первый раз, я обнаружил некоторые ресурсы, указывающие на некоторую коррупцию в последней редакции. Я посмотрел, как удалить ревизию, и следовал этому процессу , чтобы создать новый репозиторий и сбросить в него некоррумпированные ревизии. Это был успешный, но довольно обременительный процесс, который приходится повторять снова и снова.
Во второй раз, когда это произошло, я обнаружил этот ресурс , который объяснял, как удалить поврежденную ревизию непосредственно в репозитории. структуру папок и установите текущую версию обратно на предыдущую. Это сработало и было быстрее, чем вышеупомянутый метод, но я все еще не хочу повторять это.
Тогда это повторилось сегодня.
Каждый из этих случаев я использовал svnadmin verify
иполучил это (с разными номерами ревизий каждый раз, очевидно):
svnadmin verify (repo path) * Проверка метаданных в ревизии 0 ... * Ошибка проверки метаданных репозитория. svnadmin: E160058: запись индекса l2p PHYS -1 не соответствует значению индекса p2l LOG r391: i10 для PHYS 1407
Я погуглил эту ошибку, но буквально ничего не существует, никаких результатов для этого кода ошибки или другого мусора в этомзагадочное сообщение.
Пожалуйста, помогите мне разобраться, как этого избежать.
РЕДАКТИРОВАТЬ: После успешной фиксации чего-то вроде еще 8 ревизий, я получил новую ошибку этоговремя:
слишком велик индекс индекса 69 в редакции 398
svnadmin проверять отчеты:
Неожиданный конец файла индекса (путь репо)/ db / revs / 0/396 со смещением 0x43c8.
Вот что это за смещение. Это не похоже ни на что:
![enter image description here](https://i.stack.imgur.com/oWIfZ.png)
Исследования также указывают на коррупцию. Что в мире происходит?