Browse Source

chore(psk): catch timeout exception to avoid crash

zhouzb 4 years atrás
parent
commit
f325d7c783
1 changed files with 9 additions and 1 deletions
  1. 9 1
      apps/emqx_psk/src/emqx_psk.erl

+ 9 - 1
apps/emqx_psk/src/emqx_psk.erl

@@ -91,7 +91,7 @@ on_psk_lookup(PSKIdentity, _UserState) ->
     end.
 
 import(SrcFile) ->
-    gen_server:call(?MODULE, {import, SrcFile}).
+    call({import, SrcFile}).
 
 -spec start_link() -> {ok, pid()} | ignore | {error, term()}.
 start_link() ->
@@ -220,3 +220,11 @@ trans(Fun, Args) ->
         {atomic, Res} -> Res;
         {aborted, Reason} -> {error, Reason}
     end.
+
+call(Request) ->
+    try
+        gen_server:call(?MODULE, Request, 10000)
+    catch
+        exit:{timeout, _Details} ->
+            {error, timeout}
+    end.