summaryrefslogtreecommitdiff
path: root/mysql-test/include/mysql_upgrade_preparation.inc
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/include/mysql_upgrade_preparation.inc')
-rw-r--r--mysql-test/include/mysql_upgrade_preparation.inc30
1 files changed, 30 insertions, 0 deletions
diff --git a/mysql-test/include/mysql_upgrade_preparation.inc b/mysql-test/include/mysql_upgrade_preparation.inc
new file mode 100644
index 00000000000..5de8a79d6e0
--- /dev/null
+++ b/mysql-test/include/mysql_upgrade_preparation.inc
@@ -0,0 +1,30 @@
+# Include this in any test using mysql_upgrade
+
+# Can't run test of external client with embedded server
+-- source include/not_embedded.inc
+
+# Only run test if "mysql_upgrade" is found
+--require r/have_mysql_upgrade.result
+--disable_query_log
+select LENGTH("$MYSQL_UPGRADE")>0 as have_mysql_upgrade;
+--enable_query_log
+
+#
+# Hack:
+#
+# If running with Valgrind ($VALGRIND_TEST <> 0) then the resource
+# consumption (CPU) for upgrading a large log table will be intense.
+# Therefore, truncate the log table in advance and issue a statement
+# that should be logged.
+#
+if (`SELECT $VALGRIND_TEST`)
+{
+ --disable_query_log
+ --disable_result_log
+ --disable_abort_on_error
+ TRUNCATE TABLE mysql.general_log;
+ SELECT 1;
+ --enable_abort_on_error
+ --enable_result_log
+ --enable_query_log
+}