File 0627-Handle-delete-table-definitions.patch of Package erlang

From 71f39a354bb3d11236a8686ac49fd6ab6ca5fe19 Mon Sep 17 00:00:00 2001
From: Dan Gudmundsson <dgud@erlang.org>
Date: Tue, 25 Aug 2020 17:16:33 +0200
Subject: [PATCH] Handle delete table definitions

The table meta data migth have been deleted when we try to load the
table. Handle that by ignoring it.
---
 lib/mnesia/src/mnesia_controller.erl | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/lib/mnesia/src/mnesia_controller.erl b/lib/mnesia/src/mnesia_controller.erl
index 0f221b0c1f..f8e4e584bf 100644
--- a/lib/mnesia/src/mnesia_controller.erl
+++ b/lib/mnesia/src/mnesia_controller.erl
@@ -1581,6 +1581,14 @@ initial_safe_loads() ->
 
 last_consistent_replica(Tab, Downs) ->
     Cs = val({Tab, cstruct}),
+    case ?catch_val({Tab, cstruct}) of
+        #cstruct{} = Cs ->
+            last_consistent_replica(Cs, Tab, Downs);
+        _ ->
+            false
+    end.
+
+last_consistent_replica(Cs, Tab, Downs) ->
     Storage = mnesia_lib:cs_to_storage_type(node(), Cs),
     Ram = Cs#cstruct.ram_copies,
     Disc = Cs#cstruct.disc_copies,
-- 
2.26.2

openSUSE Build Service is sponsored by