refactor(gcp_pubsub): always cleanup resources when calling `on_stop`
Fixes https://emqx.atlassian.net/browse/EMQX-9934 The way that this connector was structured already depended only on the resource ID. This PR just makes it completely independent of the resource state term, and also treats an already absent pool as a success when stopping it.
This commit is contained in:
parent
105c26afb5
commit
d9aac63f82
|
@ -134,17 +134,21 @@ on_start(
|
|||
end.
|
||||
|
||||
-spec on_stop(resource_id(), state()) -> ok | {error, term()}.
|
||||
on_stop(
|
||||
ResourceId,
|
||||
_State = #{jwt_config := JWTConfig}
|
||||
) ->
|
||||
?tp(gcp_pubsub_stop, #{resource_id => ResourceId, jwt_config => JWTConfig}),
|
||||
on_stop(ResourceId, _State) ->
|
||||
?tp(gcp_pubsub_stop, #{resource_id => ResourceId}),
|
||||
?SLOG(info, #{
|
||||
msg => "stopping_gcp_pubsub_bridge",
|
||||
connector => ResourceId
|
||||
}),
|
||||
emqx_connector_jwt:delete_jwt(?JWT_TABLE, ResourceId),
|
||||
ehttpc_sup:stop_pool(ResourceId).
|
||||
ok = emqx_connector_jwt:delete_jwt(?JWT_TABLE, ResourceId),
|
||||
case ehttpc_sup:stop_pool(ResourceId) of
|
||||
ok ->
|
||||
ok;
|
||||
{error, not_found} ->
|
||||
ok;
|
||||
Error ->
|
||||
Error
|
||||
end.
|
||||
|
||||
-spec on_query(
|
||||
resource_id(),
|
||||
|
|
Loading…
Reference in New Issue