Ответ 1
За этим следует выпуск 14357 (GitLab 8. 6- или меньше)
Исправление было:
- SSH для рабочего1
- cd в каталог gitlab-org/gitlab-ce
-
rm gc.log
, это просто содержало строку "предупреждение: слишком много недоступных незакрепленных объектов, запустите" git prune ", чтобы удалить их". - побежал
git prune
и молился, чтобы он не нарушил вещи (чего, к счастью, не сделал)
Но похоже, что при запуске GitLab 8.7 автоматически отключается gc.
Это также делается в контексте (все еще открытого) вопроса 13524:
Как правило, после замены, изменения или других действий, требующих силового толчка, мы можем совершить зависание.
Такие "разыменованные" коммиты теряются из-за
git gc
которые могут выполняться внутренне или с помощью функций GitLab Housekeeping.Если случается, что обсуждение было связано с конкретным коммитом - оно недоступно после того, как сбор данных с разыменованием был снят с мусора.
Записи записываются в push-события и доступны через системные заметки, добавленные в запрос слияния, и в настоящее время это приводит к ошибке 500 в GitLab.
Обновление: этот вопрос был закрыт через месяц (июль 2016 года) с:
- MR 5062: не собирайте сбор мусора, у которых есть связанные записи БД, такие как комментарии
Уверен, что фиксация сохраняется, когда запускается сборка мусора Git.
Git GC удалит коммиты из репозитория, которые больше не находятся в каких-либо ветвях или тегах, но мы хотим сохранить некоторые из этих коммитов, например, если у них есть комментарии или сборки CI.
- MR 4101: Рефакторинг: преобразование существующего массива diff refs в модель DiffRefs