Беркли Д.Б. Проблемы окружающей среды

0

Таким образом, мы используем DB Berkeley, и наш API использует API BDB C++. Недавно мы добавили некоторые новые индексы в нашу базу данных. После добавления новых индексов нам нужно было перенести все старые данные, чтобы добавить новые индексы в старые записи, и с тех пор, когда мы запускаем процесс, который записывается в базу данных, мы получаем следующие предупреждения:

BDB2058 Предупреждение: игнорирование DB_SET_LOCK_TIMEOUT при подключении к среде. BDB2059 Предупреждение: игнорирование DB_SET_TXN_TIMEOUT при подключении к среде.

Если я правильно их понимаю, мы теперь рискуем затормозить, так как он "игнорирует" тайм-ауты, которые мы установили. Я также вижу, что процесс зависает, когда он пытается случайно создать базу данных. Единственный способ обойти это - это перезапустить процесс прямо сейчас. Мой вопрос: если кто-нибудь знает, что вызовет эти предупреждения, или как я могу начать отладку экземпляра среды, чтобы узнать? Любая помощь или предложения будут оценены.

Теги:
database
nosql
berkeley-db

1 ответ

0

Тайм-аут, вероятно, является постоянным глобальным атрибутом среды dbenv, а не атрибутом каждого экземпляра использования dbenv.

Вы можете попробовать запустить db_recover в базе данных, чтобы удалить файлы __db.NNN.

В противном случае у вас может быть несколько процессов, совместно использующих dbenv, и предупреждение указывает, что последующие процессы пытаются изменить уже установленные атрибуты.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню