Merge pull request #8380 from lafirest/fix/exclusive_upgarde_4.3.16
Fix/exclusive upgarde 4.3.16
This commit is contained in:
commit
3dd523bdff
|
@ -6,16 +6,18 @@
|
|||
{load_module,emqx_metrics,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_app,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_access_rule,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_channel,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_ctl,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription}]},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.15",
|
||||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_ctl,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
|
@ -39,6 +41,7 @@
|
|||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_ctl,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
|
@ -65,6 +68,7 @@
|
|||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_logger_textfmt,brutal_purge,soft_purge,[]},
|
||||
|
@ -97,6 +101,7 @@
|
|||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_logger_textfmt,brutal_purge,soft_purge,[]},
|
||||
|
@ -133,6 +138,7 @@
|
|||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_logger_textfmt,brutal_purge,soft_purge,[]},
|
||||
|
@ -171,6 +177,7 @@
|
|||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_logger_textfmt,brutal_purge,soft_purge,[]},
|
||||
|
@ -209,6 +216,7 @@
|
|||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_logger_textfmt,brutal_purge,soft_purge,[]},
|
||||
|
@ -251,6 +259,7 @@
|
|||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_logger_textfmt,brutal_purge,soft_purge,[]},
|
||||
|
@ -293,6 +302,7 @@
|
|||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_logger_textfmt,brutal_purge,soft_purge,[]},
|
||||
|
@ -335,6 +345,7 @@
|
|||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_logger_textfmt,brutal_purge,soft_purge,[]},
|
||||
|
@ -377,6 +388,7 @@
|
|||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_logger_textfmt,brutal_purge,soft_purge,[]},
|
||||
|
@ -419,6 +431,7 @@
|
|||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_logger_textfmt,brutal_purge,soft_purge,[]},
|
||||
|
@ -461,6 +474,7 @@
|
|||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_logger_textfmt,brutal_purge,soft_purge,[]},
|
||||
|
@ -503,6 +517,7 @@
|
|||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_logger_textfmt,brutal_purge,soft_purge,[]},
|
||||
|
@ -545,6 +560,7 @@
|
|||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_hooks,brutal_purge,soft_purge,[]},
|
||||
|
@ -589,6 +605,7 @@
|
|||
[{add_module,emqx_calendar},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{add_module,emqx_exclusive_subscription},
|
||||
{apply, {emqx_exclusive_subscription, on_add_module, []}},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_broker,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_hooks,brutal_purge,soft_purge,[]},
|
||||
|
@ -643,9 +660,11 @@
|
|||
{load_module,emqx_ctl,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription}]},
|
||||
{"4.3.15",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
@ -668,6 +687,7 @@
|
|||
{load_module,emqx_app,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.14",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
@ -693,6 +713,7 @@
|
|||
{load_module,emqx_hooks,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.13",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
@ -724,6 +745,7 @@
|
|||
{load_module,emqx_connection,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.12",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
@ -758,6 +780,7 @@
|
|||
{load_module,emqx_limiter,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.11",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
@ -794,6 +817,7 @@
|
|||
{load_module,emqx_limiter,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.10",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
@ -830,6 +854,7 @@
|
|||
{load_module,emqx_limiter,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.9",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
@ -870,6 +895,7 @@
|
|||
{load_module,emqx_limiter,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.8",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
@ -910,6 +936,7 @@
|
|||
{load_module,emqx_limiter,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.7",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
@ -950,6 +977,7 @@
|
|||
{load_module,emqx_limiter,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.6",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
@ -990,6 +1018,7 @@
|
|||
{load_module,emqx_limiter,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.5",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
@ -1030,6 +1059,7 @@
|
|||
{load_module,emqx_limiter,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.4",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
@ -1070,6 +1100,7 @@
|
|||
{load_module,emqx_limiter,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.3",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
@ -1110,6 +1141,7 @@
|
|||
{load_module,emqx_limiter,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.2",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
@ -1150,6 +1182,7 @@
|
|||
{load_module,emqx_limiter,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.1",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
@ -1192,6 +1225,7 @@
|
|||
{load_module,emqx_limiter,brutal_purge,soft_purge,[]}]},
|
||||
{"4.3.0",
|
||||
[{delete_module,emqx_calendar},
|
||||
{apply, {emqx_exclusive_subscription, on_delete_module, []}},
|
||||
{delete_module,emqx_exclusive_subscription},
|
||||
{load_module,emqx_topic,brutal_purge,soft_purge,[]},
|
||||
{load_module,emqx_mqtt_caps,brutal_purge,soft_purge,[]},
|
||||
|
|
|
@ -27,6 +27,9 @@
|
|||
-boot_mnesia({mnesia, [boot]}).
|
||||
-copy_mnesia({mnesia, [copy]}).
|
||||
|
||||
%% For upgrade
|
||||
-export([on_add_module/0, on_delete_module/0]).
|
||||
|
||||
-export([
|
||||
check_subscribe/2,
|
||||
unsubscribe/2
|
||||
|
@ -58,7 +61,22 @@ mnesia(boot) ->
|
|||
{storage_properties, StoreProps}
|
||||
]);
|
||||
mnesia(copy) ->
|
||||
ok = ekka_mnesia:copy_table(?TAB, ram_copies).
|
||||
case ekka_mnesia:copy_table(?TAB, ram_copies) of
|
||||
ok ->
|
||||
ok;
|
||||
{no_exists, _} ->
|
||||
mnesia(boot)
|
||||
end.
|
||||
|
||||
%%--------------------------------------------------------------------
|
||||
%% Upgrade
|
||||
%%--------------------------------------------------------------------
|
||||
|
||||
on_add_module() ->
|
||||
mnesia(boot).
|
||||
|
||||
on_delete_module() ->
|
||||
mnesia:clear_table(?TAB).
|
||||
|
||||
%%--------------------------------------------------------------------
|
||||
%% APIs
|
||||
|
|
Loading…
Reference in New Issue