From b1b1d405286dbddb31df3eb77e68706fc00de6a0 Mon Sep 17 00:00:00 2001 From: firest Date: Fri, 24 Jun 2022 19:41:20 +0800 Subject: [PATCH] fix(exclusive): fix xref error && change exclusive default value --- apps/emqx/src/emqx_exclusive_subscription.erl | 4 ++-- apps/emqx/src/emqx_mqtt_caps.erl | 2 +- apps/emqx/src/emqx_schema.erl | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/emqx/src/emqx_exclusive_subscription.erl b/apps/emqx/src/emqx_exclusive_subscription.erl index b43511b41..2eae1f203 100644 --- a/apps/emqx/src/emqx_exclusive_subscription.erl +++ b/apps/emqx/src/emqx_exclusive_subscription.erl @@ -70,7 +70,7 @@ check_subscribe(#{clientid := ClientId}, Topic) -> Fun = fun() -> try_subscribe(ClientId, Topic) end, - case mnesia:transaction(Fun) of + case mria:transaction(?EXCLUSIVE_SHARD, Fun) of {atomic, Res} -> Res; {aborted, Reason} -> @@ -81,7 +81,7 @@ check_subscribe(#{clientid := ClientId}, Topic) -> end. unsubscribe(Topic, #{is_exclusive := true}) -> - _ = mnesia:transaction(fun() -> mnesia:delete({?TAB, Topic}) end), + _ = mria:transaction(?EXCLUSIVE_SHARD, fun() -> mnesia:delete({?TAB, Topic}) end), ok; unsubscribe(_Topic, _SubOpts) -> ok. diff --git a/apps/emqx/src/emqx_mqtt_caps.erl b/apps/emqx/src/emqx_mqtt_caps.erl index cde97394d..fbe4684a7 100644 --- a/apps/emqx/src/emqx_mqtt_caps.erl +++ b/apps/emqx/src/emqx_mqtt_caps.erl @@ -68,7 +68,7 @@ wildcard_subscription => true, subscription_identifiers => true, shared_subscription => true, - exclusive_subscription => true + exclusive_subscription => false }). -spec check_pub( diff --git a/apps/emqx/src/emqx_schema.erl b/apps/emqx/src/emqx_schema.erl index d9ebc2faf..5652b37f7 100644 --- a/apps/emqx/src/emqx_schema.erl +++ b/apps/emqx/src/emqx_schema.erl @@ -443,7 +443,7 @@ fields("mqtt") -> sc( boolean(), #{ - default => true, + default => false, desc => ?DESC(mqtt_exclusive_subscription) } )},