fix: sqlserver connector auto reconnect

This commit is contained in:
JimMoen 2024-03-01 17:29:31 +08:00
parent 2e3003e0f1
commit 4623b73f47
No known key found for this signature in database
2 changed files with 13 additions and 16 deletions

View File

@ -142,20 +142,10 @@ fields(Field) when
fields("config_connector") -- emqx_connector_schema:common_fields()
);
fields("config_connector") ->
Config =
driver_fields() ++
emqx_connector_schema:common_fields() ++
emqx_bridge_sqlserver_connector:fields(config) ++
emqx_connector_schema:resource_opts_ref(?MODULE, connector_resource_opts),
lists:foldl(
fun(Key, Acc) ->
proplists:delete(Key, Acc)
end,
Config,
[
auto_reconnect
]
);
emqx_connector_schema:resource_opts_ref(?MODULE, connector_resource_opts);
fields(connector_resource_opts) ->
emqx_connector_schema:resource_opts_fields();
fields("config") ->

View File

@ -550,8 +550,15 @@ resource_id(Config) ->
health_check_resource_ok(Config) ->
BridgeType = ?config(sqlserver_bridge_type, Config),
Name = ?config(sqlserver_name, Config),
% Wait for reconnection.
?retry(
_Sleep = 1_000,
_Attempts = 10,
begin
?assertEqual({ok, connected}, emqx_resource_manager:health_check(resource_id(Config))),
?assertMatch(#{status := connected}, emqx_bridge_v2:health_check(BridgeType, Name)).
?assertMatch(#{status := connected}, emqx_bridge_v2:health_check(BridgeType, Name))
end
).
health_check_resource_down(Config) ->
case emqx_resource_manager:health_check(resource_id(Config)) of