twmht / python-rocksdb

Python bindings for RocksDB
BSD 3-Clause "New" or "Revised" License
274 stars 89 forks source link

~ColumnFamilySet(): Assertion `last_ref' failed #70

Open TomGoBravo opened 4 years ago

TomGoBravo commented 4 years ago

I'm having trouble getting python-rocksdb running. I followed https://github.com/twmht/python-rocksdb#quick-install with the small change of git checkout v6.4.6 to get a stable rocksdb release. When a run a script that db.puts about 700k entries with a total key+value bytes of < 1GB it exits with

python3: /code/rocksdb/db/column_family.cc:1284: rocksdb::ColumnFamilySet::~ColumnFamilySet(): Assertion `last_ref' failed.
Aborted

I first ran into this problem on my laptop running gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516 and Python 3.6.8. I reproduced it in a container on a server running gcc (Ubuntu 4.8.4-2ubuntu1~14.04.4) 4.8.4 and Python 3.6.8.

TomGoBravo commented 4 years ago

I removed the rocksdb libs v6, checked out v5.17.2 (suggested by https://www.facebook.com/groups/rocksdb.dev/permalink/2095597370538766/?comment_id=2095916410506862&reply_comment_id=2095945887170581) then cmake .. ; make ; make install the library. Then force reinstalled python-rocksdb master with service_venv pip3 install --upgrade --no-deps --force-reinstall . to make sure it was linked to the newly install rocksdb library and still get assertion failure:

python3: /code/rocksdb/db/column_family.cc:1238: rocksdb::ColumnFamilySet::~ColumnFamilySet(): Assertion `last_ref' failed.
Aborted
threadfly commented 2 years ago

Hi, is it resolved?

linas commented 2 years ago

Lots of users of rocks (including ceph and mariadb) hit this bug in 2019 and there was some claim that its a rocks bug. (that I guess was resolved in 2019, but I can't find the fix).

Well, its come back in Debian testing: I have old stable code which I compiled on Debian testing for the first time ever, and am hitting this last_ref error message. ./db/column_family.cc:1494: rocksdb::ColumnFamilySet::~ColumnFamilySet(): Assertion last_ref' failed. This is in librocksdb-dev/testing,now 7.2.2-5 amd64

I know this is the wrong place to report this; I'm just leaving a bread-crumb trail until I figure out where it goes. (Maybe to the rock git repo, and maybe to debian testing?)