неподдерживаемая версия хеша ..?!Беркли-дБ с bsddb3 на Python3 - PullRequest
0 голосов
/ 25 ноября 2018

Я работал над проектом с использованием Berkeley-db и bsddb3 на python3.Я наткнулся на эту ошибку, которую я искал в интернете в течение 2 дней и не мог найти решение .. Я предполагаю, что есть какая-то проблема несовместимости версий, но дело в том, что она работает на моих друзьях, у которых естьТочные версии библиотеки.

Кто-нибудь знает, что является причиной этой ошибки и исправления?

Исходный код:

from bsddb3 import db
database = db.DB()
database.open("ad.idx")

Это дает мне:

bsddb3.db.DBInvalidArgError: (22, 'Invalid argument -- ad.idx: unsupported hash version: 10')

Примечание:«ad.idx» создается с использованием

db_load -c duplicates=1 -f ads.txt -T -t hash ad.idx

в исполняемом файле Unix.

Примечание2: я пытался использовать альтернативный файл idx, отличный от «ad.idx», а также надругие компьютеры.«ad.idx» и другие файлы idx отлично работают на других компьютерах.

Вещи, которые я пробовал:

  1. Переустановка всех bsddb3, berkeley-db.
  2. Использование файла .idx моего друга, который отлично работал на его компьютере.
  3. Использовалось несколько разных типов БД, таких как b + -дерево и т. Д.

Версии:

Berkeley-db = 18.1.25

python3 - 3.6

bsddb3 - 6.2.6

Berkeley-db и bsddb3 являются актуальными

Спасибо!

...