diff options
author | Björn Gustavsson <[email protected]> | 2017-02-06 13:06:49 +0100 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2017-02-06 13:06:49 +0100 |
commit | bf24d74c27b8773ac3d3c6f970df04098fa74c21 (patch) | |
tree | 7efe4ee900f882c450c46be1f4cbe50f32430ee3 /lib/kernel/test | |
parent | 7bd17af1b0adacc16fe2651283bd5006cfba4a00 (diff) | |
parent | e6f84e033a6a809a68f188c306151567c9854050 (diff) | |
download | otp-bf24d74c27b8773ac3d3c6f970df04098fa74c21.tar.gz otp-bf24d74c27b8773ac3d3c6f970df04098fa74c21.tar.bz2 otp-bf24d74c27b8773ac3d3c6f970df04098fa74c21.zip |
Merge branch 'maint'
* maint:
Store messages for 'rex' and 'error_logger' off heap
file: match enoent and enotdir in path_open
Diffstat (limited to 'lib/kernel/test')
-rw-r--r-- | lib/kernel/test/error_logger_SUITE.erl | 13 | ||||
-rw-r--r-- | lib/kernel/test/rpc_SUITE.erl | 12 |
2 files changed, 22 insertions, 3 deletions
diff --git a/lib/kernel/test/error_logger_SUITE.erl b/lib/kernel/test/error_logger_SUITE.erl index b6e7551741..bb01c2384d 100644 --- a/lib/kernel/test/error_logger_SUITE.erl +++ b/lib/kernel/test/error_logger_SUITE.erl @@ -30,6 +30,7 @@ -export([all/0, suite/0,groups/0,init_per_suite/1, end_per_suite/1, init_per_group/2,end_per_group/2, + off_heap/1, error_report/1, info_report/1, error/1, info/1, emulator/1, tty/1, logfile/1, add/1, delete/1]). @@ -45,7 +46,7 @@ suite() -> {timetrap,{minutes,1}}]. all() -> - [error_report, info_report, error, info, emulator, tty, + [off_heap, error_report, info_report, error, info, emulator, tty, logfile, add, delete]. groups() -> @@ -66,6 +67,16 @@ end_per_group(_GroupName, Config) -> %%----------------------------------------------------------------- +off_heap(_Config) -> + %% The error_logger process may receive a huge amount of + %% messages. Make sure that they are stored off heap to + %% avoid exessive GCs. + MQD = message_queue_data, + {MQD,off_heap} = process_info(whereis(error_logger), MQD), + ok. + +%%----------------------------------------------------------------- + error_report(Config) when is_list(Config) -> error_logger:add_report_handler(?MODULE, self()), Rep1 = [{tag1,"data1"},{tag2,data2},{tag3,3}], diff --git a/lib/kernel/test/rpc_SUITE.erl b/lib/kernel/test/rpc_SUITE.erl index 1c72ddc87f..d76c4097d8 100644 --- a/lib/kernel/test/rpc_SUITE.erl +++ b/lib/kernel/test/rpc_SUITE.erl @@ -21,7 +21,8 @@ -export([all/0, suite/0,groups/0,init_per_suite/1, end_per_suite/1, init_per_group/2,end_per_group/2]). --export([call/1, block_call/1, multicall/1, multicall_timeout/1, +-export([off_heap/1, + call/1, block_call/1, multicall/1, multicall_timeout/1, multicall_dies/1, multicall_node_dies/1, called_dies/1, called_node_dies/1, called_throws/1, call_benchmark/1, async_call/1]). @@ -35,7 +36,7 @@ suite() -> {timetrap,{minutes,2}}]. all() -> - [call, block_call, multicall, multicall_timeout, + [off_heap, call, block_call, multicall, multicall_timeout, multicall_dies, multicall_node_dies, called_dies, called_node_dies, called_throws, call_benchmark, async_call]. @@ -55,6 +56,13 @@ init_per_group(_GroupName, Config) -> end_per_group(_GroupName, Config) -> Config. +off_heap(_Config) -> + %% The rex server process may receive a huge amount of + %% messages. Make sure that they are stored off heap to + %% avoid exessive GCs. + MQD = message_queue_data, + {MQD,off_heap} = process_info(whereis(rex), MQD), + ok. %% Test different rpc calls. |