mirror of
https://github.com/MariaDB/server.git
synced 2025-09-02 09:41:40 +03:00
merge mysql-5.5->mysql-5.5-bugteam
This commit is contained in:
@@ -9,6 +9,7 @@ funcs_1.myisam_views @solaris # Bug#50595 2010-03-05 alik funcs_1.myi
|
||||
innodb.innodb_information_schema # Bug#48883 2010-05-11 alik Test "innodb_information_schema" takes fewer locks than expected
|
||||
|
||||
main.func_math @freebsd # Bug#43020 2010-05-04 alik main.func_math fails on FreeBSD in PB2
|
||||
main.gis # Bug#52208 2010-11-24 alik gis fails on some platforms (Solaris, HP-UX, Linux)
|
||||
main.gis-rtree @freebsd # Bug#38965 2010-05-04 alik test cases gis-rtree, type_float, type_newdecimal fail in embedded server
|
||||
main.information_schema # Bug#47449 2009-09-19 alik main.information_schema and innodb.innodb_information_schema fail sporadically
|
||||
main.lock_multi_bug38499 # Bug#47448 2009-09-19 alik main.lock_multi_bug38499 times out sporadically
|
||||
@@ -16,6 +17,7 @@ main.lock_multi_bug38691 @solaris # Bug#47792 2009-10-02 alik main.lock_m
|
||||
main.log_tables # Bug#47924 2009-10-08 alik main.log_tables times out sporadically
|
||||
main.lowercase_table2 @darwin # Bug#55509 2010-07-26 alik main.lowercase_table2 fails on Mac OSX (again)
|
||||
main.outfile_loaddata @solaris # Bug#46895 2010-01-20 alik Test "outfile_loaddata" fails (reproducible)
|
||||
main.show_check # Bug#58414 2010-11-24 alik Race condition in show_check.test
|
||||
main.signal_demo3 @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
|
||||
main.sp @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
|
||||
main.type_float @freebsd # Bug#38965 2010-05-04 alik test cases gis-rtree, type_float, type_newdecimal fail in embedded server
|
||||
@@ -26,6 +28,7 @@ rpl.rpl_heartbeat_2slaves # BUG#43828 2009-10-22 luis fails spora
|
||||
rpl.rpl_innodb_bug28430* # Bug#46029
|
||||
|
||||
sys_vars.max_sp_recursion_depth_func @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
|
||||
sys_vars.plugin_dir_basic # Bug#52223 2010-11-24 alik Test "plugin_dir_basic" does not support RPM build (test) directory structure
|
||||
sys_vars.slow_query_log_func @solaris # Bug#54819 2010-06-26 alik sys_vars.slow_query_log_func fails sporadically on Solaris 10
|
||||
sys_vars.wait_timeout_func # Bug#41255 2010-04-26 alik wait_timeout_func fails
|
||||
|
||||
|
@@ -1384,7 +1384,7 @@ sub command_line_setup {
|
||||
# Add the location for libmysqld.dll to the path.
|
||||
my $separator= ";";
|
||||
my $lib_mysqld=
|
||||
mtr_path_exists(vs_config_dirs('libmysqld',''));
|
||||
mtr_path_exists("$bindir/lib", vs_config_dirs('libmysqld',''));
|
||||
if ( IS_CYGWIN )
|
||||
{
|
||||
$lib_mysqld= posix_path($lib_mysqld);
|
||||
|
@@ -410,6 +410,15 @@ hex(cast(_ascii 0x7f as char(1) character set latin1))
|
||||
7F
|
||||
End of 5.0 tests
|
||||
#
|
||||
# Bug#58022 ... like ... escape export_set ( ... ) crashes when export_set returns warnings
|
||||
#
|
||||
SELECT '' LIKE '' ESCAPE EXPORT_SET(1, 1, 1, 1, '');
|
||||
'' LIKE '' ESCAPE EXPORT_SET(1, 1, 1, 1, '')
|
||||
1
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect INTEGER value: ''
|
||||
End of 5.1 tests
|
||||
#
|
||||
# Start of 5.5 tests
|
||||
#
|
||||
#
|
||||
|
@@ -2374,6 +2374,16 @@ hex(convert(_latin1 0xA4A2 using ujis)) hex(c2)
|
||||
DROP PROCEDURE sp1;
|
||||
DROP TABLE t1;
|
||||
DROP TABLE t2;
|
||||
#
|
||||
# Bug#57257 Replace(ExtractValue(...)) causes MySQL crash
|
||||
#
|
||||
SET NAMES utf8;
|
||||
SELECT CONVERT(REPLACE(EXPORT_SET('a','a','a','','a'),'00','') USING ujis);
|
||||
CONVERT(REPLACE(EXPORT_SET('a','a','a','','a'),'00','') USING ujis)
|
||||
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
||||
Warning 1292 Truncated incorrect INTEGER value: 'a'
|
||||
set names default;
|
||||
set character_set_database=default;
|
||||
set character_set_server=default;
|
||||
|
@@ -625,16 +625,16 @@ INSERT INTO t1 VALUES (_utf8mb4 0xCE85),(_utf8mb4 0xF4808080);
|
||||
SELECT HEX(a), HEX(CONVERT(a USING utf8mb4)) FROM t1 ORDER BY a;
|
||||
HEX(a) HEX(CONVERT(a USING utf8mb4))
|
||||
0385 CE85
|
||||
FF9D EFBE9D
|
||||
D800DF84 F0908E84
|
||||
DBC0DC00 F4808080
|
||||
FF9D EFBE9D
|
||||
ALTER TABLE t1 ADD KEY(a);
|
||||
SELECT HEX(a), HEX(CONVERT(a USING utf8mb4)) FROM t1 ORDER BY a;
|
||||
HEX(a) HEX(CONVERT(a USING utf8mb4))
|
||||
0385 CE85
|
||||
FF9D EFBE9D
|
||||
D800DF84 F0908E84
|
||||
DBC0DC00 F4808080
|
||||
FF9D EFBE9D
|
||||
DROP TABLE IF EXISTS t1;
|
||||
select @@collation_connection;
|
||||
@@collation_connection
|
||||
|
@@ -4918,5 +4918,16 @@ maketime(`a`,`a`,`a`)
|
||||
DROP TABLE t1;
|
||||
SET sql_mode=default;
|
||||
#
|
||||
# Bug#57687 crash when reporting duplicate group_key error and utf8
|
||||
# Make sure to modify this when Bug#58081 is fixed.
|
||||
#
|
||||
SET NAMES utf8;
|
||||
CREATE TABLE t1 (a INT);
|
||||
INSERT INTO t1 VALUES (0), (0), (1), (0), (0);
|
||||
SELECT COUNT(*) FROM t1, t1 t2
|
||||
GROUP BY INSERT('', t2.a, t1.a, (@@global.max_binlog_size));
|
||||
ERROR 23000: Duplicate entry '107374182410737418241' for key 'group_key'
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# End of 5.5 tests
|
||||
#
|
||||
|
@@ -544,3 +544,17 @@ SELECT DATE_FORMAT("2009-01-01",'%W %d %M %Y') as valid_date;
|
||||
valid_date
|
||||
Thursday 01 January 2009
|
||||
"End of 5.0 tests"
|
||||
#
|
||||
# Start of 5.1 tests
|
||||
#
|
||||
#
|
||||
# Bug#58005 utf8 + get_format causes failed assertion: !str || str != Ptr'
|
||||
#
|
||||
SET NAMES utf8;
|
||||
SELECT LEAST('%', GET_FORMAT(datetime, 'eur'), CAST(GET_FORMAT(datetime, 'eur') AS CHAR(65535)));
|
||||
LEAST('%', GET_FORMAT(datetime, 'eur'), CAST(GET_FORMAT(datetime, 'eur') AS CHAR(65535)))
|
||||
%
|
||||
SET NAMES latin1;
|
||||
#
|
||||
# End of 5.1 tests
|
||||
#
|
||||
|
@@ -381,6 +381,15 @@ GREATEST(a, (SELECT b FROM t1 LIMIT 1))
|
||||
3
|
||||
1
|
||||
DROP TABLE t1;
|
||||
SELECT INET_NTOA(0);
|
||||
INET_NTOA(0)
|
||||
0.0.0.0
|
||||
SELECT '1' IN ('1', INET_NTOA(0));
|
||||
'1' IN ('1', INET_NTOA(0))
|
||||
1
|
||||
#
|
||||
# End of 5.1 tests
|
||||
#
|
||||
#
|
||||
# Bug #58199: name_const in the having clause crashes
|
||||
#
|
||||
@@ -388,4 +397,9 @@ CREATE TABLE t1 (a INT);
|
||||
SELECT 1 from t1 HAVING NAME_CONST('', a);
|
||||
ERROR HY000: Incorrect arguments to NAME_CONST
|
||||
DROP TABLE t1;
|
||||
End of tests
|
||||
#
|
||||
# End of 5.5 tests
|
||||
#
|
||||
#
|
||||
# End of tests
|
||||
#
|
||||
|
@@ -738,3 +738,38 @@ SET DEBUG_SYNC= 'now SIGNAL release_thrlock';
|
||||
# Connection default
|
||||
DROP TABLE t1;
|
||||
SET DEBUG_SYNC= 'RESET';
|
||||
#
|
||||
# Bug#57130 crash in Item_field::print during SHOW CREATE TABLE or VIEW
|
||||
#
|
||||
DROP TABLE IF EXISTS t1;
|
||||
DROP VIEW IF EXISTS v1;
|
||||
DROP FUNCTION IF EXISTS f1;
|
||||
CREATE TABLE t1(a INT);
|
||||
CREATE FUNCTION f1() RETURNS INTEGER RETURN 1;
|
||||
CREATE VIEW v1 AS SELECT * FROM t1 WHERE f1() = 1;
|
||||
DROP FUNCTION f1;
|
||||
# Connection con1
|
||||
SET DEBUG_SYNC= 'open_tables_after_open_and_process_table SIGNAL opened WAIT_FOR dropped EXECUTE 2';
|
||||
# Sending:
|
||||
SHOW CREATE VIEW v1;
|
||||
# Connection con2
|
||||
SET DEBUG_SYNC= 'now WAIT_FOR opened';
|
||||
SET DEBUG_SYNC= 'now SIGNAL dropped';
|
||||
SET DEBUG_SYNC= 'now WAIT_FOR opened';
|
||||
# Sending:
|
||||
FLUSH TABLES;
|
||||
# Connection default
|
||||
# Waiting for FLUSH TABLES to be blocked.
|
||||
SET DEBUG_SYNC= 'now SIGNAL dropped';
|
||||
# Connection con1
|
||||
# Reaping: SHOW CREATE VIEW v1
|
||||
View Create View character_set_client collation_connection
|
||||
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `t1`.`a` AS `a` from `t1` where (`f1`() = 1) latin1 latin1_swedish_ci
|
||||
Warnings:
|
||||
Warning 1356 View 'test.v1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
|
||||
# Connection con2
|
||||
# Reaping: FLUSH TABLES
|
||||
# Connection default
|
||||
SET DEBUG_SYNC= 'RESET';
|
||||
DROP VIEW v1;
|
||||
DROP TABLE t1;
|
||||
|
@@ -838,7 +838,7 @@ drop table t1;
|
||||
mysqltest: At line 1: change user failed: Unknown database 'inexistent'
|
||||
mysqltest: At line 1: change user failed: Access denied for user 'inexistent'@'localhost' (using password: NO)
|
||||
mysqltest: At line 1: change user failed: Access denied for user 'root'@'localhost' (using password: YES)
|
||||
file1.txt
|
||||
REPLACED_FILE1.txt
|
||||
file1.txt
|
||||
file2.txt
|
||||
file11.txt
|
||||
|
@@ -1,3 +1,76 @@
|
||||
call mtr.add_suppression("nnoDB: Error: table `test`.`t1` .* Partition.* InnoDB internal");
|
||||
#
|
||||
# Bug#55091: Server crashes on ADD PARTITION after a failed attempt
|
||||
#
|
||||
SET @old_innodb_file_format_max = @@global.innodb_file_format_max;
|
||||
SET @old_innodb_file_format = @@global.innodb_file_format;
|
||||
SET @old_innodb_file_per_table = @@global.innodb_file_per_table;
|
||||
SET @old_innodb_strict_mode = @@global.innodb_strict_mode;
|
||||
SET @@global.innodb_file_format = Barracuda,
|
||||
@@global.innodb_file_per_table = ON,
|
||||
@@global.innodb_strict_mode = ON;
|
||||
# Connection con1
|
||||
CREATE TABLE t1 (id INT NOT NULL
|
||||
PRIMARY KEY,
|
||||
user_num CHAR(10)
|
||||
) ENGINE = InnoDB
|
||||
KEY_BLOCK_SIZE=4
|
||||
PARTITION BY HASH(id) PARTITIONS 1;
|
||||
t1#P#p0.ibd
|
||||
t1.frm
|
||||
t1.par
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`id` int(11) NOT NULL,
|
||||
`user_num` char(10) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=4
|
||||
/*!50100 PARTITION BY HASH (id)
|
||||
PARTITIONS 1 */
|
||||
SET GLOBAL innodb_file_per_table = OFF;
|
||||
# Connection con2
|
||||
LOCK TABLE t1 WRITE;
|
||||
# ALTER fails because COMPRESSED/KEY_BLOCK_SIZE
|
||||
# are incompatible with innodb_file_per_table = OFF;
|
||||
ALTER TABLE t1 ADD PARTITION PARTITIONS 1;
|
||||
ERROR HY000: Got error 1478 from storage engine
|
||||
t1#P#p0.ibd
|
||||
t1.frm
|
||||
t1.par
|
||||
# This SET is not needed to reproduce the bug,
|
||||
# it is here just to make the test case more realistic
|
||||
SET innodb_strict_mode = OFF;
|
||||
ALTER TABLE t1 ADD PARTITION PARTITIONS 2;
|
||||
Warnings:
|
||||
Warning 1478 InnoDB: KEY_BLOCK_SIZE requires innodb_file_per_table.
|
||||
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=4.
|
||||
Warning 1478 InnoDB: KEY_BLOCK_SIZE requires innodb_file_per_table.
|
||||
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=4.
|
||||
Warning 1478 InnoDB: KEY_BLOCK_SIZE requires innodb_file_per_table.
|
||||
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=4.
|
||||
t1.frm
|
||||
t1.par
|
||||
ALTER TABLE t1 REBUILD PARTITION p0;
|
||||
Warnings:
|
||||
Warning 1478 InnoDB: KEY_BLOCK_SIZE requires innodb_file_per_table.
|
||||
Warning 1478 InnoDB: ignoring KEY_BLOCK_SIZE=4.
|
||||
UNLOCK TABLES;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`id` int(11) NOT NULL,
|
||||
`user_num` char(10) DEFAULT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 KEY_BLOCK_SIZE=4
|
||||
/*!50100 PARTITION BY HASH (id)
|
||||
PARTITIONS 3 */
|
||||
DROP TABLE t1;
|
||||
# Connection default
|
||||
SET @@global.innodb_strict_mode = @old_innodb_strict_mode;
|
||||
SET @@global.innodb_file_format = @old_innodb_file_format;
|
||||
SET @@global.innodb_file_per_table = @old_innodb_file_per_table;
|
||||
SET @@global.innodb_file_format_max = @old_innodb_file_format_max;
|
||||
SET NAMES utf8;
|
||||
CREATE TABLE `t``\""e` (a INT, PRIMARY KEY (a))
|
||||
ENGINE=InnoDB
|
||||
|
@@ -150,3 +150,21 @@ Warnings:
|
||||
Error 1547 Column count of mysql.proc is wrong. Expected 20, found 19. The table is probably corrupted
|
||||
# Restore mysql.proc.
|
||||
drop table mysql.proc;
|
||||
#
|
||||
# Bug#58414 mysql_upgrade fails on dump upgrade between 5.1.53 -> 5.5.8
|
||||
#
|
||||
DROP TABLE IF EXISTS proc_backup;
|
||||
DROP DATABASE IF EXISTS db1;
|
||||
# Backup the proc table
|
||||
RENAME TABLE mysql.proc TO proc_backup;
|
||||
CREATE TABLE mysql.proc LIKE proc_backup;
|
||||
CREATE DATABASE db1;
|
||||
CREATE PROCEDURE db1.p1() SET @foo = 10;
|
||||
# Modify a field of the table.
|
||||
ALTER TABLE mysql.proc MODIFY comment CHAR (32);
|
||||
DROP DATABASE db1;
|
||||
Warnings:
|
||||
Error 1548 Cannot load from mysql.proc. The table is probably corrupted
|
||||
# Restore mysql.proc
|
||||
DROP TABLE mysql.proc;
|
||||
RENAME TABLE proc_backup TO mysql.proc;
|
||||
|
@@ -78,3 +78,30 @@ COMMIT;
|
||||
UNLOCK TABLES;
|
||||
DROP TABLE t1;
|
||||
SET DEBUG_SYNC='RESET';
|
||||
#
|
||||
# Bug#57659 Segfault in Query_cache::invalidate_data for TRUNCATE TABLE
|
||||
#
|
||||
# Note that this test case only reproduces the problem
|
||||
# when it is run with valgrind.
|
||||
DROP TABLE IF EXISTS t1, m1;
|
||||
CREATE TABLE t1(a INT) engine=memory;
|
||||
CREATE TABLE m1(a INT) engine=merge UNION(t1);
|
||||
# Connection con1
|
||||
SET DEBUG_SYNC= 'open_tables_after_open_and_process_table SIGNAL opened WAIT_FOR dropped';
|
||||
# Sending:
|
||||
TRUNCATE TABLE m1;
|
||||
# Connection con2
|
||||
SET DEBUG_SYNC= 'now WAIT_FOR opened';
|
||||
# Sending:
|
||||
FLUSH TABLES;
|
||||
# Connection default
|
||||
# Waiting for FLUSH TABLES to be blocked.
|
||||
SET DEBUG_SYNC= 'now SIGNAL dropped';
|
||||
# Connection con1
|
||||
# Reaping: TRUNCATE TABLE m1
|
||||
ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
|
||||
# Connection con2
|
||||
# Reaping: FLUSH TABLES
|
||||
# Connection default
|
||||
SET DEBUG_SYNC= 'RESET';
|
||||
DROP TABLE m1, t1;
|
||||
|
@@ -318,4 +318,12 @@ f1 date YES NULL
|
||||
f2 date YES NULL
|
||||
DROP TABLE t1;
|
||||
#
|
||||
#
|
||||
# Bug#57278: Crash on min/max + with date out of range.
|
||||
#
|
||||
set @a=(select min(makedate('111','1'))) ;
|
||||
select @a;
|
||||
@a
|
||||
0111-01-01
|
||||
#
|
||||
End of 6.0 tests
|
||||
|
@@ -1094,6 +1094,19 @@ Warning 1525 Incorrect XML value: 'parse error at line 1 pos 23: unexpected END-
|
||||
Warning 1525 Incorrect XML value: 'parse error at line 1 pos 23: unexpected END-OF-INPUT'
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Bug#57257 Replace(ExtractValue(...)) causes MySQL crash
|
||||
#
|
||||
SET NAMES utf8;
|
||||
SELECT REPLACE(EXTRACTVALUE('1', '/a'),'ds','');
|
||||
REPLACE(EXTRACTVALUE('1', '/a'),'ds','')
|
||||
|
||||
#
|
||||
# Bug #57820 extractvalue crashes
|
||||
#
|
||||
SELECT AVG(DISTINCT EXTRACTVALUE((''),('$@k')));
|
||||
AVG(DISTINCT EXTRACTVALUE((''),('$@k')))
|
||||
NULL
|
||||
#
|
||||
# Bug#57279 updatexml dies with: Assertion failed: str_arg[length] == 0
|
||||
#
|
||||
SELECT UPDATEXML(NULL, (LPAD(0.1111E-15, '2011', 1)), 1);
|
||||
|
@@ -11,3 +11,4 @@
|
||||
##############################################################################
|
||||
binlog_truncate_innodb : BUG#57291 2010-10-20 anitha Originally disabled due to BUG#42643. Product bug fixed, but test changes needed
|
||||
binlog_spurious_ddl_errors : BUG#54195 2010-06-03 alik binlog_spurious_ddl_errors.test fails, thus disabled
|
||||
binlog_row_failure_mixing_engines : BUG#58416 2010-11-23 ramil Fails on win x86 debug_max
|
||||
|
@@ -128,6 +128,14 @@ select hex(cast(_ascii 0x7f as char(1) character set latin1));
|
||||
|
||||
--echo End of 5.0 tests
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Bug#58022 ... like ... escape export_set ( ... ) crashes when export_set returns warnings
|
||||
--echo #
|
||||
SELECT '' LIKE '' ESCAPE EXPORT_SET(1, 1, 1, 1, '');
|
||||
|
||||
--echo End of 5.1 tests
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Start of 5.5 tests
|
||||
|
@@ -1209,6 +1209,13 @@ DROP PROCEDURE sp1;
|
||||
DROP TABLE t1;
|
||||
DROP TABLE t2;
|
||||
|
||||
--echo #
|
||||
--echo # Bug#57257 Replace(ExtractValue(...)) causes MySQL crash
|
||||
--echo #
|
||||
SET NAMES utf8;
|
||||
SELECT CONVERT(REPLACE(EXPORT_SET('a','a','a','','a'),'00','') USING ujis);
|
||||
|
||||
|
||||
set names default;
|
||||
set character_set_database=default;
|
||||
set character_set_server=default;
|
||||
|
@@ -1458,6 +1458,7 @@ SELECT HEX(INSERT(_utf8 0xD18FD18E, 2, 1, 0x20));
|
||||
|
||||
--echo End of 5.1 tests
|
||||
|
||||
|
||||
--echo Start of 5.4 tests
|
||||
|
||||
#
|
||||
@@ -1537,6 +1538,18 @@ DROP TABLE t1, t2;
|
||||
SET NAMES utf8;
|
||||
--source include/ctype_numconv.inc
|
||||
|
||||
--echo #
|
||||
--echo # Bug#57687 crash when reporting duplicate group_key error and utf8
|
||||
--echo # Make sure to modify this when Bug#58081 is fixed.
|
||||
--echo #
|
||||
SET NAMES utf8;
|
||||
CREATE TABLE t1 (a INT);
|
||||
INSERT INTO t1 VALUES (0), (0), (1), (0), (0);
|
||||
--error ER_DUP_ENTRY
|
||||
SELECT COUNT(*) FROM t1, t1 t2
|
||||
GROUP BY INSERT('', t2.a, t1.a, (@@global.max_binlog_size));
|
||||
DROP TABLE t1;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # End of 5.5 tests
|
||||
|
@@ -354,3 +354,19 @@ SELECT DATE_FORMAT("0000-02-28",'%W %d %M %Y') as valid_date;
|
||||
SELECT DATE_FORMAT("2009-01-01",'%W %d %M %Y') as valid_date;
|
||||
|
||||
--echo "End of 5.0 tests"
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Start of 5.1 tests
|
||||
--echo #
|
||||
|
||||
--echo #
|
||||
--echo # Bug#58005 utf8 + get_format causes failed assertion: !str || str != Ptr'
|
||||
--echo #
|
||||
SET NAMES utf8;
|
||||
SELECT LEAST('%', GET_FORMAT(datetime, 'eur'), CAST(GET_FORMAT(datetime, 'eur') AS CHAR(65535)));
|
||||
SET NAMES latin1;
|
||||
|
||||
--echo #
|
||||
--echo # End of 5.1 tests
|
||||
--echo #
|
||||
|
@@ -600,7 +600,7 @@ DROP TABLE t1;
|
||||
|
||||
CREATE TABLE t1(f1 VARCHAR(6) NOT NULL, FULLTEXT KEY(f1), UNIQUE(f1));
|
||||
INSERT INTO t1 VALUES ('test');
|
||||
|
||||
--disable_warnings
|
||||
SELECT 1 FROM t1 WHERE 1 >
|
||||
ALL((SELECT 1 FROM t1 JOIN t1 a
|
||||
ON (MATCH(t1.f1) against (""))
|
||||
@@ -627,6 +627,7 @@ EXECUTE stmt;
|
||||
EXECUTE stmt;
|
||||
|
||||
DEALLOCATE PREPARE stmt;
|
||||
--enable_warnings
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
|
@@ -511,6 +511,19 @@ SELECT DISTINCT GREATEST(a, (SELECT b FROM t1 LIMIT 1)) FROM t1 UNION SELECT 1;
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
|
||||
#
|
||||
# Bug #57283: inet_ntoa() crashes
|
||||
#
|
||||
SELECT INET_NTOA(0);
|
||||
SELECT '1' IN ('1', INET_NTOA(0));
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # End of 5.1 tests
|
||||
--echo #
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Bug #58199: name_const in the having clause crashes
|
||||
--echo #
|
||||
@@ -523,4 +536,11 @@ SELECT 1 from t1 HAVING NAME_CONST('', a);
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
--echo End of tests
|
||||
|
||||
--echo #
|
||||
--echo # End of 5.5 tests
|
||||
--echo #
|
||||
|
||||
--echo #
|
||||
--echo # End of tests
|
||||
--echo #
|
||||
|
@@ -1078,6 +1078,65 @@ DROP TABLE t1;
|
||||
SET DEBUG_SYNC= 'RESET';
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Bug#57130 crash in Item_field::print during SHOW CREATE TABLE or VIEW
|
||||
--echo #
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t1;
|
||||
DROP VIEW IF EXISTS v1;
|
||||
DROP FUNCTION IF EXISTS f1;
|
||||
--enable_warnings
|
||||
|
||||
CREATE TABLE t1(a INT);
|
||||
CREATE FUNCTION f1() RETURNS INTEGER RETURN 1;
|
||||
CREATE VIEW v1 AS SELECT * FROM t1 WHERE f1() = 1;
|
||||
DROP FUNCTION f1;
|
||||
connect(con2, localhost, root);
|
||||
|
||||
--echo # Connection con1
|
||||
connect (con1, localhost, root);
|
||||
# Need to trigger this sync point at least twice in order to
|
||||
# get valgrind test failures without the patch
|
||||
SET DEBUG_SYNC= 'open_tables_after_open_and_process_table SIGNAL opened WAIT_FOR dropped EXECUTE 2';
|
||||
--echo # Sending:
|
||||
--send SHOW CREATE VIEW v1
|
||||
|
||||
--echo # Connection con2
|
||||
connection con2;
|
||||
SET DEBUG_SYNC= 'now WAIT_FOR opened';
|
||||
SET DEBUG_SYNC= 'now SIGNAL dropped';
|
||||
SET DEBUG_SYNC= 'now WAIT_FOR opened';
|
||||
--echo # Sending:
|
||||
--send FLUSH TABLES
|
||||
|
||||
--echo # Connection default
|
||||
connection default;
|
||||
--echo # Waiting for FLUSH TABLES to be blocked.
|
||||
let $wait_condition= SELECT COUNT(*)=1 FROM information_schema.processlist
|
||||
WHERE state= 'Waiting for table flush' AND info= 'FLUSH TABLES';
|
||||
--source include/wait_condition.inc
|
||||
SET DEBUG_SYNC= 'now SIGNAL dropped';
|
||||
|
||||
--echo # Connection con1
|
||||
connection con1;
|
||||
--echo # Reaping: SHOW CREATE VIEW v1
|
||||
--reap
|
||||
|
||||
--echo # Connection con2
|
||||
connection con2;
|
||||
--echo # Reaping: FLUSH TABLES
|
||||
--reap
|
||||
|
||||
--echo # Connection default
|
||||
connection default;
|
||||
SET DEBUG_SYNC= 'RESET';
|
||||
DROP VIEW v1;
|
||||
DROP TABLE t1;
|
||||
disconnect con1;
|
||||
disconnect con2;
|
||||
|
||||
|
||||
# Check that all connections opened by test cases in this file are really
|
||||
# gone so execution of other tests won't be affected by their presence.
|
||||
--source include/wait_until_count_sessions.inc
|
||||
|
@@ -2707,6 +2707,8 @@ write_file $MYSQLTEST_VARDIR/tmp/testdir/file1.txt;
|
||||
hello
|
||||
EOF
|
||||
|
||||
# Verify that --replace_result also work on list_files
|
||||
--replace_result file REPLACED_FILE
|
||||
list_files $MYSQLTEST_VARDIR/tmp/testdir;
|
||||
# list_files gets the directory list before creating the new file
|
||||
list_files_write_file $MYSQLTEST_VARDIR/tmp/testdir/file2.txt $MYSQLTEST_VARDIR/tmp/testdir *;
|
||||
|
@@ -11,6 +11,7 @@ let $MYSQLD_DATADIR= `SELECT @@datadir`;
|
||||
--echo #
|
||||
--echo # Bug#56287: crash when using Partition datetime in sub in query
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1
|
||||
(c1 bigint(20) unsigned NOT NULL AUTO_INCREMENT,
|
||||
c2 varchar(40) not null default '',
|
||||
@@ -591,6 +592,7 @@ INSERT INTO t1 VALUES (1,1), (2,2);
|
||||
SELECT * FROM t1 WHERE i1 = ( SELECT i1 FROM t1 WHERE f1=0 LIMIT 1 );
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
--enable_parsing
|
||||
|
||||
--echo #
|
||||
|
@@ -1,6 +1,73 @@
|
||||
--source include/have_partition.inc
|
||||
--source include/have_innodb.inc
|
||||
|
||||
let $MYSQLD_DATADIR= `SELECT @@datadir`;
|
||||
|
||||
call mtr.add_suppression("nnoDB: Error: table `test`.`t1` .* Partition.* InnoDB internal");
|
||||
--echo #
|
||||
--echo # Bug#55091: Server crashes on ADD PARTITION after a failed attempt
|
||||
--echo #
|
||||
SET @old_innodb_file_format_max = @@global.innodb_file_format_max;
|
||||
SET @old_innodb_file_format = @@global.innodb_file_format;
|
||||
SET @old_innodb_file_per_table = @@global.innodb_file_per_table;
|
||||
SET @old_innodb_strict_mode = @@global.innodb_strict_mode;
|
||||
SET @@global.innodb_file_format = Barracuda,
|
||||
@@global.innodb_file_per_table = ON,
|
||||
@@global.innodb_strict_mode = ON;
|
||||
|
||||
--echo # Connection con1
|
||||
--connect(con1,localhost,root,,)
|
||||
|
||||
CREATE TABLE t1 (id INT NOT NULL
|
||||
PRIMARY KEY,
|
||||
user_num CHAR(10)
|
||||
) ENGINE = InnoDB
|
||||
KEY_BLOCK_SIZE=4
|
||||
PARTITION BY HASH(id) PARTITIONS 1;
|
||||
|
||||
--replace_result #p# #P#
|
||||
--list_files $MYSQLD_DATADIR/test
|
||||
SHOW CREATE TABLE t1;
|
||||
|
||||
SET GLOBAL innodb_file_per_table = OFF;
|
||||
|
||||
--disconnect con1
|
||||
--connect(con2,localhost,root,,)
|
||||
--echo # Connection con2
|
||||
|
||||
LOCK TABLE t1 WRITE;
|
||||
|
||||
--echo # ALTER fails because COMPRESSED/KEY_BLOCK_SIZE
|
||||
--echo # are incompatible with innodb_file_per_table = OFF;
|
||||
|
||||
--error ER_GET_ERRNO
|
||||
ALTER TABLE t1 ADD PARTITION PARTITIONS 1;
|
||||
|
||||
--replace_result #p# #P#
|
||||
--list_files $MYSQLD_DATADIR/test
|
||||
--echo # This SET is not needed to reproduce the bug,
|
||||
--echo # it is here just to make the test case more realistic
|
||||
SET innodb_strict_mode = OFF;
|
||||
|
||||
ALTER TABLE t1 ADD PARTITION PARTITIONS 2;
|
||||
--replace_result #p# #P#
|
||||
--list_files $MYSQLD_DATADIR/test
|
||||
|
||||
# really bug#56172
|
||||
ALTER TABLE t1 REBUILD PARTITION p0;
|
||||
|
||||
UNLOCK TABLES;
|
||||
SHOW CREATE TABLE t1;
|
||||
DROP TABLE t1;
|
||||
|
||||
--disconnect con2
|
||||
--connection default
|
||||
--echo # Connection default
|
||||
SET @@global.innodb_strict_mode = @old_innodb_strict_mode;
|
||||
SET @@global.innodb_file_format = @old_innodb_file_format;
|
||||
SET @@global.innodb_file_per_table = @old_innodb_file_per_table;
|
||||
SET @@global.innodb_file_format_max = @old_innodb_file_format_max;
|
||||
|
||||
#
|
||||
# Bug#32430 - show engine innodb status causes errors
|
||||
#
|
||||
|
@@ -252,3 +252,30 @@ drop table mysql.proc;
|
||||
--remove_file $MYSQLTEST_VARDIR/tmp/proc.frm
|
||||
--remove_file $MYSQLTEST_VARDIR/tmp/proc.MYD
|
||||
--remove_file $MYSQLTEST_VARDIR/tmp/proc.MYI
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Bug#58414 mysql_upgrade fails on dump upgrade between 5.1.53 -> 5.5.8
|
||||
--echo #
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS proc_backup;
|
||||
DROP DATABASE IF EXISTS db1;
|
||||
--enable_warnings
|
||||
|
||||
--echo # Backup the proc table
|
||||
RENAME TABLE mysql.proc TO proc_backup;
|
||||
CREATE TABLE mysql.proc LIKE proc_backup;
|
||||
|
||||
CREATE DATABASE db1;
|
||||
CREATE PROCEDURE db1.p1() SET @foo = 10;
|
||||
|
||||
--echo # Modify a field of the table.
|
||||
ALTER TABLE mysql.proc MODIFY comment CHAR (32);
|
||||
|
||||
# This should not fail even if mysql.proc is invalid.
|
||||
DROP DATABASE db1;
|
||||
|
||||
--echo # Restore mysql.proc
|
||||
DROP TABLE mysql.proc;
|
||||
RENAME TABLE proc_backup TO mysql.proc;
|
||||
|
@@ -172,3 +172,57 @@ UNLOCK TABLES;
|
||||
DROP TABLE t1;
|
||||
SET DEBUG_SYNC='RESET';
|
||||
|
||||
--echo #
|
||||
--echo # Bug#57659 Segfault in Query_cache::invalidate_data for TRUNCATE TABLE
|
||||
--echo #
|
||||
|
||||
--echo # Note that this test case only reproduces the problem
|
||||
--echo # when it is run with valgrind.
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t1, m1;
|
||||
--enable_warnings
|
||||
|
||||
CREATE TABLE t1(a INT) engine=memory;
|
||||
CREATE TABLE m1(a INT) engine=merge UNION(t1);
|
||||
connect(con2, localhost, root);
|
||||
|
||||
--echo # Connection con1
|
||||
connect(con1, localhost, root);
|
||||
SET DEBUG_SYNC= 'open_tables_after_open_and_process_table SIGNAL opened WAIT_FOR dropped';
|
||||
--echo # Sending:
|
||||
--send TRUNCATE TABLE m1
|
||||
|
||||
--echo # Connection con2
|
||||
connection con2;
|
||||
SET DEBUG_SYNC= 'now WAIT_FOR opened';
|
||||
--echo # Sending:
|
||||
--send FLUSH TABLES
|
||||
|
||||
--echo # Connection default
|
||||
connection default;
|
||||
--echo # Waiting for FLUSH TABLES to be blocked.
|
||||
let $wait_condition= SELECT COUNT(*)=1 FROM information_schema.processlist
|
||||
WHERE state= 'Waiting for table flush' AND info= 'FLUSH TABLES';
|
||||
--source include/wait_condition.inc
|
||||
SET DEBUG_SYNC= 'now SIGNAL dropped';
|
||||
|
||||
--echo # Connection con1
|
||||
connection con1;
|
||||
--echo # Reaping: TRUNCATE TABLE m1
|
||||
--error ER_WRONG_MRG_TABLE
|
||||
--reap
|
||||
disconnect con1;
|
||||
--source include/wait_until_disconnected.inc
|
||||
|
||||
--echo # Connection con2
|
||||
connection con2;
|
||||
--echo # Reaping: FLUSH TABLES
|
||||
--reap
|
||||
disconnect con2;
|
||||
--source include/wait_until_disconnected.inc
|
||||
|
||||
--echo # Connection default
|
||||
connection default;
|
||||
SET DEBUG_SYNC= 'RESET';
|
||||
DROP TABLE m1, t1;
|
||||
|
@@ -284,4 +284,12 @@ DROP TABLE t1;
|
||||
|
||||
--echo #
|
||||
|
||||
--echo #
|
||||
--echo # Bug#57278: Crash on min/max + with date out of range.
|
||||
--echo #
|
||||
set @a=(select min(makedate('111','1'))) ;
|
||||
select @a;
|
||||
--echo #
|
||||
|
||||
|
||||
--echo End of 6.0 tests
|
||||
|
@@ -617,6 +617,20 @@ FROM t1 ORDER BY t1.id;
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Bug#57257 Replace(ExtractValue(...)) causes MySQL crash
|
||||
--echo #
|
||||
SET NAMES utf8;
|
||||
SELECT REPLACE(EXTRACTVALUE('1', '/a'),'ds','');
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Bug #57820 extractvalue crashes
|
||||
--echo #
|
||||
SELECT AVG(DISTINCT EXTRACTVALUE((''),('$@k')));
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Bug#57279 updatexml dies with: Assertion failed: str_arg[length] == 0
|
||||
--echo #
|
||||
|
Reference in New Issue
Block a user