Commit 5a2d9853 authored by Otto Kekäläinen's avatar Otto Kekäläinen
Browse files

New upstream version 10.1.31

parent de111ba6
......@@ -30,3 +30,72 @@ drop table t1;
CREATE TABLE t1 (i INT) ENGINE=Aria;
LOCK TABLES t1 WRITE, t1 AS t1a WRITE;
DROP TABLE t1;
#
# MDEV-8200 aria bug with insert select when select is a aria table
# (wrong result or assertion failure:
# `table->file->stats.records > 0 || error')
#
CREATE TABLE t1 (f1 INT) ENGINE=Aria;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`f1` int(11) DEFAULT NULL
) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
INSERT INTO t1 VALUES (1);
CREATE TABLE t2 (f2 INT) ENGINE=MyISAM;
CREATE TABLE tmp (f3 INT) engine=Aria;
LOCK TABLE t2 WRITE, tmp WRITE, tmp AS tmp_alias WRITE, t1 WRITE;
INSERT INTO tmp SELECT f1 FROM t1;
INSERT INTO t2 SELECT f3 FROM tmp AS tmp_alias;
select * from t2;
f2
1
unlock tables;
DROP TABLE t1,t2,tmp;
#
# Same without transactional
#
CREATE TABLE t1 (f1 INT) transactional=0 ENGINE=Aria;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`f1` int(11) DEFAULT NULL
) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=0
INSERT INTO t1 VALUES (2);
CREATE TABLE t2 (f2 INT) ENGINE=MyISAM;
CREATE TABLE tmp (f3 INT) transactional=0 engine=Aria;
LOCK TABLE t2 WRITE, tmp WRITE, tmp AS tmp_alias WRITE, t1 WRITE;
INSERT INTO tmp SELECT f1 FROM t1;
INSERT INTO t2 SELECT f3 FROM tmp AS tmp_alias;
select * from t2;
f2
2
unlock tables;
DROP TABLE t1,t2,tmp;
#
# Using spatical keys (disables versioning)
#
CREATE TABLE t1 (f1 INT, c1 geometry NOT NULL, SPATIAL KEY i1 (c1)) transactional=1 ENGINE=Aria;
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (
`f1` int(11) DEFAULT NULL,
`c1` geometry NOT NULL,
SPATIAL KEY `i1` (`c1`)
) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1
INSERT INTO t1 VALUES (3,
PolygonFromText('POLYGON((-18.6086111000 -66.9327777000,
-18.6055555000 -66.8158332999,
-18.7186111000 -66.8102777000,
-18.7211111000 -66.9269443999,
-18.6086111000 -66.9327777000))'));
CREATE TABLE t2 (f2 INT) ENGINE=MyISAM;
CREATE TABLE tmp (f3 INT, c1 geometry NOT NULL, SPATIAL KEY i1 (c1)) transactional=1 ENGINE=Aria;
LOCK TABLE t2 WRITE, tmp WRITE, tmp AS tmp_alias WRITE, t1 WRITE;
INSERT INTO tmp SELECT f1,c1 FROM t1;
INSERT INTO t2 (f2) SELECT f3 FROM tmp AS tmp_alias;
select * from t2;
f2
3
unlock tables;
DROP TABLE t1,t2,tmp;
......@@ -50,3 +50,58 @@ drop table t1;
CREATE TABLE t1 (i INT) ENGINE=Aria;
LOCK TABLES t1 WRITE, t1 AS t1a WRITE;
DROP TABLE t1;
--echo #
--echo # MDEV-8200 aria bug with insert select when select is a aria table
--echo # (wrong result or assertion failure:
--echo # `table->file->stats.records > 0 || error')
--echo #
CREATE TABLE t1 (f1 INT) ENGINE=Aria;
SHOW CREATE TABLE t1;
INSERT INTO t1 VALUES (1);
CREATE TABLE t2 (f2 INT) ENGINE=MyISAM;
CREATE TABLE tmp (f3 INT) engine=Aria;
LOCK TABLE t2 WRITE, tmp WRITE, tmp AS tmp_alias WRITE, t1 WRITE;
INSERT INTO tmp SELECT f1 FROM t1;
INSERT INTO t2 SELECT f3 FROM tmp AS tmp_alias;
select * from t2;
unlock tables;
DROP TABLE t1,t2,tmp;
--echo #
--echo # Same without transactional
--echo #
CREATE TABLE t1 (f1 INT) transactional=0 ENGINE=Aria;
SHOW CREATE TABLE t1;
INSERT INTO t1 VALUES (2);
CREATE TABLE t2 (f2 INT) ENGINE=MyISAM;
CREATE TABLE tmp (f3 INT) transactional=0 engine=Aria;
LOCK TABLE t2 WRITE, tmp WRITE, tmp AS tmp_alias WRITE, t1 WRITE;
INSERT INTO tmp SELECT f1 FROM t1;
INSERT INTO t2 SELECT f3 FROM tmp AS tmp_alias;
select * from t2;
unlock tables;
DROP TABLE t1,t2,tmp;
--echo #
--echo # Using spatical keys (disables versioning)
--echo #
CREATE TABLE t1 (f1 INT, c1 geometry NOT NULL, SPATIAL KEY i1 (c1)) transactional=1 ENGINE=Aria;
SHOW CREATE TABLE t1;
INSERT INTO t1 VALUES (3,
PolygonFromText('POLYGON((-18.6086111000 -66.9327777000,
-18.6055555000 -66.8158332999,
-18.7186111000 -66.8102777000,
-18.7211111000 -66.9269443999,
-18.6086111000 -66.9327777000))'));
CREATE TABLE t2 (f2 INT) ENGINE=MyISAM;
CREATE TABLE tmp (f3 INT, c1 geometry NOT NULL, SPATIAL KEY i1 (c1)) transactional=1 ENGINE=Aria;
LOCK TABLE t2 WRITE, tmp WRITE, tmp AS tmp_alias WRITE, t1 WRITE;
INSERT INTO tmp SELECT f1,c1 FROM t1;
INSERT INTO t2 (f2) SELECT f3 FROM tmp AS tmp_alias;
select * from t2;
unlock tables;
DROP TABLE t1,t2,tmp;
......@@ -2696,6 +2696,17 @@ count(*)
13
drop table t1;
#
# MDEV-14690: Assertion `page_link == &fake_link' failed in
# pagecache_write_part
#
CREATE TABLE t1 (a CHAR(8), b CHAR(8), c CHAR(8) NOT NULL DEFAULT '', f FLOAT, KEY(f)) ENGINE=Aria;
INSERT INTO t1 (a) VALUES ('foo');
DELETE FROM t1 WHERE c < 'bar';
ALTER TABLE t1 DISABLE KEYS;
INSERT INTO t1 (b) VALUES ('');
ALTER TABLE t1 ENABLE KEYS;
DROP TABLE t1;
#
# BUG#47444 - --myisam_repair_threads > 1 can result in all index
# cardinalities=1
#
......
......@@ -1967,6 +1967,21 @@ unlock tables;
select count(*) from t1;
drop table t1;
--echo #
--echo # MDEV-14690: Assertion `page_link == &fake_link' failed in
--echo # pagecache_write_part
--echo #
CREATE TABLE t1 (a CHAR(8), b CHAR(8), c CHAR(8) NOT NULL DEFAULT '', f FLOAT, KEY(f)) ENGINE=Aria;
INSERT INTO t1 (a) VALUES ('foo');
DELETE FROM t1 WHERE c < 'bar';
ALTER TABLE t1 DISABLE KEYS;
INSERT INTO t1 (b) VALUES ('');
ALTER TABLE t1 ENABLE KEYS;
# Cleanup
DROP TABLE t1;
--echo #
--echo # BUG#47444 - --myisam_repair_threads > 1 can result in all index
--echo # cardinalities=1
......
CREATE TABLE t1 (i INT) ENGINE=Aria TRANSACTIONAL=1;
INSERT t1 VALUES (1);
LOCK TABLE t1 WRITE;
REPAIR TABLE t1;
Table Op Msg_type Msg_text
test.t1 repair status OK
SELECT * FROM INFORMATION_SCHEMA.TABLES;
SELECT * FROM t1;
i
1
UNLOCK TABLES;
DROP TABLE t1;
CREATE TABLE t1 (i INT) ENGINE=Aria TRANSACTIONAL=1;
INSERT t1 VALUES (1);
LOCK TABLE t1 WRITE;
OPTIMIZE TABLE t1;
Table Op Msg_type Msg_text
test.t1 optimize status OK
SELECT * FROM INFORMATION_SCHEMA.TABLES;
SELECT * FROM t1;
i
1
UNLOCK TABLES;
DROP TABLE t1;
#
# MDEV-11539 test_if_reopen: Assertion `strcmp(share->unique_file_name,filename) || share->last_version' failed upon select from I_S
#
CREATE TABLE t1 (i INT) ENGINE=Aria TRANSACTIONAL=1;
INSERT t1 VALUES (1);
LOCK TABLE t1 WRITE;
REPAIR TABLE t1;
--disable_result_log
SELECT * FROM INFORMATION_SCHEMA.TABLES;
--enable_result_log
SELECT * FROM t1;
UNLOCK TABLES;
DROP TABLE t1;
CREATE TABLE t1 (i INT) ENGINE=Aria TRANSACTIONAL=1;
INSERT t1 VALUES (1);
LOCK TABLE t1 WRITE;
OPTIMIZE TABLE t1;
--disable_result_log
SELECT * FROM INFORMATION_SCHEMA.TABLES;
--enable_result_log
SELECT * FROM t1;
UNLOCK TABLES;
DROP TABLE t1;
--innodb-encrypt-log=ON
--plugin-load-add=$FILE_KEY_MANAGEMENT_SO
--loose-file-key-management
--loose-file-key-management-filekey=FILE:$MTR_SUITE_DIR/filekeys-data.key
--loose-file-key-management-filename=$MTR_SUITE_DIR/filekeys-data.enc
--loose-file-key-management-encryption-algorithm=aes_cbc
#
# MDEV-13416 mariabackup fails with EFAULT "Bad Address"
#
call mtr.add_suppression("InnoDB: New log files created");
FOUND /InnoDB: New log files created, LSN=175964\d{8}/ in mysqld.1.err
CREATE TABLE t(i INT) ENGINE INNODB;
INSERT INTO t VALUES(1);
# xtrabackup backup
SET GLOBAL innodb_flush_log_at_trx_commit=1;
INSERT INTO t VALUES(2);
# xtrabackup prepare
# shutdown server
# remove datadir
# xtrabackup move back
# restart server
SELECT * FROM t;
i
1
DROP TABLE t;
--source include/not_embedded.inc
--source include/have_file_key_management.inc
--echo #
--echo # MDEV-13416 mariabackup fails with EFAULT "Bad Address"
--echo #
let INNODB_PAGE_SIZE=`select @@innodb_page_size`;
let MYSQLD_DATADIR=`select @@datadir`;
call mtr.add_suppression("InnoDB: New log files created");
--source include/shutdown_mysqld.inc
perl;
my $file= "$ENV{MYSQLD_DATADIR}/ibdata1";
open(FILE, "+<", $file) or die "Unable to open $file\n";
binmode FILE;
my $ps= $ENV{INNODB_PAGE_SIZE};
my $page;
die "Unable to read $file" unless sysread(FILE, $page, $ps) == $ps;
substr($page,26,8) = pack("NN", 4096, ~1024);
substr($page,0,4)=pack("N",0xdeadbeef);
substr($page,$ps-8,4)=pack("N",0xdeadbeef);
sysseek(FILE, 0, 0) || die "Unable to rewind $file\n";
syswrite(FILE, $page, $ps)==$ps || die "Unable to write $file\n";
close(FILE) || die "Unable to close $file\n";
EOF
--remove_files_wildcard $MYSQLD_DATADIR ib_logfile*
--source include/start_mysqld.inc
let SEARCH_RANGE= -50000;
let SEARCH_FILE= $MYSQLTEST_VARDIR/log/mysqld.1.err;
--let SEARCH_PATTERN= InnoDB: New log files created, LSN=175964\d{8}
--source include/search_pattern_in_file.inc
CREATE TABLE t(i INT) ENGINE INNODB;
INSERT INTO t VALUES(1);
echo # xtrabackup backup;
let $targetdir=$MYSQLTEST_VARDIR/tmp/backup;
--disable_result_log
exec $XTRABACKUP --defaults-file=$MYSQLTEST_VARDIR/my.cnf --backup --target-dir=$targetdir;
--enable_result_log
SET GLOBAL innodb_flush_log_at_trx_commit=1;
INSERT INTO t VALUES(2);
echo # xtrabackup prepare;
--disable_result_log
exec $XTRABACKUP --prepare --target-dir=$targetdir;
--source include/restart_and_restore.inc
--enable_result_log
SELECT * FROM t;
DROP TABLE t;
rmdir $targetdir;
create table t1(c1 int) engine=InnoDB;
INSERT INTO t1 VALUES(1);
# xtrabackup backup
select * from t1;
ERROR 42S02: Table 'test.t1' doesn't exist in engine
drop table t1;
--source include/have_innodb.inc
#
# MDEV-13499: Backing up table that "doesn't exist in engine" cause crash in mariabackup when using encryption
#
create table t1(c1 int) engine=InnoDB;
INSERT INTO t1 VALUES(1);
let MYSQLD_DATADIR=`select @@datadir`;
--source include/shutdown_mysqld.inc
--remove_file $MYSQLD_DATADIR/test/t1.ibd
--source include/start_mysqld.inc
echo # xtrabackup backup;
let $targetdir=$MYSQLTEST_VARDIR/tmp/backup;
--disable_result_log
exec $XTRABACKUP --defaults-file=$MYSQLTEST_VARDIR/my.cnf --backup --target-dir=$targetdir;
--enable_result_log
rmdir $targetdir;
--error ER_NO_SUCH_TABLE_IN_ENGINE
select * from t1;
drop table t1;
......@@ -42,3 +42,16 @@ PARTITION p3 VALUES IN (4,5,6)
);
ERROR HY000: Syntax error: LIST PARTITIONING requires definition of VALUES IN for each partition
DROP TABLE t1;
create table t1 ( c1 int, c2 int, c3 varchar(100)) delay_key_write=1
partition by key(c1) (
partition p01 data directory = 'MYSQL_TMP_DIR'
index directory = 'MYSQL_TMP_DIR',
partition p02 data directory = 'MYSQL_TMP_DIR'
index directory = 'MYSQL_TMP_DIR');
insert into t1 values (1, 1, repeat('a', 100));
insert into t1 select rand()*1000, rand()*1000, repeat('b', 100) from t1;
insert into t1 select rand()*1000, rand()*1000, repeat('b', 100) from t1;
insert into t1 select rand()*1000, rand()*1000, repeat('b', 100) from t1;
alter online table t1 delay_key_write=0;
alter online table t1 delay_key_write=1;
drop table t1;
--source include/have_partition.inc
--let $engine=MyISAM
--source inc/part_alter_values.inc
#
# MDEV-14026 ALTER TABLE ... DELAY_KEY_WRITE=1 creates table copy for partitioned MyISAM table with DATA DIRECTORY/INDEX DIRECTORY options
#
replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR;
eval create table t1 ( c1 int, c2 int, c3 varchar(100)) delay_key_write=1
partition by key(c1) (
partition p01 data directory = '$MYSQL_TMP_DIR'
index directory = '$MYSQL_TMP_DIR',
partition p02 data directory = '$MYSQL_TMP_DIR'
index directory = '$MYSQL_TMP_DIR');
insert into t1 values (1, 1, repeat('a', 100));
insert into t1 select rand()*1000, rand()*1000, repeat('b', 100) from t1;
insert into t1 select rand()*1000, rand()*1000, repeat('b', 100) from t1;
insert into t1 select rand()*1000, rand()*1000, repeat('b', 100) from t1;
alter online table t1 delay_key_write=0;
alter online table t1 delay_key_write=1;
drop table t1;
......@@ -25,7 +25,7 @@ sync_slave_with_master;
connection master;
# Delete './master-bin.000001' from index file.
let $MYSQLD_DATADIR= `SELECT @@DATADIR`;
let $file= $MYSQLD_DATADIR/master-bin.index;
let TRUNCATE_FILE= $MYSQLD_DATADIR/master-bin.index;
source include/truncate_file.inc;
if (`SELECT CONVERT(@@VERSION_COMPILE_OS USING latin1) NOT IN ('Win32', 'Win64', 'Windows')`)
......
SET @start_global_value = @@global.innodb_print_lock_wait_timeout_info;
SELECT @start_global_value;
@start_global_value
0
Valid values are 'ON' and 'OFF'
SELECT @@global.innodb_print_lock_wait_timeout_info in (0, 1);
@@global.innodb_print_lock_wait_timeout_info in (0, 1)
1
SELECT @@global.innodb_print_lock_wait_timeout_info;
@@global.innodb_print_lock_wait_timeout_info
0
SELECT @@session.innodb_print_lock_wait_timeout_info;
ERROR HY000: Variable 'innodb_print_lock_wait_timeout_info' is a GLOBAL variable
SHOW global variables LIKE 'innodb_print_lock_wait_timeout_info';
Variable_name Value
innodb_print_lock_wait_timeout_info OFF
SHOW session variables LIKE 'innodb_print_lock_wait_timeout_info';
Variable_name Value
innodb_print_lock_wait_timeout_info OFF
SELECT * FROM information_schema.global_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
VARIABLE_NAME VARIABLE_VALUE
INNODB_PRINT_LOCK_WAIT_TIMEOUT_INFO OFF
SELECT * FROM information_schema.session_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
VARIABLE_NAME VARIABLE_VALUE
INNODB_PRINT_LOCK_WAIT_TIMEOUT_INFO OFF
SET global innodb_print_lock_wait_timeout_info='OFF';
SELECT @@global.innodb_print_lock_wait_timeout_info;
@@global.innodb_print_lock_wait_timeout_info
0
SELECT * FROM information_schema.global_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
VARIABLE_NAME VARIABLE_VALUE
INNODB_PRINT_LOCK_WAIT_TIMEOUT_INFO OFF
SELECT * FROM information_schema.session_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
VARIABLE_NAME VARIABLE_VALUE
INNODB_PRINT_LOCK_WAIT_TIMEOUT_INFO OFF
SET @@global.innodb_print_lock_wait_timeout_info=1;
SELECT @@global.innodb_print_lock_wait_timeout_info;
@@global.innodb_print_lock_wait_timeout_info
1
SELECT * FROM information_schema.global_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
VARIABLE_NAME VARIABLE_VALUE
INNODB_PRINT_LOCK_WAIT_TIMEOUT_INFO ON
SELECT * FROM information_schema.session_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
VARIABLE_NAME VARIABLE_VALUE
INNODB_PRINT_LOCK_WAIT_TIMEOUT_INFO ON
SET global innodb_print_lock_wait_timeout_info=0;
SELECT @@global.innodb_print_lock_wait_timeout_info;
@@global.innodb_print_lock_wait_timeout_info
0
SELECT * FROM information_schema.global_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
VARIABLE_NAME VARIABLE_VALUE
INNODB_PRINT_LOCK_WAIT_TIMEOUT_INFO OFF
SELECT * FROM information_schema.session_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
VARIABLE_NAME VARIABLE_VALUE
INNODB_PRINT_LOCK_WAIT_TIMEOUT_INFO OFF
SET @@global.innodb_print_lock_wait_timeout_info='ON';
SELECT @@global.innodb_print_lock_wait_timeout_info;
@@global.innodb_print_lock_wait_timeout_info
1
SELECT * FROM information_schema.global_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
VARIABLE_NAME VARIABLE_VALUE
INNODB_PRINT_LOCK_WAIT_TIMEOUT_INFO ON
SELECT * FROM information_schema.session_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
VARIABLE_NAME VARIABLE_VALUE
INNODB_PRINT_LOCK_WAIT_TIMEOUT_INFO ON
SET session innodb_print_lock_wait_timeout_info='OFF';
ERROR HY000: Variable 'innodb_print_lock_wait_timeout_info' is a GLOBAL variable and should be set with SET GLOBAL
SET @@session.innodb_print_lock_wait_timeout_info='ON';
ERROR HY000: Variable 'innodb_print_lock_wait_timeout_info' is a GLOBAL variable and should be set with SET GLOBAL
SET global innodb_print_lock_wait_timeout_info=1.1;
ERROR 42000: Incorrect argument type to variable 'innodb_print_lock_wait_timeout_info'
SET global innodb_print_lock_wait_timeout_info=1e1;
ERROR 42000: Incorrect argument type to variable 'innodb_print_lock_wait_timeout_info'
SET global innodb_print_lock_wait_timeout_info=2;
ERROR 42000: Variable 'innodb_print_lock_wait_timeout_info' can't be set to the value of '2'
SET global innodb_print_lock_wait_timeout_info=-3;
ERROR 42000: Variable 'innodb_print_lock_wait_timeout_info' can't be set to the value of '-3'
SELECT @@global.innodb_print_lock_wait_timeout_info;
@@global.innodb_print_lock_wait_timeout_info
1
SELECT * FROM information_schema.global_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
VARIABLE_NAME VARIABLE_VALUE
INNODB_PRINT_LOCK_WAIT_TIMEOUT_INFO ON
SELECT * FROM information_schema.session_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
VARIABLE_NAME VARIABLE_VALUE
INNODB_PRINT_LOCK_WAIT_TIMEOUT_INFO ON
SET global innodb_print_lock_wait_timeout_info='AUTO';
ERROR 42000: Variable 'innodb_print_lock_wait_timeout_info' can't be set to the value of 'AUTO'
SET @@global.innodb_print_lock_wait_timeout_info = @start_global_value;
SELECT @@global.innodb_print_lock_wait_timeout_info;
@@global.innodb_print_lock_wait_timeout_info
0
......@@ -829,10 +829,24 @@
VARIABLE_COMMENT Page size to use for all InnoDB tablespaces.
NUMERIC_MIN_VALUE 4096
NUMERIC_MAX_VALUE 65536
@@ -1727,13 +2035,69 @@
@@ -1727,13 +2035,83 @@
ENUM_VALUE_LIST OFF,ON
READ_ONLY NO
COMMAND_LINE_ARGUMENT OPTIONAL
+VARIABLE_NAME INNODB_PRINT_LOCK_WAIT_TIMEOUT_INFO
+SESSION_VALUE NULL
+GLOBAL_VALUE OFF
+GLOBAL_VALUE_ORIGIN COMPILE-TIME
+DEFAULT_VALUE OFF
+VARIABLE_SCOPE GLOBAL
+VARIABLE_TYPE BOOLEAN
+VARIABLE_COMMENT Print lock wait timeout info to MySQL error log (off by default)
+NUMERIC_MIN_VALUE NULL
+NUMERIC_MAX_VALUE NULL
+NUMERIC_BLOCK_SIZE NULL
+ENUM_VALUE_LIST OFF,ON
+READ_ONLY NO
+COMMAND_LINE_ARGUMENT OPTIONAL
+VARIABLE_NAME INNODB_PRIORITY_CLEANER
+SESSION_VALUE NULL
+GLOBAL_VALUE OFF
......@@ -1222,7 +1236,7 @@
VARIABLE_NAME INNODB_VERSION
SESSION_VALUE NULL
-GLOBAL_VALUE 5.6.37
+GLOBAL_VALUE 5.6.36-82.2
+GLOBAL_VALUE 5.6.36-83.0
GLOBAL_VALUE_ORIGIN COMPILE-TIME
DEFAULT_VALUE NULL
VARIABLE_SCOPE GLOBAL
......
......@@ -415,10 +415,24 @@
VARIABLE_NAME INNODB_MAX_DIRTY_PAGES_PCT
SESSION_VALUE NULL
GLOBAL_VALUE 75.000000
@@ -1727,6 +2035,62 @@
@@ -1727,6 +2035,76 @@
ENUM_VALUE_LIST OFF,ON
READ_ONLY NO
COMMAND_LINE_ARGUMENT OPTIONAL
+VARIABLE_NAME INNODB_PRINT_LOCK_WAIT_TIMEOUT_INFO
+SESSION_VALUE NULL
+GLOBAL_VALUE OFF
+GLOBAL_VALUE_ORIGIN COMPILE-TIME
+DEFAULT_VALUE OFF
+VARIABLE_SCOPE GLOBAL
+VARIABLE_TYPE BOOLEAN
+VARIABLE_COMMENT Print lock wait timeout info to MySQL error log (off by default)
+NUMERIC_MIN_VALUE NULL
+NUMERIC_MAX_VALUE NULL
+NUMERIC_BLOCK_SIZE NULL
+ENUM_VALUE_LIST OFF,ON
+READ_ONLY NO
+COMMAND_LINE_ARGUMENT OPTIONAL
+VARIABLE_NAME INNODB_PRIORITY_CLEANER
+SESSION_VALUE NULL
+GLOBAL_VALUE OFF
......@@ -478,7 +492,7 @@
VARIABLE_NAME INNODB_PURGE_BATCH_SIZE
SESSION_VALUE NULL
GLOBAL_VALUE 300
@@ -1895,6 +2259,48 @@
@@ -1895,6 +2273,48 @@
ENUM_VALUE_LIST NULL
READ_ONLY NO
COMMAND_LINE_ARGUMENT OPTIONAL
......@@ -527,7 +541,7 @@
VARIABLE_NAME INNODB_SCRUB_LOG
SESSION_VALUE NULL
GLOBAL_VALUE OFF
@@ -1923,6 +2329,34 @@
@@ -1923,6 +2343,34 @@
ENUM_VALUE_LIST NULL
READ_ONLY NO
COMMAND_LINE_ARGUMENT OPTIONAL
......@@ -562,7 +576,7 @@
VARIABLE_NAME INNODB_SIMULATE_COMP_FAILURES
SESSION_VALUE NULL
GLOBAL_VALUE 0
@@ -2000,7 +2434,7 @@
@@ -2000,7 +2448,7 @@
DEFAULT_VALUE nulls_equal
VARIABLE_SCOPE GLOBAL
VARIABLE_TYPE ENUM
......@@ -571,7 +585,7 @@
NUMERIC_MIN_VALUE NULL
NUMERIC_MAX_VALUE NULL
NUMERIC_BLOCK_SIZE NULL
@@ -2245,6 +2679,34 @@
@@ -2245,6 +2693,34 @@
ENUM_VALUE_LIST NULL
READ_ONLY NO
COMMAND_LINE_ARGUMENT OPTIONAL
......@@ -606,7 +620,7 @@
VARIABLE_NAME INNODB_TRX_PURGE_VIEW_UPDATE_ONLY_DEBUG
SESSION_VALUE NULL
GLOBAL_VALUE OFF
@@ -2322,7 +2784,7 @@
@@ -2322,7 +2798,7 @@
DEFAULT_VALUE OFF
VARIABLE_SCOPE GLOBAL
VARIABLE_TYPE BOOLEAN
......@@ -615,7 +629,7 @@
NUMERIC_MIN_VALUE NULL
NUMERIC_MAX_VALUE NULL
NUMERIC_BLOCK_SIZE NULL
@@ -2343,6 +2805,20 @@
@@ -2343,6 +2819,20 @@
ENUM_VALUE_LIST OFF,ON
READ_ONLY YES
COMMAND_LINE_ARGUMENT NONE
......@@ -636,7 +650,7 @@
VARIABLE_NAME INNODB_USE_MTFLUSH
SESSION_VALUE NULL
GLOBAL_VALUE OFF
@@ -2357,6 +2833,20 @@
@@ -2357,6 +2847,20 @@
ENUM_VALUE_LIST OFF,ON
READ_ONLY YES
COMMAND_LINE_ARGUMENT NONE
......@@ -657,12 +671,12 @@
VARIABLE_NAME INNODB_USE_SYS_MALLOC
SESSION_VALUE NULL
GLOBAL_VALUE ON
@@ -2387,12 +2877,12 @@
@@ -2387,12 +2891,12 @@
COMMAND_LINE_ARGUMENT OPTIONAL
VARIABLE_NAME INNODB_VERSION
SESSION_VALUE NULL
-GLOBAL_VALUE 5.6.37
+GLOBAL_VALUE 5.6.36-82.2
+GLOBAL_VALUE 5.6.36-83.0
GLOBAL_VALUE_ORIGIN COMPILE-TIME
DEFAULT_VALUE NULL
VARIABLE_SCOPE GLOBAL
......
--source include/have_xtradb.inc
SET @start_global_value = @@global.innodb_print_lock_wait_timeout_info;
SELECT @start_global_value;
#
# exists as global only
#
--echo Valid values are 'ON' and 'OFF'
SELECT @@global.innodb_print_lock_wait_timeout_info in (0, 1);
SELECT @@global.innodb_print_lock_wait_timeout_info;
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
SELECT @@session.innodb_print_lock_wait_timeout_info;
SHOW global variables LIKE 'innodb_print_lock_wait_timeout_info';
SHOW session variables LIKE 'innodb_print_lock_wait_timeout_info';
--disable_warnings
SELECT * FROM information_schema.global_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
SELECT * FROM information_schema.session_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
--enable_warnings
#
# SHOW that it's writable
#
SET global innodb_print_lock_wait_timeout_info='OFF';
SELECT @@global.innodb_print_lock_wait_timeout_info;
--disable_warnings
SELECT * FROM information_schema.global_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
SELECT * FROM information_schema.session_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
--enable_warnings
SET @@global.innodb_print_lock_wait_timeout_info=1;
SELECT @@global.innodb_print_lock_wait_timeout_info;
--disable_warnings
SELECT * FROM information_schema.global_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
SELECT * FROM information_schema.session_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
--enable_warnings
SET global innodb_print_lock_wait_timeout_info=0;
SELECT @@global.innodb_print_lock_wait_timeout_info;
--disable_warnings
SELECT * FROM information_schema.global_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
SELECT * FROM information_schema.session_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
--enable_warnings
SET @@global.innodb_print_lock_wait_timeout_info='ON';
SELECT @@global.innodb_print_lock_wait_timeout_info;
--disable_warnings
SELECT * FROM information_schema.global_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
SELECT * FROM information_schema.session_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
--enable_warnings
--error ER_GLOBAL_VARIABLE
SET session innodb_print_lock_wait_timeout_info='OFF';
--error ER_GLOBAL_VARIABLE
SET @@session.innodb_print_lock_wait_timeout_info='ON';
#
# incorrect types
#
--error ER_WRONG_TYPE_FOR_VAR
SET global innodb_print_lock_wait_timeout_info=1.1;
--error ER_WRONG_TYPE_FOR_VAR
SET global innodb_print_lock_wait_timeout_info=1e1;
--error ER_WRONG_VALUE_FOR_VAR
SET global innodb_print_lock_wait_timeout_info=2;
--error ER_WRONG_VALUE_FOR_VAR
SET global innodb_print_lock_wait_timeout_info=-3;
SELECT @@global.innodb_print_lock_wait_timeout_info;
--disable_warnings
SELECT * FROM information_schema.global_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
SELECT * FROM information_schema.session_variables
WHERE variable_name='innodb_print_lock_wait_timeout_info';
--enable_warnings
--error ER_WRONG_VALUE_FOR_VAR
SET global innodb_print_lock_wait_timeout_info='AUTO';
#
# Cleanup
#
SET @@global.innodb_print_lock_wait_timeout_info = @start_global_value;
SELECT @@global.innodb_print_lock_wait_timeout_info;
This diff is collapsed.
......@@ -897,6 +897,44 @@ select distinct t1.id, tt.id, tt.data
drop table t1;
--echo #
--echo # MDEV-14241: Server crash in key_copy / get_matching_chain_by_join_key
--echo # or valgrind warnings
--echo #
CREATE TABLE t1 (a VARCHAR(10)) ENGINE=MyISAM;
CREATE OR REPLACE ALGORITHM=TEMPTABLE VIEW v1 AS SELECT * FROM t1;
INSERT INTO t1 VALUES ('foo'),('bar');
CREATE TABLE t2 (b integer auto_increment primary key) ENGINE=MyISAM;
INSERT INTO t2 VALUES (NULL),(NULL);
CREATE TABLE t3 (c VARCHAR(1024) CHARACTER SET utf8, d INT) ENGINE=MyISAM;
CREATE OR REPLACE ALGORITHM=TEMPTABLE VIEW v3 AS SELECT * FROM t3;
INSERT INTO t3 VALUES ('abc',NULL),('def',4);
SET join_cache_level= 8;
explain
SELECT * FROM v1, t2, v3 WHERE a = c AND b = d;
SELECT * FROM v1, t2, v3 WHERE a = c AND b = d;
DROP VIEW v1, v3;
DROP TABLE t1, t2, t3;
--echo #
--echo # MDEV-14786: Server crashes in Item_cond::transform on 2nd
--echo # execution of SP querying from a view
--echo #
create table t1 (i int, row_start timestamp(6) not null default now(),
row_end timestamp(6) not null default '2030-01-01 0:0:0');
create view v1 as select i from t1 where i < 5 and (row_end =
TIMESTAMP'2030-01-01 0:0:0' or row_end is null);
create procedure pr(x int) select i from v1;
call pr(1);
call pr(2);
drop procedure pr;
drop view v1;
drop table t1;
--echo # end of 5.5
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment