summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/rabbit_mnesia.erl12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/rabbit_mnesia.erl b/src/rabbit_mnesia.erl
index 4d5a6e715d..846a12b10d 100644
--- a/src/rabbit_mnesia.erl
+++ b/src/rabbit_mnesia.erl
@@ -591,15 +591,17 @@ create_schema() ->
create_schema(true).
create_schema(OnDisk) ->
+ mnesia:stop(),
if OnDisk ->
- mnesia:stop(),
rabbit_misc:ensure_ok(mnesia:create_schema([node()]),
- cannot_create_schema),
- rabbit_misc:ensure_ok(mnesia:start(),
- cannot_start_mnesia);
+ cannot_create_schema);
true ->
- ok
+ %% remove the disc schema since this is a ram node
+ rabbit_misc:ensure_ok(mnesia:delete_schema([node()]),
+ cannot_delete_schema)
end,
+ rabbit_misc:ensure_ok(mnesia:start(),
+ cannot_start_mnesia),
ok = create_tables(OnDisk),
ensure_schema_integrity(),
ok = rabbit_version:record_desired().