fix mnesia schema
This commit is contained in:
parent
abedbd0f1e
commit
7705cd1f71
@ -169,7 +169,7 @@ handle_info({connect_reply, Reply}, State = #state{status = ?STATE_CONNECTING, t
|
||||
case Reply of
|
||||
ok ->
|
||||
AuthBin = auth_request(),
|
||||
efka_transport:auth_request(TransportPid, AuthBin, 5000),
|
||||
efka_transport:auth_request(TransportPid, AuthBin, 50000),
|
||||
{noreply, State#state{status = ?STATE_AUTH}};
|
||||
{error, Reason} ->
|
||||
lager:debug("[efka_agent] connect failed, error: ~p, pid: ~p", [Reason, TransportPid]),
|
||||
@ -293,7 +293,7 @@ handle_info({server_command, ?COMMAND_AUTH, <<Auth:8>>}, State = #state{transpor
|
||||
{1, ?STATE_DENIED} ->
|
||||
%% 重新激活, 需要重新校验
|
||||
AuthRequestBin = auth_request(),
|
||||
efka_transport:auth_request(TransportPid, AuthRequestBin, 5000),
|
||||
efka_transport:auth_request(TransportPid, AuthRequestBin, 50000),
|
||||
{noreply, State#state{status = ?STATE_AUTH}};
|
||||
{0, _} ->
|
||||
%% 这个时候的主机应该是受限制的状态,不允许发送消息;但是能够接受服务器推送的消息
|
||||
|
||||
@ -29,6 +29,7 @@ stop(_State) ->
|
||||
%% 启动内存数据库
|
||||
start_mnesia() ->
|
||||
%% 启动数据库
|
||||
ensure_mnesia_schema(),
|
||||
ok = mnesia:start(),
|
||||
Tables = mnesia:system_info(tables),
|
||||
lager:debug("[efka_app] tables: ~p", [Tables]),
|
||||
@ -37,4 +38,21 @@ start_mnesia() ->
|
||||
not lists:member(service, Tables) andalso service_model:create_table(),
|
||||
not lists:member(cache, Tables) andalso cache_model:create_table(),
|
||||
not lists:member(task_log, Tables) andalso task_log_model:create_table(),
|
||||
ok.
|
||||
ok.
|
||||
|
||||
-spec ensure_mnesia_schema() -> any().
|
||||
ensure_mnesia_schema() ->
|
||||
case mnesia:system_info(use_dir) of
|
||||
true ->
|
||||
lager:debug("[efka_app] mnesia schema exists"),
|
||||
ok;
|
||||
false ->
|
||||
mnesia:stop(),
|
||||
case mnesia:create_schema([node()]) of
|
||||
ok -> ok;
|
||||
{error, {_, {already_exists, _}}} -> ok;
|
||||
Error ->
|
||||
lager:debug("[iot_app] create mnesia schema failed with error: ~p", [Error]),
|
||||
throw({init_schema, Error})
|
||||
end
|
||||
end.
|
||||
@ -19,7 +19,7 @@
|
||||
|
||||
create_table() ->
|
||||
%% id生成器
|
||||
mnesia:create_table(cache, [
|
||||
{atomic, ok} = mnesia:create_table(cache, [
|
||||
{attributes, record_info(fields, cache)},
|
||||
{record_name, cache},
|
||||
{disc_copies, [node()]},
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
|
||||
create_table() ->
|
||||
%% id生成器
|
||||
mnesia:create_table(id_generator, [
|
||||
{atomic, ok} = mnesia:create_table(id_generator, [
|
||||
{attributes, record_info(fields, id_generator)},
|
||||
{record_name, id_generator},
|
||||
{disc_copies, [node()]},
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
|
||||
create_table() ->
|
||||
%% id生成器
|
||||
mnesia:create_table(service, [
|
||||
{atomic, ok} = mnesia:create_table(service, [
|
||||
{attributes, record_info(fields, service)},
|
||||
{record_name, service},
|
||||
{disc_copies, [node()]},
|
||||
|
||||
@ -19,7 +19,7 @@
|
||||
|
||||
create_table() ->
|
||||
%% id生成器
|
||||
mnesia:create_table(task_log, [
|
||||
{atomic, ok} = mnesia:create_table(task_log, [
|
||||
{attributes, record_info(fields, task_log)},
|
||||
{record_name, task_log},
|
||||
{disc_copies, [node()]},
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
{root_dir, "/tmp/efka/"},
|
||||
|
||||
{tcp_server, [
|
||||
{port, 18080}
|
||||
{port, 18088}
|
||||
]},
|
||||
|
||||
{tls_server, [
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
-sname efka
|
||||
-name efka
|
||||
|
||||
-setcookie efka_cookie
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user