We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 26a1ac6 commit d946c61Copy full SHA for d946c61
src/eleveldb.erl
@@ -484,13 +484,23 @@ values() ->
484
eqc_gen:non_empty(list(binary())).
485
486
ops(Keys, Values) ->
487
- {oneof([put, delete]), oneof(Keys), oneof(Values)}.
+ {oneof([put, async_put, delete]), oneof(Keys), oneof(Values)}.
488
489
apply_kv_ops([], _Ref, Acc0) ->
490
Acc0;
491
apply_kv_ops([{put, K, V} | Rest], Ref, Acc0) ->
492
ok = eleveldb:put(Ref, K, V, []),
493
apply_kv_ops(Rest, Ref, orddict:store(K, V, Acc0));
494
+apply_kv_ops([{async_put, K, V} | Rest], Ref, Acc0) ->
495
+ MyRef = make_ref(),
496
+ Context = {my_context, MyRef},
497
+ ok = eleveldb:async_put(Ref, Context, K, V, []),
498
+ receive
499
+ {Context, ok} ->
500
+ apply_kv_ops(Rest, Ref, orddict:store(K, V, Acc0));
501
+ Msg ->
502
+ error({unexpected_msg, Msg})
503
+ end;
504
apply_kv_ops([{delete, K, _} | Rest], Ref, Acc0) ->
505
ok = eleveldb:delete(Ref, K, []),
506
apply_kv_ops(Rest, Ref, orddict:store(K, deleted, Acc0)).
0 commit comments