summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/rabbit_tests.erl17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/rabbit_tests.erl b/src/rabbit_tests.erl
index 1e765d290c..4b72a7422b 100644
--- a/src/rabbit_tests.erl
+++ b/src/rabbit_tests.erl
@@ -766,6 +766,23 @@ rdq_stress_gc(MsgCount) ->
rdq_stop(),
passed.
+rdq_time_insane_startup() ->
+ rdq_virgin(),
+ OneGig = 1024*1024*1024,
+ rabbit_disk_queue:start_link(OneGig, 5),
+ Msg = <<>>,
+ List = lists:seq(1, 1024*1024),
+ %% 1M empty messages, at say, 100B per message, should all fit
+ %% within 1GB and thus in a single file
+ io:format("Publishing 1M empty messages...~n",[]),
+ [rabbit_disk_queue:tx_publish(N, Msg) || N <- List],
+ rabbit_disk_queue:tx_commit(q, List),
+ io:format("...done. Timing restart...~n", []),
+ rdq_stop(),
+ Micros = rdq_virgin(),
+ io:format("...startup took ~w microseconds.~n", [Micros]),
+ rdq_stop().
+
rdq_time_commands(Funcs) ->
lists:foreach(fun (F) -> F() end, Funcs).