From 419541f5dd1ff61184b1afafab2bd661c7db9a57 Mon Sep 17 00:00:00 2001 From: martinsumner Date: Mon, 20 Mar 2017 23:43:31 +0000 Subject: [PATCH] Fix to delete_pending state --- src/leveled_sst.erl | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/leveled_sst.erl b/src/leveled_sst.erl index 2bbfc16..32e6ef5 100644 --- a/src/leveled_sst.erl +++ b/src/leveled_sst.erl @@ -355,8 +355,16 @@ delete_pending({get_kv, LedgerKey, Hash}, _From, State) -> {Result, _Stage, _SlotID, UpdState} = fetch(LedgerKey, Hash, State), {reply, Result, delete_pending, UpdState, ?DELETE_TIMEOUT}; delete_pending({get_kvrange, StartKey, EndKey, ScanWidth}, _From, State) -> + FetchFun = + fun({SlotBin, SK, EK}, Acc) -> + Acc ++ binaryslot_trimmedlist(SlotBin, SK, EK) + end, + {SlotsToFetchBinList, SlotsToPoint} = fetch_range(StartKey, + EndKey, + ScanWidth, + State), {reply, - fetch_range(StartKey, EndKey, ScanWidth, State), + lists:foldl(FetchFun, [], SlotsToFetchBinList) ++ SlotsToPoint, delete_pending, State, ?DELETE_TIMEOUT};