diff options
author | Alexey Kopytov <Alexey.Kopytov@sun.com> | 2009-03-24 23:44:38 +0300 |
---|---|---|
committer | Alexey Kopytov <Alexey.Kopytov@sun.com> | 2009-03-24 23:44:38 +0300 |
commit | 808a99e9cf8c5a6a3b9e6a530b71182a92888c22 (patch) | |
tree | df804904d2700c325ef7b21412ebdafcd0c529af /mysql-test | |
parent | 326cb98b0c4701035546d4db0555cbc52a083013 (diff) | |
download | mariadb-git-808a99e9cf8c5a6a3b9e6a530b71182a92888c22.tar.gz |
Fix for bug #43801: mysql.test takes too long, fails due to
expired timeout on debx86-b in PB
Moved the resource-intensive test case for bug #41486 into
a separate test file to reduce execution time for mysql.test.
mysql-test/include/wait_until_disconnected.inc:
Used in mysql-bug41486.test.
mysql-test/r/mysql-bug41486.result:
Moved the resource-intensive test case for bug #41486 into
a separate test file to reduce execution time for mysql.test.
mysql-test/r/mysql.result:
Moved the resource-intensive test case for bug #41486 into
a separate test file to reduce execution time for mysql.test.
mysql-test/t/mysql-bug41486.test:
Moved the resource-intensive test case for bug #41486 into
a separate test file to reduce execution time for mysql.test.
mysql-test/t/mysql.test:
Moved the resource-intensive test case for bug #41486 into
a separate test file to reduce execution time for mysql.test.
Diffstat (limited to 'mysql-test')
-rw-r--r-- | mysql-test/include/wait_until_disconnected.inc | 21 | ||||
-rw-r--r-- | mysql-test/r/mysql-bug41486.result | 10 | ||||
-rw-r--r-- | mysql-test/r/mysql.result | 9 | ||||
-rw-r--r-- | mysql-test/t/mysql-bug41486.test | 45 | ||||
-rw-r--r-- | mysql-test/t/mysql.test | 33 |
5 files changed, 76 insertions, 42 deletions
diff --git a/mysql-test/include/wait_until_disconnected.inc b/mysql-test/include/wait_until_disconnected.inc new file mode 100644 index 00000000000..a4362e52d01 --- /dev/null +++ b/mysql-test/include/wait_until_disconnected.inc @@ -0,0 +1,21 @@ +# +# Include this script to wait until the connection to the +# server has been dropped +--disable_result_log +--disable_query_log +let $counter= 500; +let $mysql_errno= 0; +while (!$mysql_errno) +{ + --error 0,1053,2002,2006,2013 + show status; + + dec $counter; + if (!$counter) + { + --die Server failed to dissapear + } + --sleep 0.1 +} +--enable_query_log +--enable_result_log diff --git a/mysql-test/r/mysql-bug41486.result b/mysql-test/r/mysql-bug41486.result new file mode 100644 index 00000000000..454b5888b49 --- /dev/null +++ b/mysql-test/r/mysql-bug41486.result @@ -0,0 +1,10 @@ +DROP TABLE IF EXISTS t1; +SET @old_max_allowed_packet= @@global.max_allowed_packet; +SET @@global.max_allowed_packet = 2 * 1024 * 1024 + 1024; +CREATE TABLE t1(data LONGBLOB); +INSERT INTO t1 SELECT REPEAT('1', 2*1024*1024); +SELECT LENGTH(data) FROM t1; +LENGTH(data) +2097152 +DROP TABLE t1; +SET @@global.max_allowed_packet = @old_max_allowed_packet; diff --git a/mysql-test/r/mysql.result b/mysql-test/r/mysql.result index cef5e08ec6b..10537f6da16 100644 --- a/mysql-test/r/mysql.result +++ b/mysql-test/r/mysql.result @@ -192,13 +192,4 @@ delimiter 1 1 1 -set @old_max_allowed_packet = @@global.max_allowed_packet; -set @@global.max_allowed_packet = 2 * 1024 * 1024 + 1024; -CREATE TABLE t1(data LONGBLOB); -INSERT INTO t1 SELECT REPEAT('1', 2*1024*1024); -SELECT LENGTH(data) FROM t1; -LENGTH(data) -2097152 -DROP TABLE t1; -set @@global.max_allowed_packet = @old_max_allowed_packet; End of 5.0 tests diff --git a/mysql-test/t/mysql-bug41486.test b/mysql-test/t/mysql-bug41486.test new file mode 100644 index 00000000000..805c0f99480 --- /dev/null +++ b/mysql-test/t/mysql-bug41486.test @@ -0,0 +1,45 @@ +# +# Bug#41486 extra character appears in BLOB for every ~40Mb after +# mysqldump/import +# +# This test consumes a significant amount of resources. +# Therefore it should be kept separated from other tests. +# Otherwise we might suffer from problems like +# Bug#43801 mysql.test takes too long, fails due to expired timeout +# on debx86-b in PB +# + +--disable_warnings +DROP TABLE IF EXISTS t1; +--enable_warnings + +# Have to change the global variable as the session variable is +# read-only. +SET @old_max_allowed_packet= @@global.max_allowed_packet; +# 2 MB blob length + some space for the rest of INSERT query +SET @@global.max_allowed_packet = 2 * 1024 * 1024 + 1024; + +# Create a new connection since the global max_allowed_packet +# has no effect for the current connection +connect (con1, localhost, root,,); + +CREATE TABLE t1(data LONGBLOB); +INSERT INTO t1 SELECT REPEAT('1', 2*1024*1024); + +let $outfile= $MYSQLTEST_VARDIR/tmp/bug41486.sql; +--error 0,1 +remove_file $outfile; +--exec $MYSQL_DUMP test t1 > $outfile +# Check that the mysql client does not insert extra newlines when loading +# strings longer than client's max_allowed_packet +--exec $MYSQL --max_allowed_packet=1M test < $outfile 2>&1 +SELECT LENGTH(data) FROM t1; + +DROP TABLE t1; + +# Cleanup +disconnect con1; +--source include/wait_until_disconnected.inc +remove_file $outfile; +connection default; +SET @@global.max_allowed_packet = @old_max_allowed_packet; diff --git a/mysql-test/t/mysql.test b/mysql-test/t/mysql.test index f352c08fb5b..594d10e46a5 100644 --- a/mysql-test/t/mysql.test +++ b/mysql-test/t/mysql.test @@ -331,37 +331,4 @@ EOF remove_file $MYSQLTEST_VARDIR/tmp/bug31060.sql; -# -# Bug #41486: extra character appears in BLOB for every ~40Mb after -# mysqldump/import -# - -# Have to change the global variable as the session variable is -# read-only. -set @old_max_allowed_packet = @@global.max_allowed_packet; -# 2 MB blob length + some space for the rest of INSERT query -set @@global.max_allowed_packet = 2 * 1024 * 1024 + 1024; - -# Create a new connection since the global max_allowed_packet -# has no effect for the current connection -connect (con1, localhost, root,,); -connection con1; - -CREATE TABLE t1(data LONGBLOB); -INSERT INTO t1 SELECT REPEAT('1', 2*1024*1024); - ---exec $MYSQL_DUMP test t1 >$MYSQLTEST_VARDIR/tmp/bug41486.sql -# Check that the mysql client does not insert extra newlines when loading -# strings longer than client's max_allowed_packet ---exec $MYSQL --max_allowed_packet=1M test < $MYSQLTEST_VARDIR/tmp/bug41486.sql 2>&1 -SELECT LENGTH(data) FROM t1; - -remove_file $MYSQLTEST_VARDIR/tmp/bug41486.sql; -DROP TABLE t1; - -connection default; -disconnect con1; - -set @@global.max_allowed_packet = @old_max_allowed_packet; - --echo End of 5.0 tests |