испорченный докер изображения артефакт про - PullRequest
0 голосов
/ 11 сентября 2018

После обновления artifactory pro с 5.3.2 до 6.3.3 (full-db is oracle) возникли проблемы с извлечением образов докера.

 2018-09-11 02:00:45,517 [http-nio-8081-exec-8] [ERROR] (o.a.r.c.e.GlobalExceptionMapper:48) - Binary provider has no content for '74a009afe517bd3dca2ab47ba937336008788dea'
org.jfrog.storage.binstore.exceptions.BinaryNotFoundException: Binary provider has no content for '74a009afe517bd3dca2ab47ba937336008788dea'
            at org.jfrog.storage.binstore.providers.EmptyBinaryProvider.getStream(EmptyBinaryProvider.java:62)
2018-09-11 02:02:05,074 [http-nio-8081-exec-4] [ERROR] (o.j.r.d.v.r.h.DockerV2LocalRepoHandler:550) - Error reading manifest
java.lang.RuntimeException: Failed to retrieve resource docker-local:company/country/services/service-integration/1.0.0/manifest.json: Binary provider has no content for '4ef8eb9d8192a617dcfa24a0bef298e6d1b03215'

Посмотрите вниз на БД, и эти двоичные файлы не существуют. Пытался удалить их вручную, но есть внешний ключ, связанный с ошибкой (двоичные таблицы [PK: sha1] <-> узлы таблиц [FK: sha1]). Проблемы:

  • Невозможно вытащить или нажать и переопределить поврежденный образ докера
  • артефакт не может очистить мусор из-за испорченного изображения (пытается найти и удалить двоичные файлы, которых не существует)
  • oracle не может удалить запись из таблицы узлов, поскольку считает, что в таблице узлов все еще есть дочерние записи

Уже просматривал существующую тему Повреждены изображения докера в artifactory pro и есть еще несколько вопросов:

  • как удалить из локальной базы дерби
  • Можно ли не делать ручную работу каждый день:)
...