feat(ds): add `ensure_shard/2` shortcut
And use it in `emqx_persistent_session_ds:init()` backend initialization function.
This commit is contained in:
parent
ac56de9fc5
commit
daf4e86da1
|
@ -39,10 +39,9 @@
|
||||||
|
|
||||||
init() ->
|
init() ->
|
||||||
?WHEN_ENABLED(
|
?WHEN_ENABLED(
|
||||||
begin
|
ok = emqx_ds:ensure_shard(?DS_SHARD, #{
|
||||||
_ = emqx_ds_storage_layer_sup:start_shard(?DS_SHARD),
|
dir => filename:join([emqx:data_dir(), ds, messages, ?DS_SHARD])
|
||||||
ok
|
})
|
||||||
end
|
|
||||||
).
|
).
|
||||||
|
|
||||||
%%
|
%%
|
||||||
|
|
|
@ -16,6 +16,7 @@
|
||||||
-module(emqx_ds).
|
-module(emqx_ds).
|
||||||
|
|
||||||
%% API:
|
%% API:
|
||||||
|
-export([ensure_shard/2]).
|
||||||
%% Messages:
|
%% Messages:
|
||||||
-export([message_store/2, message_store/1, message_stats/0]).
|
-export([message_store/2, message_store/1, message_stats/0]).
|
||||||
%% Iterator:
|
%% Iterator:
|
||||||
|
@ -79,6 +80,18 @@
|
||||||
%% API funcions
|
%% API funcions
|
||||||
%%================================================================================
|
%%================================================================================
|
||||||
|
|
||||||
|
-spec ensure_shard(shard(), emqx_ds_storage_layer:options()) ->
|
||||||
|
ok | {error, _Reason}.
|
||||||
|
ensure_shard(Shard, Options) ->
|
||||||
|
case emqx_ds_storage_layer_sup:start_shard(Shard, Options) of
|
||||||
|
{ok, _Pid} ->
|
||||||
|
ok;
|
||||||
|
{error, {already_started, _Pid}} ->
|
||||||
|
ok;
|
||||||
|
{error, Reason} ->
|
||||||
|
{error, Reason}
|
||||||
|
end.
|
||||||
|
|
||||||
%%--------------------------------------------------------------------------------
|
%%--------------------------------------------------------------------------------
|
||||||
%% Message
|
%% Message
|
||||||
%%--------------------------------------------------------------------------------
|
%%--------------------------------------------------------------------------------
|
||||||
|
|
Loading…
Reference in New Issue