Skip to content

Commit 6902988

Browse files
committed
try to remove corrutted DETS
1 parent 30d75c9 commit 6902988

File tree

1 file changed

+12
-2
lines changed
  • apps/language_server/lib/language_server

1 file changed

+12
-2
lines changed

apps/language_server/lib/language_server/tracer.ex

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -161,12 +161,22 @@ defmodule ElixirLS.LanguageServer.Tracer do
161161
{:ok, _} ->
162162
:ok
163163

164-
{:error, {:not_a_dets_file, _}} ->
164+
{:error, {:not_a_dets_file, _} = reason} ->
165+
Logger.warning("Unable to open DETS #{path}: #{inspect(reason)}")
165166
File.rm_rf!(path)
166167
{:ok, _} = :dets.open_file(table_name, opts)
167168
end
168169

169-
^table_name = :dets.to_ets(table_name, table_name)
170+
case :dets.to_ets(table_name, table_name) do
171+
^table_name ->
172+
:ok
173+
174+
{:error, reason} ->
175+
Logger.warning("Unable to read DETS #{path}: #{inspect(reason)}")
176+
File.rm_rf!(path)
177+
{:ok, _} = :dets.open_file(table_name, opts)
178+
^table_name = :dets.to_ets(table_name, table_name)
179+
end
170180
end
171181

172182
def close_table(table, project_dir) do

0 commit comments

Comments
 (0)