From d8e410e7708b9c42a0a09dc5aca4b9c6006273bb Mon Sep 17 00:00:00 2001 From: Zaiming Shi Date: Sun, 11 Apr 2021 11:00:33 +0200 Subject: [PATCH] fix(emqx_rule_engine): missing calls some calls are for enterprise only --- apps/emqx_rule_engine/src/emqx_rule_funcs.erl | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/apps/emqx_rule_engine/src/emqx_rule_funcs.erl b/apps/emqx_rule_engine/src/emqx_rule_funcs.erl index 7c939e93d..4d91b2fe1 100644 --- a/apps/emqx_rule_engine/src/emqx_rule_funcs.erl +++ b/apps/emqx_rule_engine/src/emqx_rule_funcs.erl @@ -853,6 +853,7 @@ time_unit(<<"nanosecond">>) -> nanosecond. %% Here the emqx_rule_funcs module acts as a proxy, forwarding %% the function handling to the worker module. %% @end +-ifdef(EMQX_ENTERPRISE). '$handle_undefined_function'(schema_decode, [SchemaId, Data|MoreArgs]) -> emqx_schema_parser:decode(SchemaId, Data, MoreArgs); '$handle_undefined_function'(schema_decode, Args) -> @@ -868,6 +869,13 @@ time_unit(<<"nanosecond">>) -> nanosecond. '$handle_undefined_function'(Fun, Args) -> error({sql_function_not_supported, function_literal(Fun, Args)}). +-else. +'$handle_undefined_function'(sprintf, [Format|Args]) -> + erlang:apply(fun sprintf_s/2, [Format, Args]); + +'$handle_undefined_function'(Fun, Args) -> + error({sql_function_not_supported, function_literal(Fun, Args)}). +-endif. % EMQX_ENTERPRISE map_path(Key) -> {path, [{key, P} || P <- string:split(Key, ".", all)]}.