summaryrefslogtreecommitdiff
path: root/merge/src/merge_util.erl
diff options
context:
space:
mode:
authorLinus Nordberg <linus@nordu.net>2017-02-08 12:44:37 +0100
committerLinus Nordberg <linus@nordu.net>2017-02-08 12:44:37 +0100
commit149943566af4c53b61e633fad16dd7dc8d48401d (patch)
treea2dd4cd41f3dd321f587b95308c04e24790f431c /merge/src/merge_util.erl
parentf341c639d603c1541a84f7fa6b7e7c521cd24168 (diff)
Do do missingentries in merge dist.
Diffstat (limited to 'merge/src/merge_util.erl')
-rw-r--r--merge/src/merge_util.erl12
1 files changed, 11 insertions, 1 deletions
diff --git a/merge/src/merge_util.erl b/merge/src/merge_util.erl
index 1df1409..a6c435b 100644
--- a/merge/src/merge_util.erl
+++ b/merge/src/merge_util.erl
@@ -2,7 +2,7 @@
%%% See LICENSE for licensing information.
-module(merge_util).
--export([sendlog/4, sendentries/3]).
+-export([sendlog/4, sendentries/3, missingentries/1]).
-export([request/2, request/4]).
-export([readfile/1, nfetched/0]).
@@ -48,6 +48,16 @@ sendlog_request(NodeAddress, Start, Hashes) ->
throw({request_error, result, DebugTag, Err})
end.
+missingentries(NodeAddress) ->
+ DebugTag = "missingentries",
+ URL = NodeAddress ++ "missingentries",
+ case request(DebugTag, URL) of
+ {<<"ok">>, PropList} ->
+ {ok, proplists:get_value(<<"entries">>, PropList)};
+ Err ->
+ throw({request_error, result, DebugTag, Err})
+ end.
+
sendentries(NodeAddress, Hashes, Chunksize) ->
{ChunkOfHashes, RestOfHashes} = lists:split(min(Chunksize, length(Hashes)), Hashes),
sendentries_chunk(NodeAddress, {ChunkOfHashes, RestOfHashes}, Chunksize).