summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorElena Stepanova <elenst@montyprogram.com>2015-09-27 18:01:47 +0300
committerElena Stepanova <elenst@montyprogram.com>2015-09-27 18:01:47 +0300
commitce7d8c5ee8c459ac692715994fa73b8f29e9e48a (patch)
tree48e0ab760be112a55bdc8ef879b3b58e351f58c8
parentbdcf37076595b003d74edc6a23c53ac23fba64a8 (diff)
downloadmariadb-git-ce7d8c5ee8c459ac692715994fa73b8f29e9e48a.tar.gz
MDEV-7330 plugins.feedback_plugin_send fails sporadically in buildbot
The test restarts the server and expects that the feedback plugin will send a report on shutdown, and will write about it in the error log. But the server is only given 10 sec to shut down properly, which is not always enough. Added a parameter to restart_mysqld.inc, and set it to a bigger value in feedback_plugin_send
-rw-r--r--mysql-test/include/restart_mysqld.inc17
-rw-r--r--mysql-test/suite/plugins/t/feedback_plugin_send.test9
2 files changed, 25 insertions, 1 deletions
diff --git a/mysql-test/include/restart_mysqld.inc b/mysql-test/include/restart_mysqld.inc
index 7cb9c7994d8..ed0fe64a547 100644
--- a/mysql-test/include/restart_mysqld.inc
+++ b/mysql-test/include/restart_mysqld.inc
@@ -1,3 +1,8 @@
+# ==== Usage ====
+#
+# [--let $shutdown_timeout= 30]
+# [--let $allow_rpl_inited= 1]
+# --source include/restart_mysqld.inc
if ($rpl_inited)
{
@@ -7,6 +12,16 @@ if ($rpl_inited)
}
}
+--let $server_shutdown_timeout= 10
+if ($shutdown_timeout)
+{
+ --let $server_shutdown_timeout= $shutdown_timeout
+}
+if ($shutdown_timeout == 0)
+{
+ --let $server_shutdown_timeout= 0
+}
+
# Write file to make mysql-test-run.pl expect the "crash", but don't start
# it until it's told to
--let $_server_id= `SELECT @@server_id`
@@ -15,7 +30,7 @@ if ($rpl_inited)
# Send shutdown to the connected server and give
# it 10 seconds to die before zapping it
-shutdown_server 10;
+shutdown_server $server_shutdown_timeout;
# Write file to make mysql-test-run.pl start up the server again
--exec echo "restart" > $_expect_file_name
diff --git a/mysql-test/suite/plugins/t/feedback_plugin_send.test b/mysql-test/suite/plugins/t/feedback_plugin_send.test
index 45b507f8e78..31542c33482 100644
--- a/mysql-test/suite/plugins/t/feedback_plugin_send.test
+++ b/mysql-test/suite/plugins/t/feedback_plugin_send.test
@@ -14,6 +14,15 @@ if (!$MTR_FEEDBACK_PLUGIN) {
# is doing some work in other workers.
#
sleep 310;
+
+# 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;