This commit is contained in:
martinsumner 2017-02-26 22:46:57 +00:00
parent a9101e4781
commit 27fdbf2ac8

View file

@ -537,21 +537,21 @@ open_all_manifest(Man0, RootPath, CDBOpts) ->
[{HeadSQN, HeadFN, _IgnorePid, HeadLK}|ManifestTail] = Man1, [{HeadSQN, HeadFN, _IgnorePid, HeadLK}|ManifestTail] = Man1,
OpenJournalFun = OpenJournalFun =
fun(ManEntry) -> fun(ManEntry) ->
{LowSQN, FN, _, LK_RO} = ManEntry {LowSQN, FN, _, LK_RO} = ManEntry,
CFN = FN ++ "." ++ ?JOURNAL_FILEX, CFN = FN ++ "." ++ ?JOURNAL_FILEX,
PFN = FN ++ "." ++ ?PENDING_FILEX, PFN = FN ++ "." ++ ?PENDING_FILEX,
case filelib:is_file(CFN) of case filelib:is_file(CFN) of
true -> true ->
{ok, Pid} = leveled_cdb:cdb_reopen_reader(CFN, {ok, Pid} = leveled_cdb:cdb_reopen_reader(CFN,
LK_RO), LK_RO),
{LowSQN, FN, Pid, LK_RO}; {LowSQN, FN, Pid, LK_RO};
false -> false ->
W = leveled_cdb:cdb_open_writer(PFN, CDBOpts), W = leveled_cdb:cdb_open_writer(PFN, CDBOpts),
{ok, Pid} = W, {ok, Pid} = W,
ok = leveled_cdb:cdb_roll(Pid), ok = leveled_cdb:cdb_roll(Pid),
LK_WR = leveled_cdb:cdb_lastkey(Pid), LK_WR = leveled_cdb:cdb_lastkey(Pid),
{LowSQN, FN, Pid, LK_WR} {LowSQN, FN, Pid, LK_WR}
end end
end, end,
OpenedTailAsList = lists:map(OpenJournalFun, ManifestTail), OpenedTailAsList = lists:map(OpenJournalFun, ManifestTail),
OpenedTail = leveled_imanifest:from_list(OpenedTailAsList), OpenedTail = leveled_imanifest:from_list(OpenedTailAsList),