refactor: rename max_row_limit to default_row_limit

This commit is contained in:
Stefan Strigler 2023-02-15 14:46:45 +01:00
parent 67f88f27fd
commit f9895a33b6
9 changed files with 24 additions and 27 deletions

View File

@ -16,4 +16,5 @@
-define(MANAGEMENT_SHARD, emqx_management_shard). -define(MANAGEMENT_SHARD, emqx_management_shard).
-define(MAX_ROW_LIMIT, 100). -define(DEFAULT_ROW_LIMIT, 100).
-define(MAX_TABLE_SIZE, 100).

View File

@ -21,8 +21,6 @@
-elvis([{elvis_style, god_modules, disable}]). -elvis([{elvis_style, god_modules, disable}]).
-include_lib("stdlib/include/qlc.hrl"). -include_lib("stdlib/include/qlc.hrl").
-include_lib("emqx/include/emqx.hrl").
-include_lib("emqx/include/emqx_mqtt.hrl").
%% Nodes and Brokers API %% Nodes and Brokers API
-export([ -export([
@ -105,12 +103,10 @@
%% Common Table API %% Common Table API
-export([ -export([
max_row_limit/0, default_row_limit/0,
vm_stats/0 vm_stats/0
]). ]).
-define(APP, emqx_management).
-elvis([{elvis_style, god_modules, disable}]). -elvis([{elvis_style, god_modules, disable}]).
%%-------------------------------------------------------------------- %%--------------------------------------------------------------------
@ -390,10 +386,10 @@ call_client(Node, ClientId, Req) ->
-spec do_list_subscriptions() -> [map()]. -spec do_list_subscriptions() -> [map()].
do_list_subscriptions() -> do_list_subscriptions() ->
case check_row_limit([mqtt_subproperty]) of case check_max_table_size([mqtt_subproperty]) of
false -> false ->
throw(max_row_limit); throw(max_row_limit);
ok -> true ->
[ [
#{topic => Topic, clientid => ClientId, options => Options} #{topic => Topic, clientid => ClientId, options => Options}
|| {{Topic, ClientId}, Options} <- ets:tab2list(mqtt_subproperty) || {{Topic, ClientId}, Options} <- ets:tab2list(mqtt_subproperty)
@ -556,15 +552,15 @@ unwrap_rpc(Res) ->
otp_rel() -> otp_rel() ->
iolist_to_binary([emqx_vm:get_otp_version(), "/", erlang:system_info(version)]). iolist_to_binary([emqx_vm:get_otp_version(), "/", erlang:system_info(version)]).
check_row_limit(Tables) -> check_max_table_size(Tables) ->
check_row_limit(Tables, max_row_limit()). check_max_table_size(Tables, ?MAX_TABLE_SIZE).
check_row_limit([], _Limit) -> check_max_table_size([], _Limit) ->
ok; true;
check_row_limit([Tab | Tables], Limit) -> check_max_table_size([Tab | Tables], Limit) ->
case table_size(Tab) > Limit of case table_size(Tab) > Limit of
true -> false; true -> false;
false -> check_row_limit(Tables, Limit) false -> check_max_table_size(Tables, Limit)
end. end.
check_results(Results) -> check_results(Results) ->
@ -573,7 +569,7 @@ check_results(Results) ->
false -> unwrap_rpc(lists:last(Results)) false -> unwrap_rpc(lists:last(Results))
end. end.
max_row_limit() -> default_row_limit() ->
?MAX_ROW_LIMIT. ?DEFAULT_ROW_LIMIT.
table_size(Tab) -> ets:info(Tab, size). table_size(Tab) -> ets:info(Tab, size).

View File

@ -98,8 +98,8 @@ count(Table) ->
page(Params) -> page(Params) ->
maps:get(<<"page">>, Params, 1). maps:get(<<"page">>, Params, 1).
limit(Params) -> limit(Params) when is_map(Params) ->
maps:get(<<"limit">>, Params, emqx_mgmt:max_row_limit()). maps:get(<<"limit">>, Params, emqx_mgmt:default_row_limit()).
%%-------------------------------------------------------------------- %%--------------------------------------------------------------------
%% Node Query %% Node Query
@ -683,7 +683,7 @@ paginate_test_() ->
Size = 1000, Size = 1000,
MyLimit = 10, MyLimit = 10,
ets:insert(?MODULE, [{I, foo} || I <- lists:seq(1, Size)]), ets:insert(?MODULE, [{I, foo} || I <- lists:seq(1, Size)]),
DefaultLimit = emqx_mgmt:max_row_limit(), DefaultLimit = emqx_mgmt:default_row_limit(),
NoParamsResult = paginate(?MODULE, #{}, {?MODULE, paginate_test_format}), NoParamsResult = paginate(?MODULE, #{}, {?MODULE, paginate_test_format}),
PaginateResults = [ PaginateResults = [
paginate( paginate(

View File

@ -302,7 +302,7 @@ page_params() ->
name => limit, name => limit,
in => query, in => query,
description => <<"Page size">>, description => <<"Page size">>,
schema => #{type => integer, default => emqx_mgmt:max_row_limit()} schema => #{type => integer, default => emqx_mgmt:default_row_limit()}
} }
]. ].

View File

@ -62,5 +62,5 @@ get_alarms(AssertCount, Activated) ->
Limit = maps:get(<<"limit">>, Meta), Limit = maps:get(<<"limit">>, Meta),
Count = maps:get(<<"count">>, Meta), Count = maps:get(<<"count">>, Meta),
?assertEqual(Page, 1), ?assertEqual(Page, 1),
?assertEqual(Limit, emqx_mgmt:max_row_limit()), ?assertEqual(Limit, emqx_mgmt:default_row_limit()),
?assert(Count >= AssertCount). ?assert(Count >= AssertCount).

View File

@ -64,7 +64,7 @@ t_clients(_) ->
ClientsLimit = maps:get(<<"limit">>, ClientsMeta), ClientsLimit = maps:get(<<"limit">>, ClientsMeta),
ClientsCount = maps:get(<<"count">>, ClientsMeta), ClientsCount = maps:get(<<"count">>, ClientsMeta),
?assertEqual(ClientsPage, 1), ?assertEqual(ClientsPage, 1),
?assertEqual(ClientsLimit, emqx_mgmt:max_row_limit()), ?assertEqual(ClientsLimit, emqx_mgmt:default_row_limit()),
?assertEqual(ClientsCount, 2), ?assertEqual(ClientsCount, 2),
%% get /clients/:clientid %% get /clients/:clientid

View File

@ -57,7 +57,7 @@ t_subscription_api(Config) ->
Data = emqx_json:decode(Response, [return_maps]), Data = emqx_json:decode(Response, [return_maps]),
Meta = maps:get(<<"meta">>, Data), Meta = maps:get(<<"meta">>, Data),
?assertEqual(1, maps:get(<<"page">>, Meta)), ?assertEqual(1, maps:get(<<"page">>, Meta)),
?assertEqual(emqx_mgmt:max_row_limit(), maps:get(<<"limit">>, Meta)), ?assertEqual(emqx_mgmt:default_row_limit(), maps:get(<<"limit">>, Meta)),
?assertEqual(2, maps:get(<<"count">>, Meta)), ?assertEqual(2, maps:get(<<"count">>, Meta)),
Subscriptions = maps:get(<<"data">>, Data), Subscriptions = maps:get(<<"data">>, Data),
?assertEqual(length(Subscriptions), 2), ?assertEqual(length(Subscriptions), 2),
@ -95,7 +95,7 @@ t_subscription_api(Config) ->
DataTopic2 = #{<<"meta">> := Meta2} = request_json(get, QS, Headers), DataTopic2 = #{<<"meta">> := Meta2} = request_json(get, QS, Headers),
?assertEqual(1, maps:get(<<"page">>, Meta2)), ?assertEqual(1, maps:get(<<"page">>, Meta2)),
?assertEqual(emqx_mgmt:max_row_limit(), maps:get(<<"limit">>, Meta2)), ?assertEqual(emqx_mgmt:default_row_limit(), maps:get(<<"limit">>, Meta2)),
?assertEqual(1, maps:get(<<"count">>, Meta2)), ?assertEqual(1, maps:get(<<"count">>, Meta2)),
SubscriptionsList2 = maps:get(<<"data">>, DataTopic2), SubscriptionsList2 = maps:get(<<"data">>, DataTopic2),
?assertEqual(length(SubscriptionsList2), 1). ?assertEqual(length(SubscriptionsList2), 1).
@ -120,7 +120,7 @@ t_subscription_fuzzy_search(Config) ->
MatchData1 = #{<<"meta">> := MatchMeta1} = request_json(get, MatchQs, Headers), MatchData1 = #{<<"meta">> := MatchMeta1} = request_json(get, MatchQs, Headers),
?assertEqual(1, maps:get(<<"page">>, MatchMeta1)), ?assertEqual(1, maps:get(<<"page">>, MatchMeta1)),
?assertEqual(emqx_mgmt:max_row_limit(), maps:get(<<"limit">>, MatchMeta1)), ?assertEqual(emqx_mgmt:default_row_limit(), maps:get(<<"limit">>, MatchMeta1)),
%% count is undefined in fuzzy searching %% count is undefined in fuzzy searching
?assertNot(maps:is_key(<<"count">>, MatchMeta1)), ?assertNot(maps:is_key(<<"count">>, MatchMeta1)),
?assertMatch(3, length(maps:get(<<"data">>, MatchData1))), ?assertMatch(3, length(maps:get(<<"data">>, MatchData1))),

View File

@ -52,7 +52,7 @@ t_nodes_api(Config) ->
RoutesData = emqx_json:decode(Response, [return_maps]), RoutesData = emqx_json:decode(Response, [return_maps]),
Meta = maps:get(<<"meta">>, RoutesData), Meta = maps:get(<<"meta">>, RoutesData),
?assertEqual(1, maps:get(<<"page">>, Meta)), ?assertEqual(1, maps:get(<<"page">>, Meta)),
?assertEqual(emqx_mgmt:max_row_limit(), maps:get(<<"limit">>, Meta)), ?assertEqual(emqx_mgmt:default_row_limit(), maps:get(<<"limit">>, Meta)),
?assertEqual(1, maps:get(<<"count">>, Meta)), ?assertEqual(1, maps:get(<<"count">>, Meta)),
Data = maps:get(<<"data">>, RoutesData), Data = maps:get(<<"data">>, RoutesData),
Route = erlang:hd(Data), Route = erlang:hd(Data),

View File

@ -166,7 +166,7 @@ config(put, #{body := Body}) ->
%%------------------------------------------------------------------------------ %%------------------------------------------------------------------------------
lookup_retained(get, #{query_string := Qs}) -> lookup_retained(get, #{query_string := Qs}) ->
Page = maps:get(<<"page">>, Qs, 1), Page = maps:get(<<"page">>, Qs, 1),
Limit = maps:get(<<"limit">>, Qs, emqx_mgmt:max_row_limit()), Limit = maps:get(<<"limit">>, Qs, emqx_mgmt:default_row_limit()),
{ok, Msgs} = emqx_retainer_mnesia:page_read(undefined, undefined, Page, Limit), {ok, Msgs} = emqx_retainer_mnesia:page_read(undefined, undefined, Page, Limit),
{200, #{ {200, #{
data => [format_message(Msg) || Msg <- Msgs], data => [format_message(Msg) || Msg <- Msgs],