summaryrefslogtreecommitdiff
path: root/merge/src/merge_util.erl
diff options
context:
space:
mode:
Diffstat (limited to 'merge/src/merge_util.erl')
-rw-r--r--merge/src/merge_util.erl14
1 files changed, 6 insertions, 8 deletions
diff --git a/merge/src/merge_util.erl b/merge/src/merge_util.erl
index 388c627..0e19e90 100644
--- a/merge/src/merge_util.erl
+++ b/merge/src/merge_util.erl
@@ -68,18 +68,16 @@ sendentries_chunk(_, {[], _}, _) ->
ok;
sendentries_chunk(NodeAddress, {Chunk, Rest}, Chunksize) ->
lager:debug("sending entries chunk: N=~B", [length(Chunk)]),
- Entries = [db:entry_for_leafhash(H) || H <- Chunk],
- HashesAndEntries = lists:zip(Chunk, Entries),
- case lists:member(noentry, Entries) of
- true ->
- Missing = lists:keysearch(noentry, 2, HashesAndEntries),
- lager:error("Entries not in db: ~p", [Missing]),
- {error, entrynotindb};
+ HashesAndEntries = lists:zip(Chunk, [db:entry_for_leafhash(H) || H <- Chunk]),
+ case lists:keysearch(noentry, 2, HashesAndEntries) of
false ->
ok = sendentries_request(NodeAddress, HashesAndEntries),
sendentries_chunk(NodeAddress,
lists:split(min(Chunksize, length(Rest)), Rest),
- Chunksize)
+ Chunksize);
+ Missing ->
+ lager:error("Entries not in db: ~p", [Missing]),
+ {error, entrynotindb}
end.
sendentries_request(NodeAddress, HashesAndEntries) ->