diff options
Diffstat (limited to 'mysql-test/suite/plugins/t/feedback_plugin_send.test')
-rw-r--r-- | mysql-test/suite/plugins/t/feedback_plugin_send.test | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/mysql-test/suite/plugins/t/feedback_plugin_send.test b/mysql-test/suite/plugins/t/feedback_plugin_send.test new file mode 100644 index 00000000..0ea1814e --- /dev/null +++ b/mysql-test/suite/plugins/t/feedback_plugin_send.test @@ -0,0 +1,43 @@ +# Restart of server does not work for embedded. +--source include/not_embedded.inc + +source feedback_plugin_load.test; + +if (!$MTR_FEEDBACK_PLUGIN) { + skip MTR_FEEDBACK_PLUGIN is not set; +} + +# +# Yep. The plugin waits 5 minutes before sending anything, +# and there's no way to force it to send anything sooner. +# Let's wait, and hope that mtr is started with --parallel and +# is doing some work in other workers. +# + +sleep 100; +set global sql_mode=ONLY_FULL_GROUP_BY; +sleep 210; + + +# The test expects that the plugin will send a report at least 2 times, +# now (5 min after loading) and on server shutdown which happens below. +# Since we have already waited for 5 min, let's be generous +# and make sure the server has enough time to shut down properly. +# We won't lose anything if the shutdown is fast, but if it's slow, the plugin +# will still be able to finish the job and write about it in the error log. + +--let $shutdown_timeout= 60 +source include/restart_mysqld.inc; + +replace_result https http 2 6; +perl; + $log_error= $ENV{'MYSQLTEST_VARDIR'} . '/log/mysqld.1.err'; + open(LOG, '<', $log_error) or die "open(< $log_error): $!"; + + %logg=(); + while ($_=<LOG>) { + $logg{$&}++ if /feedback plugin:.*/; + } + print "$_\n" for sort keys %logg; + close LOG; +EOF |