summaryrefslogtreecommitdiff
path: root/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test')
-rw-r--r--mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test229
1 files changed, 229 insertions, 0 deletions
diff --git a/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test b/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test
new file mode 100644
index 00000000000..97e1f2daed1
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test
@@ -0,0 +1,229 @@
+############# mysql-test\t\sql_low_priority_updates_func.test ###########################
+# #
+# Variable Name: sql_low_priority_updates #
+# Scope: GLOBAL #
+# Access Type: Dynamic #
+# Data Type: BOOLEAN #
+# Default Value: 1 TRUE #
+# Values: 1 TRUE, 0 FALSE #
+# #
+# #
+# Creation Date: 2008-02-25 #
+# Author: Sharique Abdullah #
+# #
+# Description: Test Cases of Dynamic System Variable "sql_low_priority_updates" #
+# that checks behavior of this variable in the following ways #
+# * Functionality based on different values #
+# #
+# Reference: http://dev.mysql.com/doc/refman/5.1/en/set-option.html #
+# #
+#########################################################################################
+
+--echo ** Setup **
+--echo
+#
+# Setup
+#
+
+--source include/not_embedded.inc
+
+--echo Creating connection con0
+connect (con0,localhost,root,,);
+--echo Creating connection con1
+connect (con1,localhost,root,,);
+
+connection default;
+
+SET @global_delayed_insert_limit = @@GLOBAL.delayed_insert_limit;
+
+#
+# Create Table
+#
+
+CREATE TABLE t1 (a varchar(100));
+
+--echo '#--------------------FN_DYNVARS_25_01-------------------------#'
+#
+# Value less than the provided INSERTS (9)
+#
+
+SET GLOBAL delayed_insert_limit = 9;
+
+--echo ** Connection con0 **
+connection con0;
+SET GLOBAL delayed_insert_limit = 9;
+--echo ** Connection con1 **
+connection con1;
+SET GLOBAL delayed_insert_limit = 9;
+--echo ** Connection default **
+connection default;
+SET GLOBAL delayed_insert_limit = 9;
+
+INSERT INTO t1 VALUES('1');
+INSERT INTO t1 VALUES('2');
+INSERT INTO t1 VALUES('3');
+INSERT INTO t1 VALUES('4');
+INSERT INTO t1 VALUES('5');
+INSERT INTO t1 VALUES('6');
+
+LOCK TABLE t1 WRITE;
+
+--echo ** Connection con1 **
+connection con1;
+
+delimiter |;
+
+send
+INSERT DELAYED INTO t1 VALUES('7');
+INSERT DELAYED INTO t1 VALUES('8');
+INSERT DELAYED INTO t1 VALUES('9');
+INSERT DELAYED INTO t1 VALUES('10');
+INSERT DELAYED INTO t1 VALUES('11');
+INSERT DELAYED INTO t1 VALUES('12');
+INSERT DELAYED INTO t1 VALUES('13');
+INSERT DELAYED INTO t1 VALUES('14');
+INSERT DELAYED INTO t1 VALUES('15');
+INSERT DELAYED INTO t1 VALUES('16');
+INSERT DELAYED INTO t1 VALUES('17');
+INSERT DELAYED INTO t1 VALUES('18');
+INSERT DELAYED INTO t1 VALUES('19');
+INSERT DELAYED INTO t1 VALUES('20');
+INSERT DELAYED INTO t1 VALUES('21');
+INSERT DELAYED INTO t1 VALUES('22');|
+
+delimiter ;|
+
+--echo ** Connection con0 **
+connection con0;
+
+delimiter |;
+
+send
+SELECT * FROM t1;|
+
+delimiter ;|
+
+--echo ** Connection default **
+connection default;
+
+--echo Waiting for 1 sec
+--sleep 1
+
+UNLOCK TABLES;
+
+--echo ** Connection con0 **
+connection con0;
+reap;
+--echo 'Bug#35386: insert delayed inserts 1 + limit rows instead of just limit rows'
+
+--echo ** Connection default **
+connection default;
+
+--echo Waiting for 1 sec
+--sleep 1
+--echo Checking if the delayed insert continued afterwards
+SELECT * FROM t1;
+
+DELETE FROM t1;
+
+
+--echo '#--------------------FN_DYNVARS_25_02-------------------------#'
+#
+# Value 5
+#
+
+SET GLOBAL delayed_insert_limit = 20;
+
+--echo ** Connection con0 **
+connection con0;
+SET GLOBAL delayed_insert_limit = 20;
+--echo ** Connection con1 **
+connection con1;
+SET GLOBAL delayed_insert_limit = 20;
+--echo ** Connection default **
+connection default;
+SET GLOBAL delayed_insert_limit = 20;
+
+INSERT INTO t1 VALUES('1');
+INSERT INTO t1 VALUES('2');
+INSERT INTO t1 VALUES('3');
+INSERT INTO t1 VALUES('4');
+INSERT INTO t1 VALUES('5');
+INSERT INTO t1 VALUES('6');
+
+LOCK TABLE t1 WRITE;
+
+--echo ** Connection con1 **
+connection con1;
+
+--echo Asynchronous execute
+delimiter |;
+
+send
+INSERT DELAYED INTO t1 VALUES('7');
+INSERT DELAYED INTO t1 VALUES('8');
+INSERT DELAYED INTO t1 VALUES('9');
+INSERT DELAYED INTO t1 VALUES('10');
+INSERT DELAYED INTO t1 VALUES('11');
+INSERT DELAYED INTO t1 VALUES('12');
+INSERT DELAYED INTO t1 VALUES('13');
+INSERT DELAYED INTO t1 VALUES('14');
+INSERT DELAYED INTO t1 VALUES('15');
+INSERT DELAYED INTO t1 VALUES('16');
+INSERT DELAYED INTO t1 VALUES('17');
+INSERT DELAYED INTO t1 VALUES('18');
+INSERT DELAYED INTO t1 VALUES('19');
+INSERT DELAYED INTO t1 VALUES('20');
+INSERT DELAYED INTO t1 VALUES('21');
+INSERT DELAYED INTO t1 VALUES('22');|
+
+delimiter ;|
+
+--echo ** Connection con0 **
+connection con0;
+
+--echo Asynchronous execute
+delimiter |;
+
+send
+SELECT * FROM t1;|
+
+delimiter ;|
+
+--echo ** Connection default **
+connection default;
+
+--echo Waiting for 1 sec
+--sleep 1
+
+UNLOCK TABLES;
+
+--echo ** Connection con0 **
+connection con0;
+--echo Asynchronous execute result
+reap;
+
+--echo ** Connection default**
+connection default;
+
+--echo Waiting for 1 sec
+--sleep 1
+--echo Checking if the delayed insert gives the same result afterwards
+SELECT * FROM t1;
+
+DELETE FROM t1;
+
+#
+# Cleanup
+#
+
+--echo Switching to default
+connection default;
+
+--echo Disconnecting from con1, con0
+disconnect con0;
+disconnect con1;
+
+DROP TABLE t1;
+
+SET @@GLOBAL.delayed_insert_limit = @global_delayed_insert_limit;