我一直在使用在python3上使用Berkeley-db和bsddb3的项目。我偶然发现了这个错误,这个错误我已经在互联网上搜索了2天,却找不到解决方案。.我的猜测是存在一些版本不兼容的问题,但事实是它可以在有完全相同的librarie版本。
任何人都知道导致此错误的原因和解决方法吗?
源代码:
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:我尝试使用“ ad.idx”以外的替代idx文件以及在其他计算机上使用。 “ ad.idx”和其他idx文件在其他计算机上也可以正常工作。
我尝试过的事情:
版本:
Berkeley-db = 18.1.25
python3-3.6
bsddb3-6.2.6
Berkeley-db和bsddb3都是最新的
谢谢!