mirror of
https://github.com/MariaDB/server.git
synced 2025-07-27 18:02:13 +03:00
Merge tag '11.1' into 11.2
MariaDB 11.1.3 release
This commit is contained in:
@ -58,11 +58,6 @@ DROP TABLE t1;
|
||||
|
||||
# CHAR
|
||||
|
||||
# MyISAM is buggy on CHAR+BTREE+UNIQUE+PREFIX (see MDEV-30048), disable for now
|
||||
# Other engines work fine
|
||||
|
||||
if (`SELECT UPPER(@@storage_engine) != 'MYISAM'`)
|
||||
{
|
||||
EXECUTE IMMEDIATE REPLACE(
|
||||
'CREATE TABLE t1 ( '
|
||||
' a CHAR(20) COLLATE <COLLATION>,'
|
||||
@ -72,7 +67,6 @@ SHOW CREATE TABLE t1;
|
||||
INSERT INTO t1 VALUES ('ss ');
|
||||
INSERT INTO t1 VALUES (_utf8mb3 0xC39F20)/*SZ+SPACE*/;
|
||||
DROP TABLE t1;
|
||||
}
|
||||
|
||||
EXECUTE IMMEDIATE REPLACE(
|
||||
'CREATE TABLE t1 ( '
|
||||
|
54
mysql-test/include/ctype_utf8mb3_uca_char.inc
Normal file
54
mysql-test/include/ctype_utf8mb3_uca_char.inc
Normal file
@ -0,0 +1,54 @@
|
||||
--echo #
|
||||
--echo # MDEV-30048 Prefix keys for CHAR work differently for MyISAM vs InnoDB
|
||||
--echo #
|
||||
|
||||
SET NAMES utf8mb3;
|
||||
|
||||
#
|
||||
# Engines have different conditions based on the column size
|
||||
# determining when to use trailing space compressions in key values,
|
||||
# so let's test different column sizes for better coverage.
|
||||
#
|
||||
|
||||
|
||||
#
|
||||
# CHAR(10)
|
||||
#
|
||||
|
||||
CREATE TABLE t1 (a CHAR(10) COLLATE utf8mb3_unicode_nopad_ci, UNIQUE KEY(a));
|
||||
SHOW CREATE TABLE t1;
|
||||
INSERT INTO t1 VALUES ('ss'),('ß');
|
||||
DROP TABLE t1;
|
||||
|
||||
CREATE TABLE t1 (a CHAR(10) COLLATE utf8mb3_unicode_nopad_ci, UNIQUE KEY(a(2)));
|
||||
SHOW CREATE TABLE t1;
|
||||
INSERT INTO t1 VALUES ('ss'),('ß');
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# CHAR(120)
|
||||
#
|
||||
|
||||
CREATE TABLE t1 (a CHAR(120) COLLATE utf8mb3_unicode_nopad_ci, UNIQUE KEY(a));
|
||||
SHOW CREATE TABLE t1;
|
||||
INSERT INTO t1 VALUES ('ss'),('ß');
|
||||
DROP TABLE t1;
|
||||
|
||||
CREATE TABLE t1 (a CHAR(120) COLLATE utf8mb3_unicode_nopad_ci, UNIQUE KEY(a(100)));
|
||||
SHOW CREATE TABLE t1;
|
||||
INSERT INTO t1 VALUES ('ss'),('ß');
|
||||
DROP TABLE t1;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-30050 Inconsistent results of DISTINCT with NOPAD
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (c CHAR(100) COLLATE utf8mb3_unicode_nopad_ci);
|
||||
SHOW CREATE TABLE t1;
|
||||
INSERT INTO t1 VALUES ('ss'),('ß');
|
||||
SET big_tables=0;
|
||||
SELECT DISTINCT c FROM t1;
|
||||
SET big_tables=1;
|
||||
SELECT DISTINCT c FROM t1;
|
||||
DROP TABLE t1;
|
||||
SET big_tables=DEFAULT;
|
@ -1,6 +1,8 @@
|
||||
SET SESSION character_set_connection=latin2;
|
||||
SET SESSION character_set_client=cp1250;
|
||||
|
||||
--disable_service_connection
|
||||
|
||||
--echo #
|
||||
--echo # Test litteral
|
||||
--echo #
|
||||
@ -129,3 +131,5 @@ EXPLAIN EXTENDED SELECT '';
|
||||
EXPLAIN EXTENDED SELECT _latin1'';
|
||||
EXPLAIN EXTENDED SELECT N'';
|
||||
EXPLAIN EXTENDED SELECT '' '';
|
||||
|
||||
--enable_service_connection
|
||||
|
@ -162,7 +162,7 @@ INSERT INTO t1 VALUES
|
||||
--echo
|
||||
--echo # Execute select with invalid timestamp, desc ordering
|
||||
SELECT *
|
||||
FROM t1
|
||||
FROM t1 FORCE INDEX(PRIMARY)
|
||||
WHERE ts BETWEEN '0000-00-00' AND '2010-00-01 00:00:00'
|
||||
ORDER BY ts DESC
|
||||
LIMIT 2;
|
||||
@ -171,7 +171,7 @@ LIMIT 2;
|
||||
--echo # Should use index condition
|
||||
EXPLAIN
|
||||
SELECT *
|
||||
FROM t1
|
||||
FROM t1 FORCE INDEX(PRIMARY)
|
||||
WHERE ts BETWEEN '0000-00-00' AND '2010-00-01 00:00:00'
|
||||
ORDER BY ts DESC
|
||||
LIMIT 2;
|
||||
@ -458,6 +458,7 @@ INSERT INTO t2 VALUES (11,1);
|
||||
INSERT INTO t2 VALUES (12,2);
|
||||
INSERT INTO t2 VALUES (15,4);
|
||||
|
||||
analyze table t1,t2 persistent for all;
|
||||
set @save_optimizer_switch= @@optimizer_switch;
|
||||
set optimizer_switch='semijoin=off';
|
||||
|
||||
@ -729,6 +730,7 @@ INSERT INTO t2 VALUES
|
||||
('Ill'), ('eckqzsflbzaffti'), ('w'), ('she'), ('gxbwypqtjzwywwer'), ('w');
|
||||
insert into t2 select seq from seq_1_to_100;
|
||||
|
||||
analyze table t1,t2 persistent for all;
|
||||
SET SESSION optimizer_switch='index_condition_pushdown=off';
|
||||
--replace_column 9 #
|
||||
EXPLAIN
|
||||
|
@ -11,6 +11,7 @@
|
||||
connection default;
|
||||
let $default_db=`select database()`;
|
||||
let $MYSQLD_DATADIR= `SELECT @@datadir`;
|
||||
let $pid_file=`select @@pid_file`;
|
||||
|
||||
#it will used at end of test for wait_for_status_var.inc primitive
|
||||
#let $status_var= Threads_connected;
|
||||
@ -23,6 +24,7 @@ wait-maria_empty_logs.inc
|
||||
EOF
|
||||
|
||||
--source include/mysqladmin_shutdown.inc
|
||||
--source include/wait_until_no_pidfile.inc
|
||||
|
||||
--disable_warnings
|
||||
if (!$mel_keep_control_file)
|
||||
|
30
mysql-test/include/wait_until_no_pidfile.inc
Normal file
30
mysql-test/include/wait_until_no_pidfile.inc
Normal file
@ -0,0 +1,30 @@
|
||||
# Include this script after a shutdown to wait until the pid file,
|
||||
# stored in $pid_file, has disappered.
|
||||
|
||||
#--echo $pid_file
|
||||
|
||||
--disable_result_log
|
||||
--disable_query_log
|
||||
# Wait one minute
|
||||
let $counter= 600;
|
||||
while ($counter)
|
||||
{
|
||||
--error 0,1
|
||||
--file_exists $pid_file
|
||||
if (!$errno)
|
||||
{
|
||||
dec $counter;
|
||||
--real_sleep 0.1
|
||||
}
|
||||
if ($errno)
|
||||
{
|
||||
let $counter= 0;
|
||||
}
|
||||
}
|
||||
if (!$errno)
|
||||
{
|
||||
--die Pid file "$pid_file" failed to disappear
|
||||
}
|
||||
|
||||
--enable_query_log
|
||||
--enable_result_log
|
Reference in New Issue
Block a user