1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

auto-merge

This commit is contained in:
Tatiana A. Nurnberg
2009-01-09 16:48:02 +01:00
28 changed files with 695 additions and 177 deletions

View File

@ -617,10 +617,10 @@ call p_verify_status_increment(0, 0, 0, 0);
--echo
--echo # No test because of Bug#8729 "rename table fails on temporary table"
--echo # 24. DDL: TRUNCATE TEMPORARY TABLE, does not start a transaction
--echo # 24. DDL: TRUNCATE TEMPORARY TABLE
--echo
truncate table t2;
call p_verify_status_increment(2, 0, 2, 0);
call p_verify_status_increment(4, 0, 4, 0);
commit;
--echo # There is nothing left to commit
call p_verify_status_increment(0, 0, 0, 0);
@ -733,7 +733,7 @@ call p_verify_status_increment(1, 0, 1, 0);
rename table t4 to t3;
call p_verify_status_increment(1, 0, 1, 0);
truncate table t3;
call p_verify_status_increment(2, 2, 2, 2);
call p_verify_status_increment(4, 4, 2, 2);
create view v1 as select * from t2;
call p_verify_status_increment(1, 0, 1, 0);
check table t1;

View File

@ -11,6 +11,6 @@ eval SET @@global.sort_buffer_size = $save;
--enable_query_log
if (!$mach32)
{
skip Need a 32 bit machine;
skip Need a 32 bit machine/binary;
}

View File

@ -9,6 +9,6 @@ eval SET @@session.sort_buffer_size = $save;
--enable_query_log
if (!$mach64)
{
skip Need a 64 bit machine;
skip Need a 64 binary ;
}

View File

@ -683,10 +683,10 @@ SUCCESS
# 23. DDL: RENAME TEMPORARY TABLE, does not start a transaction
# No test because of Bug#8729 "rename table fails on temporary table"
# 24. DDL: TRUNCATE TEMPORARY TABLE, does not start a transaction
# 24. DDL: TRUNCATE TEMPORARY TABLE
truncate table t2;
call p_verify_status_increment(2, 0, 2, 0);
call p_verify_status_increment(4, 0, 4, 0);
SUCCESS
commit;
@ -853,7 +853,7 @@ call p_verify_status_increment(1, 0, 1, 0);
SUCCESS
truncate table t3;
call p_verify_status_increment(2, 2, 2, 2);
call p_verify_status_increment(4, 4, 2, 2);
SUCCESS
create view v1 as select * from t2;

View File

@ -1767,4 +1767,83 @@ ref NULL
rows 6
Extra Using where; Using index
DROP TABLE foo, bar, foo2;
DROP TABLE IF EXISTS t1,t3,t2;
DROP FUNCTION IF EXISTS f1;
CREATE FUNCTION f1() RETURNS VARCHAR(250)
BEGIN
return 'hhhhhhh' ;
END|
CREATE TABLE t1 (a VARCHAR(20), b VARCHAR(20), c VARCHAR(20)) ENGINE=INNODB;
BEGIN WORK;
CREATE TEMPORARY TABLE t2 (a VARCHAR(20), b VARCHAR(20), c varchar(20)) ENGINE=INNODB;
CREATE TEMPORARY TABLE t3 LIKE t2;
INSERT INTO t1 VALUES ('a','b',NULL),('c','d',NULL),('e','f',NULL);
SET @stmt := CONCAT('INSERT INTO t2 SELECT tbl.a, tbl.b, f1()',' FROM t1 tbl');
PREPARE stmt1 FROM @stmt;
SET @stmt := CONCAT('INSERT INTO t3', ' SELECT * FROM t2');
PREPARE stmt3 FROM @stmt;
EXECUTE stmt1;
COMMIT;
DEALLOCATE PREPARE stmt1;
DEALLOCATE PREPARE stmt3;
DROP TABLE t1,t3,t2;
DROP FUNCTION f1;
DROP TABLE IF EXISTS t1,t2;
CREATE TABLE t1 (id INT NOT NULL, PRIMARY KEY (id)) ENGINE=INNODB;
CREATE TABLE t2 (id INT PRIMARY KEY,
t1_id INT, INDEX par_ind (t1_id),
FOREIGN KEY (t1_id) REFERENCES t1(id)) ENGINE=INNODB;
INSERT INTO t1 VALUES (1),(2);
INSERT INTO t2 VALUES (3,2);
SET AUTOCOMMIT = 0;
START TRANSACTION;
TRUNCATE TABLE t1;
ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`t1_id`) REFERENCES `t1` (`id`))
SELECT * FROM t1;
id
1
2
COMMIT;
SELECT * FROM t1;
id
1
2
START TRANSACTION;
TRUNCATE TABLE t1;
ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`t1_id`) REFERENCES `t1` (`id`))
SELECT * FROM t1;
id
1
2
ROLLBACK;
SELECT * FROM t1;
id
1
2
SET AUTOCOMMIT = 1;
START TRANSACTION;
SELECT * FROM t1;
id
1
2
COMMIT;
TRUNCATE TABLE t1;
ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`t1_id`) REFERENCES `t1` (`id`))
SELECT * FROM t1;
id
1
2
DELETE FROM t2 WHERE id = 3;
START TRANSACTION;
SELECT * FROM t1;
id
1
2
TRUNCATE TABLE t1;
ROLLBACK;
SELECT * FROM t1;
id
TRUNCATE TABLE t2;
DROP TABLE t2;
DROP TABLE t1;
End of 5.1 tests

View File

@ -1,4 +1,16 @@
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
CREATE TABLE t1
(a INT NOT NULL AUTO_INCREMENT,
b DATETIME,
PRIMARY KEY (a,b),
KEY (b))
PARTITION BY RANGE (to_days(b))
(PARTITION p0 VALUES LESS THAN (733681) COMMENT = 'LESS THAN 2008-10-01',
PARTITION p1 VALUES LESS THAN (733712) COMMENT = 'LESS THAN 2008-11-01',
PARTITION pX VALUES LESS THAN MAXVALUE);
SELECT a,b FROM t1 WHERE b >= '2008-12-01' AND b < '2009-12-00';
a b
DROP TABLE t1;
create table t1 ( a int not null) partition by hash(a) partitions 2;
insert into t1 values (1),(2),(3);
explain select * from t1 where a=5 and a=6;

View File

@ -194,4 +194,20 @@ DELETE FROM t1;
SELECT * FROM t1;
a b
DROP TABLE t1;
DROP TABLE IF EXISTS t1,t2;
DROP FUNCTION IF EXISTS f1;
CREATE TEMPORARY TABLE t1 (a INT);
CREATE TEMPORARY TABLE t2 LIKE t1;
CREATE FUNCTION f1() RETURNS INT
BEGIN
return 1;
END|
INSERT INTO t2 SELECT * FROM t1;
INSERT INTO t1 SELECT f1();
CREATE TABLE t3 SELECT * FROM t1;
INSERT INTO t1 SELECT f1();
UPDATE t1,t2 SET t1.a = t2.a;
INSERT INTO t2 SELECT f1();
DROP TABLE t1,t2,t3;
DROP FUNCTION f1;
End of 5.1 tests

View File

@ -113,16 +113,17 @@ master-bin.000001 # Table_map # # table_id: # (test.t1)
master-bin.000001 # Update_rows # # table_id: # flags: STMT_END_F
master-bin.000001 # Xid # # COMMIT /* XID */
DROP TABLE t1;
flush status;
show status like "binlog_cache_use";
Variable_name Value
Binlog_cache_use 13
Binlog_cache_use 0
show status like "binlog_cache_disk_use";
Variable_name Value
Binlog_cache_disk_use 0
create table t1 (a int) engine=innodb;
show status like "binlog_cache_use";
Variable_name Value
Binlog_cache_use 14
Binlog_cache_use 1
show status like "binlog_cache_disk_use";
Variable_name Value
Binlog_cache_disk_use 1
@ -131,7 +132,7 @@ delete from t1;
commit;
show status like "binlog_cache_use";
Variable_name Value
Binlog_cache_use 15
Binlog_cache_use 2
show status like "binlog_cache_disk_use";
Variable_name Value
Binlog_cache_disk_use 1

View File

@ -101,6 +101,7 @@ DROP TABLE t1;
# Actually this test has nothing to do with innodb per se, it just requires
# transactional table.
#
flush status;
show status like "binlog_cache_use";
show status like "binlog_cache_disk_use";

View File

@ -40,9 +40,12 @@
# Save initial value #
#############################################################
# due to differences when running on Windows (bug filed)
# due to differences when running on Windows (Bug#36695)
--source include/not_windows.inc
let $kbrange32 = BETWEEN 32776 AND 32999;
let $mbrange2 = BETWEEN 2097116 AND 2100000;
--disable_warnings
SET @start_global_value = @@global.sort_buffer_size;
@ -55,11 +58,13 @@ SET @start_session_value = @@session.sort_buffer_size;
SET @@global.sort_buffer_size = 1000;
SET @@global.sort_buffer_size = DEFAULT;
SELECT @@global.sort_buffer_size >= 2097116 AND @@global.sort_buffer_size < 3000000;
eval
SELECT @@global.sort_buffer_size $mbrange2;
SET @@session.sort_buffer_size = 2000;
SET @@session.sort_buffer_size = DEFAULT;
SELECT @@session.sort_buffer_size >= 2097116 AND @@session.sort_buffer_size < 3000000;
eval
SELECT @@session.sort_buffer_size $mbrange2;
--echo '#--------------------FN_DYNVARS_151_02-------------------------#'
@ -68,10 +73,12 @@ SELECT @@session.sort_buffer_size >= 2097116 AND @@session.sort_buffer_size < 30
######################################################################
SET @@global.sort_buffer_size = DEFAULT;
SELECT @@global.sort_buffer_size >= 2097116 AND @@global.sort_buffer_size < 3000000;
eval
SELECT @@global.sort_buffer_size $mbrange2;
SET @@session.sort_buffer_size = DEFAULT;
SELECT @@session.sort_buffer_size >= 2097116 AND @@session.sort_buffer_size < 3000000;
eval
SELECT @@session.sort_buffer_size $mbrange2;
--echo '#--------------------FN_DYNVARS_151_03-------------------------#'
@ -80,9 +87,11 @@ SELECT @@session.sort_buffer_size >= 2097116 AND @@session.sort_buffer_size < 30
################################################################################
SET @@global.sort_buffer_size = 32776;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
eval
SELECT @@global.sort_buffer_size $kbrange32;
SET @@global.sort_buffer_size = 32777;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
eval
SELECT @@global.sort_buffer_size $kbrange32;
SET @@global.sort_buffer_size = 4294967295;
SELECT @@global.sort_buffer_size;
SET @@global.sort_buffer_size = 4294967294;
@ -94,9 +103,11 @@ SELECT @@global.sort_buffer_size;
###################################################################################
SET @@session.sort_buffer_size = 32776;
SELECT @@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000;
eval
SELECT @@session.sort_buffer_size $kbrange32;
SET @@session.sort_buffer_size = 32777;
SELECT @@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000;
eval
SELECT @@session.sort_buffer_size $kbrange32;
SET @@session.sort_buffer_size = 4294967295;
SELECT @@session.sort_buffer_size;
SET @@session.sort_buffer_size = 4294967294;
@ -109,9 +120,11 @@ SELECT @@session.sort_buffer_size;
##################################################################
SET @@global.sort_buffer_size = 32775;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
eval
SELECT @@global.sort_buffer_size $kbrange32;
SET @@global.sort_buffer_size = -1024;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
eval
SELECT @@global.sort_buffer_size $kbrange32;
SET @@global.sort_buffer_size = 4294967296;
SELECT @@global.sort_buffer_size;
--Error ER_PARSE_ERROR
@ -122,9 +135,11 @@ SET @@global.sort_buffer_size = test;
SELECT @@global.sort_buffer_size;
SET @@session.sort_buffer_size = 32775;
SELECT @@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000;
eval
SELECT @@session.sort_buffer_size $kbrange32;
SET @@session.sort_buffer_size = -2;
SELECT @@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000;
eval
SELECT @@session.sort_buffer_size $kbrange32;
--Error ER_PARSE_ERROR
SET @@session.sort_buffer_size = 65530.34.;
SET @@session.sort_buffer_size = 4294967296;
@ -148,7 +163,7 @@ SELECT @@global.sort_buffer_size = VARIABLE_VALUE FROM
####################################################################
SELECT @@session.sort_buffer_size = VARIABLE_VALUE FROM
INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='sort_buffer_size';
INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='sort_buffer_size';
--echo '#------------------FN_DYNVARS_151_08-----------------------#'
@ -157,9 +172,11 @@ SELECT @@session.sort_buffer_size = VARIABLE_VALUE FROM
####################################################################
SET @@global.sort_buffer_size = TRUE;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
eval
SELECT @@global.sort_buffer_size $kbrange32;
SET @@global.sort_buffer_size = FALSE;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
eval
SELECT @@global.sort_buffer_size $kbrange32;
--echo '#---------------------FN_DYNVARS_151_09----------------------#'
####################################################################################
@ -185,7 +202,8 @@ SELECT @@local.sort_buffer_size = @@session.sort_buffer_size;
###################################################################################
SET sort_buffer_size = 9100;
SELECT @@sort_buffer_size >= 32776 AND @@sort_buffer_size < 33000;
eval
SELECT @@sort_buffer_size $kbrange32;
--Error ER_UNKNOWN_TABLE
SELECT local.sort_buffer_size;
--Error ER_UNKNOWN_TABLE

View File

@ -3,31 +3,31 @@ SET @start_session_value = @@session.sort_buffer_size;
'#--------------------FN_DYNVARS_151_01-------------------------#'
SET @@global.sort_buffer_size = 1000;
SET @@global.sort_buffer_size = DEFAULT;
SELECT @@global.sort_buffer_size >= 2097116 AND @@global.sort_buffer_size < 3000000;
@@global.sort_buffer_size >= 2097116 AND @@global.sort_buffer_size < 3000000
SELECT @@global.sort_buffer_size BETWEEN 2097116 AND 2100000;
@@global.sort_buffer_size BETWEEN 2097116 AND 2100000
1
SET @@session.sort_buffer_size = 2000;
SET @@session.sort_buffer_size = DEFAULT;
SELECT @@session.sort_buffer_size >= 2097116 AND @@session.sort_buffer_size < 3000000;
@@session.sort_buffer_size >= 2097116 AND @@session.sort_buffer_size < 3000000
SELECT @@session.sort_buffer_size BETWEEN 2097116 AND 2100000;
@@session.sort_buffer_size BETWEEN 2097116 AND 2100000
1
'#--------------------FN_DYNVARS_151_02-------------------------#'
SET @@global.sort_buffer_size = DEFAULT;
SELECT @@global.sort_buffer_size >= 2097116 AND @@global.sort_buffer_size < 3000000;
@@global.sort_buffer_size >= 2097116 AND @@global.sort_buffer_size < 3000000
SELECT @@global.sort_buffer_size BETWEEN 2097116 AND 2100000;
@@global.sort_buffer_size BETWEEN 2097116 AND 2100000
1
SET @@session.sort_buffer_size = DEFAULT;
SELECT @@session.sort_buffer_size >= 2097116 AND @@session.sort_buffer_size < 3000000;
@@session.sort_buffer_size >= 2097116 AND @@session.sort_buffer_size < 3000000
SELECT @@session.sort_buffer_size BETWEEN 2097116 AND 2100000;
@@session.sort_buffer_size BETWEEN 2097116 AND 2100000
1
'#--------------------FN_DYNVARS_151_03-------------------------#'
SET @@global.sort_buffer_size = 32776;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
@@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000
SELECT @@global.sort_buffer_size BETWEEN 32776 AND 32999;
@@global.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@global.sort_buffer_size = 32777;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
@@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000
SELECT @@global.sort_buffer_size BETWEEN 32776 AND 32999;
@@global.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@global.sort_buffer_size = 4294967295;
SELECT @@global.sort_buffer_size;
@ -39,12 +39,12 @@ SELECT @@global.sort_buffer_size;
4294967294
'#--------------------FN_DYNVARS_151_04-------------------------#'
SET @@session.sort_buffer_size = 32776;
SELECT @@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000;
@@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000
SELECT @@session.sort_buffer_size BETWEEN 32776 AND 32999;
@@session.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@session.sort_buffer_size = 32777;
SELECT @@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000;
@@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000
SELECT @@session.sort_buffer_size BETWEEN 32776 AND 32999;
@@session.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@session.sort_buffer_size = 4294967295;
SELECT @@session.sort_buffer_size;
@ -56,12 +56,12 @@ SELECT @@session.sort_buffer_size;
4294967294
'#------------------FN_DYNVARS_151_05-----------------------#'
SET @@global.sort_buffer_size = 32775;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
@@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000
SELECT @@global.sort_buffer_size BETWEEN 32776 AND 32999;
@@global.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@global.sort_buffer_size = -1024;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
@@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000
SELECT @@global.sort_buffer_size BETWEEN 32776 AND 32999;
@@global.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@global.sort_buffer_size = 4294967296;
SELECT @@global.sort_buffer_size;
@ -78,12 +78,12 @@ SELECT @@global.sort_buffer_size;
@@global.sort_buffer_size
4294967295
SET @@session.sort_buffer_size = 32775;
SELECT @@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000;
@@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000
SELECT @@session.sort_buffer_size BETWEEN 32776 AND 32999;
@@session.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@session.sort_buffer_size = -2;
SELECT @@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000;
@@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000
SELECT @@session.sort_buffer_size BETWEEN 32776 AND 32999;
@@session.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@session.sort_buffer_size = 65530.34.;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.' at line 1
@ -105,12 +105,12 @@ INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='sort_buffer_size';
1
'#------------------FN_DYNVARS_151_08-----------------------#'
SET @@global.sort_buffer_size = TRUE;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
@@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000
SELECT @@global.sort_buffer_size BETWEEN 32776 AND 32999;
@@global.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@global.sort_buffer_size = FALSE;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
@@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000
SELECT @@global.sort_buffer_size BETWEEN 32776 AND 32999;
@@global.sort_buffer_size BETWEEN 32776 AND 32999
1
'#---------------------FN_DYNVARS_151_09----------------------#'
SET @@global.sort_buffer_size = 9000;
@ -127,8 +127,8 @@ SELECT @@local.sort_buffer_size = @@session.sort_buffer_size;
1
'#---------------------FN_DYNVARS_151_11----------------------#'
SET sort_buffer_size = 9100;
SELECT @@sort_buffer_size >= 32776 AND @@sort_buffer_size < 33000;
@@sort_buffer_size >= 32776 AND @@sort_buffer_size < 33000
SELECT @@sort_buffer_size BETWEEN 32776 AND 32999;
@@sort_buffer_size BETWEEN 32776 AND 32999
1
SELECT local.sort_buffer_size;
ERROR 42S02: Unknown table 'local' in field list

View File

@ -3,31 +3,31 @@ SET @start_session_value = @@session.sort_buffer_size;
'#--------------------FN_DYNVARS_151_01-------------------------#'
SET @@global.sort_buffer_size = 1000;
SET @@global.sort_buffer_size = DEFAULT;
SELECT @@global.sort_buffer_size >= 2097116 AND @@global.sort_buffer_size < 3000000;
@@global.sort_buffer_size >= 2097116 AND @@global.sort_buffer_size < 3000000
SELECT @@global.sort_buffer_size BETWEEN 2097116 AND 2100000;
@@global.sort_buffer_size BETWEEN 2097116 AND 2100000
1
SET @@session.sort_buffer_size = 2000;
SET @@session.sort_buffer_size = DEFAULT;
SELECT @@session.sort_buffer_size >= 2097116 AND @@session.sort_buffer_size < 3000000;
@@session.sort_buffer_size >= 2097116 AND @@session.sort_buffer_size < 3000000
SELECT @@session.sort_buffer_size BETWEEN 2097116 AND 2100000;
@@session.sort_buffer_size BETWEEN 2097116 AND 2100000
1
'#--------------------FN_DYNVARS_151_02-------------------------#'
SET @@global.sort_buffer_size = DEFAULT;
SELECT @@global.sort_buffer_size >= 2097116 AND @@global.sort_buffer_size < 3000000;
@@global.sort_buffer_size >= 2097116 AND @@global.sort_buffer_size < 3000000
SELECT @@global.sort_buffer_size BETWEEN 2097116 AND 2100000;
@@global.sort_buffer_size BETWEEN 2097116 AND 2100000
1
SET @@session.sort_buffer_size = DEFAULT;
SELECT @@session.sort_buffer_size >= 2097116 AND @@session.sort_buffer_size < 3000000;
@@session.sort_buffer_size >= 2097116 AND @@session.sort_buffer_size < 3000000
SELECT @@session.sort_buffer_size BETWEEN 2097116 AND 2100000;
@@session.sort_buffer_size BETWEEN 2097116 AND 2100000
1
'#--------------------FN_DYNVARS_151_03-------------------------#'
SET @@global.sort_buffer_size = 32776;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
@@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000
SELECT @@global.sort_buffer_size BETWEEN 32776 AND 32999;
@@global.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@global.sort_buffer_size = 32777;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
@@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000
SELECT @@global.sort_buffer_size BETWEEN 32776 AND 32999;
@@global.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@global.sort_buffer_size = 4294967295;
SELECT @@global.sort_buffer_size;
@ -39,12 +39,12 @@ SELECT @@global.sort_buffer_size;
4294967294
'#--------------------FN_DYNVARS_151_04-------------------------#'
SET @@session.sort_buffer_size = 32776;
SELECT @@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000;
@@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000
SELECT @@session.sort_buffer_size BETWEEN 32776 AND 32999;
@@session.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@session.sort_buffer_size = 32777;
SELECT @@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000;
@@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000
SELECT @@session.sort_buffer_size BETWEEN 32776 AND 32999;
@@session.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@session.sort_buffer_size = 4294967295;
SELECT @@session.sort_buffer_size;
@ -56,12 +56,12 @@ SELECT @@session.sort_buffer_size;
4294967294
'#------------------FN_DYNVARS_151_05-----------------------#'
SET @@global.sort_buffer_size = 32775;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
@@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000
SELECT @@global.sort_buffer_size BETWEEN 32776 AND 32999;
@@global.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@global.sort_buffer_size = -1024;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
@@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000
SELECT @@global.sort_buffer_size BETWEEN 32776 AND 32999;
@@global.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@global.sort_buffer_size = 4294967296;
SELECT @@global.sort_buffer_size;
@ -78,12 +78,12 @@ SELECT @@global.sort_buffer_size;
@@global.sort_buffer_size
4294967296
SET @@session.sort_buffer_size = 32775;
SELECT @@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000;
@@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000
SELECT @@session.sort_buffer_size BETWEEN 32776 AND 32999;
@@session.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@session.sort_buffer_size = -2;
SELECT @@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000;
@@session.sort_buffer_size >= 32776 AND @@session.sort_buffer_size < 33000
SELECT @@session.sort_buffer_size BETWEEN 32776 AND 32999;
@@session.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@session.sort_buffer_size = 65530.34.;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.' at line 1
@ -105,12 +105,12 @@ INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='sort_buffer_size';
1
'#------------------FN_DYNVARS_151_08-----------------------#'
SET @@global.sort_buffer_size = TRUE;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
@@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000
SELECT @@global.sort_buffer_size BETWEEN 32776 AND 32999;
@@global.sort_buffer_size BETWEEN 32776 AND 32999
1
SET @@global.sort_buffer_size = FALSE;
SELECT @@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000;
@@global.sort_buffer_size >= 32776 AND @@global.sort_buffer_size < 33000
SELECT @@global.sort_buffer_size BETWEEN 32776 AND 32999;
@@global.sort_buffer_size BETWEEN 32776 AND 32999
1
'#---------------------FN_DYNVARS_151_09----------------------#'
SET @@global.sort_buffer_size = 9000;
@ -127,8 +127,8 @@ SELECT @@local.sort_buffer_size = @@session.sort_buffer_size;
1
'#---------------------FN_DYNVARS_151_11----------------------#'
SET sort_buffer_size = 9100;
SELECT @@sort_buffer_size >= 32776 AND @@sort_buffer_size < 33000;
@@sort_buffer_size >= 32776 AND @@sort_buffer_size < 33000
SELECT @@sort_buffer_size BETWEEN 32776 AND 32999;
@@sort_buffer_size BETWEEN 32776 AND 32999
1
SELECT local.sort_buffer_size;
ERROR 42S02: Unknown table 'local' in field list

View File

@ -91,4 +91,97 @@ INSERT INTO foo2 SELECT * FROM foo;
DROP TABLE foo, bar, foo2;
#
# Bug#41348: INSERT INTO tbl SELECT * FROM temp_tbl overwrites locking type of temp table
#
--disable_warnings
DROP TABLE IF EXISTS t1,t3,t2;
DROP FUNCTION IF EXISTS f1;
--enable_warnings
DELIMITER |;
CREATE FUNCTION f1() RETURNS VARCHAR(250)
BEGIN
return 'hhhhhhh' ;
END|
DELIMITER ;|
CREATE TABLE t1 (a VARCHAR(20), b VARCHAR(20), c VARCHAR(20)) ENGINE=INNODB;
BEGIN WORK;
CREATE TEMPORARY TABLE t2 (a VARCHAR(20), b VARCHAR(20), c varchar(20)) ENGINE=INNODB;
CREATE TEMPORARY TABLE t3 LIKE t2;
INSERT INTO t1 VALUES ('a','b',NULL),('c','d',NULL),('e','f',NULL);
SET @stmt := CONCAT('INSERT INTO t2 SELECT tbl.a, tbl.b, f1()',' FROM t1 tbl');
PREPARE stmt1 FROM @stmt;
SET @stmt := CONCAT('INSERT INTO t3', ' SELECT * FROM t2');
PREPARE stmt3 FROM @stmt;
EXECUTE stmt1;
COMMIT;
DEALLOCATE PREPARE stmt1;
DEALLOCATE PREPARE stmt3;
DROP TABLE t1,t3,t2;
DROP FUNCTION f1;
#
# Bug#37016: TRUNCATE TABLE removes some rows but not all
#
--disable_warnings
DROP TABLE IF EXISTS t1,t2;
--enable_warnings
CREATE TABLE t1 (id INT NOT NULL, PRIMARY KEY (id)) ENGINE=INNODB;
CREATE TABLE t2 (id INT PRIMARY KEY,
t1_id INT, INDEX par_ind (t1_id),
FOREIGN KEY (t1_id) REFERENCES t1(id)) ENGINE=INNODB;
INSERT INTO t1 VALUES (1),(2);
INSERT INTO t2 VALUES (3,2);
SET AUTOCOMMIT = 0;
START TRANSACTION;
--error ER_ROW_IS_REFERENCED_2
TRUNCATE TABLE t1;
SELECT * FROM t1;
COMMIT;
SELECT * FROM t1;
START TRANSACTION;
--error ER_ROW_IS_REFERENCED_2
TRUNCATE TABLE t1;
SELECT * FROM t1;
ROLLBACK;
SELECT * FROM t1;
SET AUTOCOMMIT = 1;
START TRANSACTION;
SELECT * FROM t1;
COMMIT;
--error ER_ROW_IS_REFERENCED_2
TRUNCATE TABLE t1;
SELECT * FROM t1;
DELETE FROM t2 WHERE id = 3;
START TRANSACTION;
SELECT * FROM t1;
TRUNCATE TABLE t1;
ROLLBACK;
SELECT * FROM t1;
TRUNCATE TABLE t2;
DROP TABLE t2;
DROP TABLE t1;
--echo End of 5.1 tests

View File

@ -8,6 +8,22 @@
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
--enable_warnings
#
# Bug#40972: some sql execution lead the whole database crashing
#
# Setup so the start is at partition pX and end is at p1
# Pruning does handle 'bad' dates differently.
CREATE TABLE t1
(a INT NOT NULL AUTO_INCREMENT,
b DATETIME,
PRIMARY KEY (a,b),
KEY (b))
PARTITION BY RANGE (to_days(b))
(PARTITION p0 VALUES LESS THAN (733681) COMMENT = 'LESS THAN 2008-10-01',
PARTITION p1 VALUES LESS THAN (733712) COMMENT = 'LESS THAN 2008-11-01',
PARTITION pX VALUES LESS THAN MAXVALUE);
SELECT a,b FROM t1 WHERE b >= '2008-12-01' AND b < '2009-12-00';
DROP TABLE t1;
# Check if we can infer from condition on partition fields that
# no records will match.

View File

@ -204,4 +204,35 @@ DELETE FROM t1;
SELECT * FROM t1;
DROP TABLE t1;
#
# Bug#41348: INSERT INTO tbl SELECT * FROM temp_tbl overwrites locking type of temp table
#
--disable_warnings
DROP TABLE IF EXISTS t1,t2;
DROP FUNCTION IF EXISTS f1;
--enable_warnings
CREATE TEMPORARY TABLE t1 (a INT);
CREATE TEMPORARY TABLE t2 LIKE t1;
DELIMITER |;
CREATE FUNCTION f1() RETURNS INT
BEGIN
return 1;
END|
DELIMITER ;|
INSERT INTO t2 SELECT * FROM t1;
INSERT INTO t1 SELECT f1();
CREATE TABLE t3 SELECT * FROM t1;
INSERT INTO t1 SELECT f1();
UPDATE t1,t2 SET t1.a = t2.a;
INSERT INTO t2 SELECT f1();
DROP TABLE t1,t2,t3;
DROP FUNCTION f1;
--echo End of 5.1 tests