Recent hanoidb crashes on access to existing database (after restart). #31

Closed
opened 2014-11-20 16:40:51 +00:00 by brigadier · 0 comments
brigadier commented 2014-11-20 16:40:51 +00:00 (Migrated from github.com)

Recent hanoidb crashes on access to existing database (after restart).
To reproduce clone the latest version, then

$make
$erl -pa ./ebin/ ./deps/*/ebin/

application:start(syntax_tools).
application:start(plain_fsm).
application:start(hanoidb).
{ok, Ref} = hanoidb:open("db.hanoi").
hanoidb:put(Ref, <<"k1">>, <<"v1">>).
hanoidb:get(Ref, <<"k1">>).
{ok,<<"v2">>}
q().

start again:
$erl -pa ./ebin/ ./deps/*/ebin/

application:start(syntax_tools).
application:start(plain_fsm).
application:start(hanoidb).
hanoidb:get(Ref, <<"k1">>).
=ERROR REPORT==== 20-Nov-2014::19:12:31 ===
crash: error:function_clause [{hanoidb_bloom,member,
[{bloom,0.01,43165863,32,3,
[{sparse_bitmap,32,
[783821605,155535122|216291719]}]},
<<"k2">>],
[{file,"src/hanoidb_bloom.erl"},{line,126}]},
{hanoidb_reader,lookup,2,
[{file,"src/hanoidb_reader.erl"},{line,282}]},
{hanoidb_level,do_lookup,2,
[{file,"src/hanoidb_level.erl"},{line,749}]},
{hanoidb_level,main_loop,1,
[{file,"src/hanoidb_level.erl"},{line,281}]},
{hanoidb_level,initialize,1,
[{file,"src/hanoidb_level.erl"},{line,156}]},
{proc_lib,init_p,3,
[{file,"proc_lib.erl"},{line,222}]}]

It is probably due to 697683240d as up to this 813863c9c3 commit everything works fine.

Recent hanoidb crashes on access to existing database (after restart). To reproduce clone the latest version, then $make $erl -pa ./ebin/ ./deps/*/ebin/ > application:start(syntax_tools). > application:start(plain_fsm). > application:start(hanoidb). > {ok, Ref} = hanoidb:open("db.hanoi"). > hanoidb:put(Ref, <<"k1">>, <<"v1">>). > hanoidb:get(Ref, <<"k1">>). > {ok,<<"v2">>} > q(). start again: $erl -pa ./ebin/ ./deps/*/ebin/ > application:start(syntax_tools). > application:start(plain_fsm). > application:start(hanoidb). > hanoidb:get(Ref, <<"k1">>). > =ERROR REPORT==== 20-Nov-2014::19:12:31 === > crash: error:function_clause [{hanoidb_bloom,member, > [{bloom,0.01,43165863,32,3, > [{sparse_bitmap,32, > [783821605,155535122|216291719]}]}, > <<"k2">>], > [{file,"src/hanoidb_bloom.erl"},{line,126}]}, > {hanoidb_reader,lookup,2, > [{file,"src/hanoidb_reader.erl"},{line,282}]}, > {hanoidb_level,do_lookup,2, > [{file,"src/hanoidb_level.erl"},{line,749}]}, > {hanoidb_level,main_loop,1, > [{file,"src/hanoidb_level.erl"},{line,281}]}, > {hanoidb_level,initialize,1, > [{file,"src/hanoidb_level.erl"},{line,156}]}, > {proc_lib,init_p,3, > [{file,"proc_lib.erl"},{line,222}]}] It is probably due to https://github.com/krestenkrab/hanoidb/commit/697683240d666181c37002a3c64fe09fac67b7b8 as up to this https://github.com/krestenkrab/hanoidb/commit/813863c9c3154486ecfe1ba8633352ab0744d9b8 commit everything works fine.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: greg/hanoidb#31
No description provided.