Sfoglia il codice sorgente

fix(ds): avoid crashes when starting on Windows

firest 2 anni fa
parent
commit
14b76916df

+ 9 - 1
apps/emqx_durable_storage/src/emqx_ds_app.erl

@@ -13,12 +13,20 @@ start(_Type, _Args) ->
     emqx_ds_sup:start_link().
 
 init_mnesia() ->
+    %% FIXME: This is a temporary workaround to avoid crashes when starting on Windows
+    Storage =
+        case mria:rocksdb_backend_available() of
+            true ->
+                rocksdb_copies;
+            _ ->
+                disc_copies
+        end,
     ok = mria:create_table(
         ?SESSION_TAB,
         [
             {rlog_shard, ?DS_SHARD},
             {type, set},
-            {storage, rocksdb_copies},
+            {storage, Storage},
             {record_name, session},
             {attributes, record_info(fields, session)}
         ]

+ 1 - 1
apps/emqx_durable_storage/src/emqx_durable_storage.app.src

@@ -2,7 +2,7 @@
 {application, emqx_durable_storage, [
     {description, "Message persistence and subscription replays for EMQX"},
     % strict semver, bump manually!
-    {vsn, "0.1.1"},
+    {vsn, "0.1.2"},
     {modules, []},
     {registered, []},
     {applications, [kernel, stdlib, rocksdb, gproc, mria]},