diff --git a/apps/emqx_dashboard/src/emqx_dashboard_desc_cache.erl b/apps/emqx_dashboard/src/emqx_dashboard_desc_cache.erl index 8fd6fe3d3..9d8d1905d 100644 --- a/apps/emqx_dashboard/src/emqx_dashboard_desc_cache.erl +++ b/apps/emqx_dashboard/src/emqx_dashboard_desc_cache.erl @@ -60,7 +60,7 @@ lookup(Lang, Namespace, Id, Tag) -> %% @doc Lookup the description of the configuration item from the given cache. lookup(EtsTab, Lang0, Namespace, Id, Tag) -> Lang = bin(Lang0), - case ets:lookup(EtsTab, {Lang, bin(Namespace), bin(Id), bin(Tag)}) of + try ets:lookup(EtsTab, {Lang, bin(Namespace), bin(Id), bin(Tag)}) of [{_, Desc}] -> Desc; [] when Lang =/= <<"en">> -> @@ -69,6 +69,11 @@ lookup(EtsTab, Lang0, Namespace, Id, Tag) -> _ -> %% undefined but not <<>> undefined + catch + error:badarg -> + %% schema is not initialized + %% most likely in test cases + undefined end. %% The desc files are of names like: