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

View File

@ -98,8 +98,8 @@ count(Table) ->
page(Params) ->
maps:get(<<"page">>, Params, 1).
limit(Params) ->
maps:get(<<"limit">>, Params, emqx_mgmt:max_row_limit()).
limit(Params) when is_map(Params) ->
maps:get(<<"limit">>, Params, emqx_mgmt:default_row_limit()).
%%--------------------------------------------------------------------
%% Node Query
@ -683,7 +683,7 @@ paginate_test_() ->
Size = 1000,
MyLimit = 10,
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}),
PaginateResults = [
paginate(

View File

@ -302,7 +302,7 @@ page_params() ->
name => limit,
in => query,
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),
Count = maps:get(<<"count">>, Meta),
?assertEqual(Page, 1),
?assertEqual(Limit, emqx_mgmt:max_row_limit()),
?assertEqual(Limit, emqx_mgmt:default_row_limit()),
?assert(Count >= AssertCount).

View File

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

View File

@ -57,7 +57,7 @@ t_subscription_api(Config) ->
Data = emqx_json:decode(Response, [return_maps]),
Meta = maps:get(<<"meta">>, Data),
?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)),
Subscriptions = maps:get(<<"data">>, Data),
?assertEqual(length(Subscriptions), 2),
@ -95,7 +95,7 @@ t_subscription_api(Config) ->
DataTopic2 = #{<<"meta">> := Meta2} = request_json(get, QS, Headers),
?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)),
SubscriptionsList2 = maps:get(<<"data">>, DataTopic2),
?assertEqual(length(SubscriptionsList2), 1).
@ -120,7 +120,7 @@ t_subscription_fuzzy_search(Config) ->
MatchData1 = #{<<"meta">> := MatchMeta1} = request_json(get, MatchQs, Headers),
?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
?assertNot(maps:is_key(<<"count">>, MatchMeta1)),
?assertMatch(3, length(maps:get(<<"data">>, MatchData1))),

View File

@ -52,7 +52,7 @@ t_nodes_api(Config) ->
RoutesData = emqx_json:decode(Response, [return_maps]),
Meta = maps:get(<<"meta">>, RoutesData),
?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)),
Data = maps:get(<<"data">>, RoutesData),
Route = erlang:hd(Data),

View File

@ -166,7 +166,7 @@ config(put, #{body := Body}) ->
%%------------------------------------------------------------------------------
lookup_retained(get, #{query_string := Qs}) ->
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),
{200, #{
data => [format_message(Msg) || Msg <- Msgs],