Найти тему

RPM — Thread died in Berkeley DB library

Свежий баг. Редкий, но встречается. У меня случился на Oracle Linux.

Симптомы только косвенные. Началась утечка CPU на виртуальной машине. Прошло несколько дней, гипервизор стал жаловаться на процессор:

-2

Смотрю статистику использования CPU гипервизора и вижу такую картину:

-3

Видно утечку, ищем виновника.

-4

Графики производительности помогают легко найти виртуальную машину с утечкой CPU. Заглянем ей в консоль.

-5

Опа, процессоры сожраны запросами к RPM. Выполняю:

rpm -qa

Запрос зависает, Ctrl + C со скрежетом убиваем текущий процесс. Заново делаю тот же запрос, вот и виновник торжества:

ошибка: rpmdb: BDB0113 Thread/process 9817/139781811808320 failed: BDB1507 Thread died in Berkley DB library
ошибка: ошибка(5) db_30973 из dbenv->failchk: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery
ошибка: невозможно открыть индекс Packages используя db5 - (-30973)
-6

Быстрое решение проблемы

Пересоздаём базу RPM.

rm -f /var/lib/rpm/__db*
rpm -vv --rebuilddb

Немного терпения.

-7

С облегчением.

-8

Источник:

RPM — Thread died in Berkeley DB library | internet-lab.ru

💰 Поддержать проект

Если вам понравилась статья, то ставьте 👍🏻 каналу.
Пишите комментарии, задавайте вопросы, подписывайтесь.