You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The file is deleted just before disk_log:open is called:
_ = file:delete(File),
case file:read_file_info(File) of
{error, enoent} -> ok;
_ -> throw(eaccess)
end,
Name = make_ref(),
case disk_log:open([{name, Name}, {file, File}]) of
{ok, Name} ->
ok;
{error, Reason} ->
throw(Reason)
end,
So I guess getting {repaired, ...} must mean someone else has recreated the file in between (like a racing ets:tab2file). What would the expected behavior be then?
In method ets:tab2file there should be one more case for disk_log:open:
disk_log:open could also return term
{repaired, ...
and this causes unhandled case_clause exception in proper ets:tab2file use.Unfortunately I cannot provide conditions to reproduce but it could be linked to insuffucient memory.
The text was updated successfully, but these errors were encountered: