Make sure selection is just the manifest entry

This commit is contained in:
martinsumner 2017-03-08 15:10:08 +00:00
parent 90b587b083
commit 3b2d8691b2

View file

@ -262,7 +262,8 @@ mergefile_selector(Manifest, LevelIdx) when LevelIdx =< 1 ->
mergefile_selector(Manifest, LevelIdx) -> mergefile_selector(Manifest, LevelIdx) ->
Level = leveled_tree:to_list(array:get(LevelIdx, Level = leveled_tree:to_list(array:get(LevelIdx,
Manifest#manifest.levels)), Manifest#manifest.levels)),
lists:nth(random:uniform(length(Level)), Level). {_SK, ME} = lists:nth(random:uniform(length(Level)), Level),
ME.
add_snapshot(Manifest, Pid, Timeout) -> add_snapshot(Manifest, Pid, Timeout) ->
{MegaNow, SecNow, _} = os:timestamp(), {MegaNow, SecNow, _} = os:timestamp(),
@ -721,9 +722,9 @@ random_select_test() ->
% https://github.com/martinsumner/leveled/issues/43 % https://github.com/martinsumner/leveled/issues/43
L2File = mergefile_selector(LastManifest, 2), L2File = mergefile_selector(LastManifest, 2),
Level1 = array:get(1, LastManifest#manifest.levels), Level1 = array:get(1, LastManifest#manifest.levels),
Level2 = leveled_tree:to_list(array:get(2, LastManifest#manifest.levels)),
?assertMatch(true, lists:member(L1File, Level1)), ?assertMatch(true, lists:member(L1File, Level1)),
?assertMatch(true, lists:member(L2File, Level2)). ?assertMatch(true, is_record(L1File, manifest_entry)),
?assertMatch(true, is_record(L2File, manifest_entry)).
keylookup_manifest_test() -> keylookup_manifest_test() ->
{Man0, Man1, Man2, Man3, _Man4, _Man5, Man6} = initial_setup(), {Man0, Man1, Man2, Man3, _Man4, _Man5, Man6} = initial_setup(),