mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Merge branch '10.0' into 10.1
This commit is contained in:
3
CREDITS
3
CREDITS
@ -5,15 +5,14 @@ The current main sponsors of the MariaDB Foundation are:
|
||||
|
||||
Alibaba Cloud https://www.alibabacloud.com/ (2017)
|
||||
Booking.com https://www.booking.com (2013)
|
||||
MariaDB Corporation https://www.mariadb.com (2013)
|
||||
Microsoft https://microsoft.com/ (2017)
|
||||
Tencent Cloud https://cloud.tencent.com (2017)
|
||||
Development Bank of Singapore https://dbs.com (2016)
|
||||
IBM https://www.ibm.com (2017)
|
||||
MariaDB Corporation https://www.mariadb.com (2013)
|
||||
Visma https://visma.com (2015)
|
||||
Acronis http://acronis.com (2016)
|
||||
Nexedi https://www.nexedi.com (2016)
|
||||
Automattic https://automattic.com (2014)
|
||||
Tencent Game DBA http://tencentdba.com/about (2016)
|
||||
Tencent TDSQL http://tdsql.org (2016)
|
||||
Verkkokauppa.com https://www.verkkokauppa.com (2015)
|
||||
|
@ -4,13 +4,12 @@ Booking.com https://www.booking.com Founding member, Platinum Sponsor of the Mar
|
||||
Alibaba Cloud https://www.alibabacloud.com/ Platinum Sponsor of the MariaDB Foundation
|
||||
Tencent Cloud https://cloud.tencent.com Platinum Sponsor of the MariaDB Foundation
|
||||
Microsoft https://microsoft.com/ Platinum Sponsor of the MariaDB Foundation
|
||||
MariaDB Corporation https://mariadb.com Founding member, Gold Sponsor of the MariaDB Foundation
|
||||
MariaDB Corporation https://mariadb.com Founding member, Platinum Sponsor of the MariaDB Foundation
|
||||
Visma https://visma.com Gold Sponsor of the MariaDB Foundation
|
||||
DBS https://dbs.com Gold Sponsor of the MariaDB Foundation
|
||||
IBM https://www.ibm.com Gold Sponsor of the MariaDB Foundation
|
||||
Nexedi https://www.nexedi.com Silver Sponsor of the MariaDB Foundation
|
||||
Acronis http://www.acronis.com Silver Sponsor of the MariaDB Foundation
|
||||
Auttomattic https://automattic.com Bronze Sponsor of the MariaDB Foundation
|
||||
Verkkokauppa.com https://www.verkkokauppa.com Bronze Sponsor of the MariaDB Foundation
|
||||
Virtuozzo https://virtuozzo.com Bronze Sponsor of the MariaDB Foundation
|
||||
Tencent Game DBA http://tencentdba.com/about Bronze Sponsor of the MariaDB Foundation
|
||||
|
@ -578,6 +578,17 @@ SELECT NAME_CONST('a', -(1)) OR 1;
|
||||
NAME_CONST('a', -(1)) OR 1
|
||||
1
|
||||
#
|
||||
# MDEV-15630 uuid() function evaluates at wrong time in query
|
||||
#
|
||||
CREATE TABLE t1 (id INT);
|
||||
INSERT INTO t1 VALUES (1),(2),(3);
|
||||
SELECT COUNT(1), UUID() as uid FROM t1 GROUP BY uid;
|
||||
COUNT(1) uid
|
||||
1 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
|
||||
1 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
|
||||
1 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# End of 5.5 tests
|
||||
#
|
||||
#
|
||||
|
@ -4568,6 +4568,43 @@ id select_type table type possible_keys key key_len ref rows filtered Extra
|
||||
Warnings:
|
||||
Note 1003 select char(0xdf) AS `CHAR(0xDF)`
|
||||
#
|
||||
# MDEV-15619 using CONVERT() inside AES_ENCRYPT() in an UPDATE corrupts data
|
||||
#
|
||||
CREATE TABLE t1 (
|
||||
id int(11) NOT NULL,
|
||||
session_id varchar(255) DEFAULT NULL,
|
||||
directory mediumtext,
|
||||
checksum int(10) DEFAULT NULL,
|
||||
last_update datetime DEFAULT NULL,
|
||||
PRIMARY KEY (id),
|
||||
KEY lastupdate (last_update)
|
||||
) DEFAULT CHARSET=latin1;
|
||||
INSERT INTO t1 VALUES (1,'',NULL,38391,'2017-06-24 07:35:28');
|
||||
UPDATE t1 SET directory = AES_ENCRYPT(CONVERT('test stringrererejrjerjehrjekhrjkehrjkehrkjehrjkerhkjehrjekrhkjehrkjerhjkehrkjehrkjehrjkehrjkehrjkehrjkerjkehrjkehrjkehrjke rekjhrejrejhrjehgrehjgrhjerjhegrjherejhgrjhegrjehgrjhegrejhrgjehgrjhegrjhegrjhergjhegrjhegrhjegrjerhthkjjkdhjkgdfjkgjkdgdjkfjkhgjkfdhjgjkfdghkjdfghkjfdghfjkdghkdjfghdkjfghfjkdghfkjdghkjfdghfkjdghfkdjghfkjdghfdjkghjkdfhgdfjkghfjkdghfjkdghfjdkghfjkdghkfjdghfkjdghfkjdghkjdfghfjdkghjkfdghkjdfhgjkdfhgjkfdhgkjfdghkfjdhgkjfdgdjkejktjherjthkjrethkjrethjkerthjkerhtjkerhtkjerhtjkerhtjkerhtjkrehtkjerhtkjrehtjkrehtkjrehtkjerhtkjerhtjkrehtkjrehtjkrehtkjrethjkrethkjrehtkjethjkerhtjkrehtjkretkjerhtkjrehtjkerhtjkrehtjrehtkjrekjtrfgdsfgdhjsghjgfdhjsfhjdfgdhjshjdshjfghjdsfgjhsfgjhsdfgjhdsfgjdhsfgsjhfgjhsdfgsdjhfgjdhsfdjshfgdsjhfgjsdhfdjshfgdjhsfgdjshfgjdhsfgjhsdfgjhsdgfjhsdgfjhdsgfjhsgfjhsdgfjhdsgfhjsdehkjthrkjethjkre' USING latin1), '95F5A1F52A554'), last_update= NOW();
|
||||
SELECT directory IS NULL FROM t1;
|
||||
directory IS NULL
|
||||
0
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (
|
||||
id int(11) NOT NULL PRIMARY KEY,
|
||||
directory mediumtext
|
||||
) DEFAULT CHARSET=latin1;
|
||||
INSERT INTO t1 VALUES (1,AES_ENCRYPT(CONVERT(REPEAT('a',800) USING latin1),'95F5A1F52A554'));
|
||||
SELECT AES_DECRYPT(directory,'95F5A1F52A554') FROM t1;
|
||||
AES_DECRYPT(directory,'95F5A1F52A554')
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
DROP TABLE t1;
|
||||
SET @enc=AES_ENCRYPT(REPEAT(_latin1'a',800),'95F5A1F52A554');
|
||||
CREATE TABLE t1 (
|
||||
id int(11) NOT NULL PRIMARY KEY,
|
||||
directory mediumtext
|
||||
) DEFAULT CHARSET=latin1;
|
||||
INSERT INTO t1 VALUES (1,AES_DECRYPT(CONVERT(@enc USING binary),'95F5A1F52A554'));
|
||||
SELECT * FROM t1;
|
||||
id directory
|
||||
1 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# Start of 10.1 tests
|
||||
#
|
||||
#
|
||||
|
@ -673,6 +673,13 @@ PREPARE stmt FROM 'CREATE TRIGGER tr AFTER DELETE ON t1 FOR EACH ROW SET @a = 1\
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '\' at line 1
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# MDEV-15620 Crash when using "SET @@NEW.a=expr" inside a trigger
|
||||
#
|
||||
CREATE TABLE t1 (a INT);
|
||||
CREATE TRIGGER tr1 BEFORE INSERT ON t1 FOR EACH ROW SET @@NEW.a=0;
|
||||
ERROR HY000: Unknown system variable 'NEW'
|
||||
DROP TABLE t1;
|
||||
#
|
||||
# MDEV-7792 - SQL Parsing Error - UNION AND ORDER BY WITH JOIN
|
||||
#
|
||||
CREATE TABLE t1(a INT);
|
||||
|
@ -3,4 +3,4 @@ MySQL error code 1062 (ER_DUP_ENTRY): Duplicate entry '%-.192s' for key %d
|
||||
MySQL error code 1408 (ER_STARTUP): %s: ready for connections.
|
||||
Version: '%s' socket: '%s' port: %d %s
|
||||
MySQL error code 1459 (ER_TABLE_NEEDS_UPGRADE): Upgrade required. Please do "REPAIR %s %`s" or dump/reload to fix it!
|
||||
MySQL error code 1461 (ER_MAX_PREPARED_STMT_COUNT_REACHED): Can't create more than max_prepared_stmt_count statements (current value: %lu)
|
||||
MySQL error code 1461 (ER_MAX_PREPARED_STMT_COUNT_REACHED): Can't create more than max_prepared_stmt_count statements (current value: %u)
|
||||
|
@ -821,7 +821,7 @@ Warnings:
|
||||
Warning 1292 Truncated incorrect max_prepared_stmt_count value: '10000000000000000'
|
||||
select @@max_prepared_stmt_count;
|
||||
@@max_prepared_stmt_count
|
||||
1048576
|
||||
4294967295
|
||||
set global max_prepared_stmt_count=default;
|
||||
select @@max_prepared_stmt_count;
|
||||
@@max_prepared_stmt_count
|
||||
|
@ -1664,6 +1664,24 @@ db_name table_name column_name HEX(min_value) HEX(max_value) nulls_ratio avg_fre
|
||||
test t1 a D879626AF872675F73E662F8 D879626AF872675F73E662F8 0.0000 1.0000 0 NULL NULL
|
||||
drop table t1;
|
||||
#
|
||||
# MDEB-9744: session optimizer_use_condition_selectivity=5 causing SQL Error (1918):
|
||||
# Encountered illegal value '' when converting to DECIMAL
|
||||
#
|
||||
set @save_optimizer_use_condition_selectivity= @@optimizer_use_condition_selectivity;
|
||||
set optimizer_use_condition_selectivity=3, use_stat_tables=preferably;
|
||||
create table t1 (id int(10),cost decimal(9,2)) engine=innodb;
|
||||
ANALYZE TABLE t1 PERSISTENT FOR ALL;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 analyze status Engine-independent statistics collected
|
||||
test.t1 analyze status OK
|
||||
create temporary table t2 (id int);
|
||||
insert into t2 (id) select id from t1 where cost > 0;
|
||||
select * from t2;
|
||||
id
|
||||
set use_stat_tables=@save_use_stat_tables;
|
||||
set optimizer_use_condition_selectivity= @save_optimizer_use_condition_selectivity;
|
||||
drop table t1,t2;
|
||||
#
|
||||
# MDEV-9590: Always print "Engine-independent statistic" warnings and
|
||||
# might be filtering columns unintentionally from engines
|
||||
#
|
||||
|
@ -5568,6 +5568,203 @@ View Create View character_set_client collation_connection
|
||||
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select group_concat(`t1`.`str` separator '\\') AS `GROUP_CONCAT(str SEPARATOR '\\')` from `t1` latin1 latin1_swedish_ci
|
||||
drop view v1;
|
||||
drop table t1;
|
||||
CREATE TABLE IF NOT EXISTS t0 (f0 INT);
|
||||
CREATE TABLE IF NOT EXISTS t1 (f1 INT);
|
||||
CREATE TABLE IF NOT EXISTS t2 (f2 INT);
|
||||
CREATE TABLE IF NOT EXISTS t3 (f3 INT);
|
||||
CREATE TABLE IF NOT EXISTS t4 (f4 INT);
|
||||
CREATE TABLE IF NOT EXISTS t5 (f5 INT);
|
||||
CREATE TABLE IF NOT EXISTS t6 (f6 INT);
|
||||
CREATE TABLE IF NOT EXISTS t7 (f7 INT);
|
||||
CREATE TABLE IF NOT EXISTS t8 (f8 INT);
|
||||
CREATE TABLE IF NOT EXISTS t9 (f9 INT);
|
||||
CREATE TABLE IF NOT EXISTS t10 (f10 INT);
|
||||
CREATE TABLE IF NOT EXISTS t11 (f11 INT);
|
||||
CREATE TABLE IF NOT EXISTS t12 (f12 INT);
|
||||
CREATE TABLE IF NOT EXISTS t13 (f13 INT);
|
||||
CREATE TABLE IF NOT EXISTS t14 (f14 INT);
|
||||
CREATE TABLE IF NOT EXISTS t15 (f15 INT);
|
||||
CREATE TABLE IF NOT EXISTS t16 (f16 INT);
|
||||
CREATE TABLE IF NOT EXISTS t17 (f17 INT);
|
||||
CREATE TABLE IF NOT EXISTS t18 (f18 INT);
|
||||
CREATE TABLE IF NOT EXISTS t19 (f19 INT);
|
||||
CREATE TABLE IF NOT EXISTS t20 (f20 INT);
|
||||
CREATE TABLE IF NOT EXISTS t21 (f21 INT);
|
||||
CREATE TABLE IF NOT EXISTS t22 (f22 INT);
|
||||
CREATE TABLE IF NOT EXISTS t23 (f23 INT);
|
||||
CREATE TABLE IF NOT EXISTS t24 (f24 INT);
|
||||
CREATE TABLE IF NOT EXISTS t25 (f25 INT);
|
||||
CREATE TABLE IF NOT EXISTS t26 (f26 INT);
|
||||
CREATE TABLE IF NOT EXISTS t27 (f27 INT);
|
||||
CREATE TABLE IF NOT EXISTS t28 (f28 INT);
|
||||
CREATE TABLE IF NOT EXISTS t29 (f29 INT);
|
||||
CREATE TABLE IF NOT EXISTS t30 (f30 INT);
|
||||
CREATE TABLE IF NOT EXISTS t31 (f31 INT);
|
||||
CREATE TABLE IF NOT EXISTS t32 (f32 INT);
|
||||
CREATE TABLE IF NOT EXISTS t33 (f33 INT);
|
||||
CREATE TABLE IF NOT EXISTS t34 (f34 INT);
|
||||
CREATE TABLE IF NOT EXISTS t35 (f35 INT);
|
||||
CREATE TABLE IF NOT EXISTS t36 (f36 INT);
|
||||
CREATE TABLE IF NOT EXISTS t37 (f37 INT);
|
||||
CREATE TABLE IF NOT EXISTS t38 (f38 INT);
|
||||
CREATE TABLE IF NOT EXISTS t39 (f39 INT);
|
||||
CREATE TABLE IF NOT EXISTS t40 (f40 INT);
|
||||
CREATE TABLE IF NOT EXISTS t41 (f41 INT);
|
||||
CREATE TABLE IF NOT EXISTS t42 (f42 INT);
|
||||
CREATE TABLE IF NOT EXISTS t43 (f43 INT);
|
||||
CREATE TABLE IF NOT EXISTS t44 (f44 INT);
|
||||
CREATE TABLE IF NOT EXISTS t45 (f45 INT);
|
||||
CREATE TABLE IF NOT EXISTS t46 (f46 INT);
|
||||
CREATE TABLE IF NOT EXISTS t47 (f47 INT);
|
||||
CREATE TABLE IF NOT EXISTS t48 (f48 INT);
|
||||
CREATE TABLE IF NOT EXISTS t49 (f49 INT);
|
||||
CREATE TABLE IF NOT EXISTS t50 (f50 INT);
|
||||
CREATE TABLE IF NOT EXISTS t51 (f51 INT);
|
||||
CREATE TABLE IF NOT EXISTS t52 (f52 INT);
|
||||
CREATE TABLE IF NOT EXISTS t53 (f53 INT);
|
||||
CREATE TABLE IF NOT EXISTS t54 (f54 INT);
|
||||
CREATE TABLE IF NOT EXISTS t55 (f55 INT);
|
||||
CREATE TABLE IF NOT EXISTS t56 (f56 INT);
|
||||
CREATE TABLE IF NOT EXISTS t57 (f57 INT);
|
||||
CREATE TABLE IF NOT EXISTS t58 (f58 INT);
|
||||
CREATE TABLE IF NOT EXISTS t59 (f59 INT);
|
||||
CREATE TABLE IF NOT EXISTS t60 (f60 INT);
|
||||
CREATE OR REPLACE VIEW v60 AS SELECT * FROM t60;
|
||||
EXPLAIN
|
||||
SELECT t0.*
|
||||
FROM t0
|
||||
JOIN t1
|
||||
ON t1.f1 = t0.f0
|
||||
LEFT JOIN t2
|
||||
ON t0.f0 = t2.f2
|
||||
LEFT JOIN t3
|
||||
ON t0.f0 = t3.f3
|
||||
LEFT JOIN t4
|
||||
ON t0.f0 = t4.f4
|
||||
LEFT JOIN t5
|
||||
ON t4.f4 = t5.f5
|
||||
LEFT JOIN t6
|
||||
ON t0.f0 = t6.f6
|
||||
LEFT JOIN t7
|
||||
ON t0.f0 = t7.f7
|
||||
LEFT JOIN t8
|
||||
ON t0.f0 = t8.f8
|
||||
LEFT JOIN t9
|
||||
ON t0.f0 = t9.f9
|
||||
LEFT JOIN t10
|
||||
ON t0.f0 = t10.f10
|
||||
LEFT JOIN t11
|
||||
ON t0.f0 = t11.f11
|
||||
LEFT JOIN t12
|
||||
ON t0.f0 = t12.f12
|
||||
LEFT JOIN t13
|
||||
ON t0.f0 = t13.f13
|
||||
LEFT JOIN t14
|
||||
ON t0.f0 = t14.f14
|
||||
LEFT JOIN t15
|
||||
ON t0.f0 = t15.f15
|
||||
LEFT JOIN t16
|
||||
ON t0.f0 = t16.f16
|
||||
LEFT JOIN t17
|
||||
ON t0.f0 = t17.f17
|
||||
LEFT JOIN t18
|
||||
ON t0.f0 = t18.f18
|
||||
LEFT JOIN t19
|
||||
ON t18.f18 = t19.f19
|
||||
LEFT JOIN t20
|
||||
ON t20.f20 = t19.f19
|
||||
LEFT JOIN t21
|
||||
ON t20.f20 = t21.f21
|
||||
LEFT JOIN t22
|
||||
ON t19.f19 = t22.f22
|
||||
LEFT JOIN t23
|
||||
ON t23.f23 = t0.f0
|
||||
LEFT JOIN t24
|
||||
ON t24.f24 = t23.f23
|
||||
LEFT JOIN t25
|
||||
ON t0.f0 = t25.f25
|
||||
LEFT JOIN t26
|
||||
ON t26.f26 = t0.f0
|
||||
LEFT JOIN t27
|
||||
ON t27.f27 = t0.f0
|
||||
LEFT JOIN t28
|
||||
ON t0.f0 = t28.f28
|
||||
LEFT JOIN t29
|
||||
ON t0.f0 = t29.f29
|
||||
LEFT JOIN t30
|
||||
ON t30.f30 = t0.f0
|
||||
LEFT JOIN t31
|
||||
ON t0.f0 = t31.f31
|
||||
LEFT JOIN t32
|
||||
ON t32.f32 = t31.f31
|
||||
LEFT JOIN t33
|
||||
ON t33.f33 = t0.f0
|
||||
LEFT JOIN t34
|
||||
ON t33.f33 = t34.f34
|
||||
LEFT JOIN t35
|
||||
ON t33.f33 = t35.f35
|
||||
LEFT JOIN t36
|
||||
ON t36.f36 = t0.f0
|
||||
LEFT JOIN t37
|
||||
ON t32.f32 = t37.f37
|
||||
LEFT JOIN t38
|
||||
ON t31.f31 = t38.f38
|
||||
LEFT JOIN t39
|
||||
ON t39.f39 = t0.f0
|
||||
LEFT JOIN t40
|
||||
ON t40.f40 = t39.f39
|
||||
LEFT JOIN t41
|
||||
ON t41.f41 = t0.f0
|
||||
LEFT JOIN t42
|
||||
ON t42.f42 = t41.f41
|
||||
LEFT JOIN t43
|
||||
ON t43.f43 = t41.f41
|
||||
LEFT JOIN t44
|
||||
ON t44.f44 = t0.f0
|
||||
LEFT JOIN t45
|
||||
ON t45.f45 = t0.f0
|
||||
LEFT JOIN t46
|
||||
ON t46.f46 = t0.f0
|
||||
LEFT JOIN t47
|
||||
ON t47.f47 = t0.f0
|
||||
LEFT JOIN t48
|
||||
ON t48.f48 = t0.f0
|
||||
LEFT JOIN t49
|
||||
ON t0.f0 = t49.f49
|
||||
LEFT JOIN t50
|
||||
ON t0.f0 = t50.f50
|
||||
LEFT JOIN t51
|
||||
ON t0.f0 = t51.f51
|
||||
LEFT JOIN t52
|
||||
ON t52.f52 = t0.f0
|
||||
LEFT JOIN t53
|
||||
ON t53.f53 = t0.f0
|
||||
LEFT JOIN t54
|
||||
ON t54.f54 = t0.f0
|
||||
LEFT JOIN t55
|
||||
ON t55.f55 = t0.f0
|
||||
LEFT JOIN t56
|
||||
ON t56.f56 = t0.f0
|
||||
LEFT JOIN t57
|
||||
ON t57.f57 = t0.f0
|
||||
LEFT JOIN t58
|
||||
ON t58.f58 = t57.f57
|
||||
LEFT JOIN t59
|
||||
ON t36.f36 = t59.f59
|
||||
LEFT JOIN v60
|
||||
ON t36.f36 = v60.f60
|
||||
;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 PRIMARY NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
|
||||
2 SUBQUERY NULL NULL NULL NULL NULL NULL NULL no matching row in const table
|
||||
drop table t0, t1, t2, t3, t4, t5, t6, t7, t8, t9,
|
||||
t10, t11, t12, t13, t14, t15, t16, t17, t18,
|
||||
t19, t20, t21, t22, t23, t24, t25, t26, t27,
|
||||
t28, t29, t30, t31, t32, t33, t34, t35, t36,
|
||||
t37, t38, t39, t40, t41, t42, t43, t44, t45,
|
||||
t46, t47, t48, t49, t50, t51, t52, t53, t54,
|
||||
t55, t56, t57, t58, t59,t60;
|
||||
drop view v60;
|
||||
# -----------------------------------------------------------------
|
||||
# -- End of 5.5 tests.
|
||||
# -----------------------------------------------------------------
|
||||
|
@ -46,40 +46,40 @@ Warnings:
|
||||
Warning 1292 Truncated incorrect max_prepared_stmt_count value: '100000000000'
|
||||
SELECT @@global.max_prepared_stmt_count;
|
||||
@@global.max_prepared_stmt_count
|
||||
1048576
|
||||
4294967295
|
||||
SET @@global.max_prepared_stmt_count = 10000.01;
|
||||
ERROR 42000: Incorrect argument type to variable 'max_prepared_stmt_count'
|
||||
SELECT @@global.max_prepared_stmt_count;
|
||||
@@global.max_prepared_stmt_count
|
||||
1048576
|
||||
4294967295
|
||||
SET @@global.max_prepared_stmt_count = -1024;
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect max_prepared_stmt_count value: '-1024'
|
||||
SELECT @@global.max_prepared_stmt_count;
|
||||
@@global.max_prepared_stmt_count
|
||||
0
|
||||
SET @@global.max_prepared_stmt_count = 1048577;
|
||||
SET @@global.max_prepared_stmt_count = 4294967296;
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect max_prepared_stmt_count value: '1048577'
|
||||
Warning 1292 Truncated incorrect max_prepared_stmt_count value: '4294967296'
|
||||
SELECT @@global.max_prepared_stmt_count;
|
||||
@@global.max_prepared_stmt_count
|
||||
1048576
|
||||
SET @@global.max_prepared_stmt_count = 104857612;
|
||||
4294967295
|
||||
SET @@global.max_prepared_stmt_count = 4294967295*1024;
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect max_prepared_stmt_count value: '104857612'
|
||||
Warning 1292 Truncated incorrect max_prepared_stmt_count value: '4398046510080'
|
||||
SELECT @@global.max_prepared_stmt_count;
|
||||
@@global.max_prepared_stmt_count
|
||||
1048576
|
||||
4294967295
|
||||
SET @@global.max_prepared_stmt_count = ON;
|
||||
ERROR 42000: Incorrect argument type to variable 'max_prepared_stmt_count'
|
||||
SELECT @@global.max_prepared_stmt_count;
|
||||
@@global.max_prepared_stmt_count
|
||||
1048576
|
||||
4294967295
|
||||
SET @@global.max_prepared_stmt_count = 'test';
|
||||
ERROR 42000: Incorrect argument type to variable 'max_prepared_stmt_count'
|
||||
SELECT @@global.max_prepared_stmt_count;
|
||||
@@global.max_prepared_stmt_count
|
||||
1048576
|
||||
4294967295
|
||||
'#-------------------FN_DYNVARS_081_05----------------------------#'
|
||||
SET @@session.max_prepared_stmt_count = 4096;
|
||||
ERROR HY000: Variable 'max_prepared_stmt_count' is a GLOBAL variable and should be set with SET GLOBAL
|
||||
|
@ -1975,10 +1975,10 @@ GLOBAL_VALUE 16382
|
||||
GLOBAL_VALUE_ORIGIN COMPILE-TIME
|
||||
DEFAULT_VALUE 16382
|
||||
VARIABLE_SCOPE GLOBAL
|
||||
VARIABLE_TYPE BIGINT UNSIGNED
|
||||
VARIABLE_TYPE INT UNSIGNED
|
||||
VARIABLE_COMMENT Maximum number of prepared statements in the server
|
||||
NUMERIC_MIN_VALUE 0
|
||||
NUMERIC_MAX_VALUE 1048576
|
||||
NUMERIC_MAX_VALUE 4294967295
|
||||
NUMERIC_BLOCK_SIZE 1
|
||||
ENUM_VALUE_LIST NULL
|
||||
READ_ONLY NO
|
||||
|
@ -2157,10 +2157,10 @@ GLOBAL_VALUE 16382
|
||||
GLOBAL_VALUE_ORIGIN COMPILE-TIME
|
||||
DEFAULT_VALUE 16382
|
||||
VARIABLE_SCOPE GLOBAL
|
||||
VARIABLE_TYPE BIGINT UNSIGNED
|
||||
VARIABLE_TYPE INT UNSIGNED
|
||||
VARIABLE_COMMENT Maximum number of prepared statements in the server
|
||||
NUMERIC_MIN_VALUE 0
|
||||
NUMERIC_MAX_VALUE 1048576
|
||||
NUMERIC_MAX_VALUE 4294967295
|
||||
NUMERIC_BLOCK_SIZE 1
|
||||
ENUM_VALUE_LIST NULL
|
||||
READ_ONLY NO
|
||||
|
@ -92,9 +92,9 @@ SET @@global.max_prepared_stmt_count = 10000.01;
|
||||
SELECT @@global.max_prepared_stmt_count;
|
||||
SET @@global.max_prepared_stmt_count = -1024;
|
||||
SELECT @@global.max_prepared_stmt_count;
|
||||
SET @@global.max_prepared_stmt_count = 1048577;
|
||||
SET @@global.max_prepared_stmt_count = 4294967296;
|
||||
SELECT @@global.max_prepared_stmt_count;
|
||||
SET @@global.max_prepared_stmt_count = 104857612;
|
||||
SET @@global.max_prepared_stmt_count = 4294967295*1024;
|
||||
SELECT @@global.max_prepared_stmt_count;
|
||||
|
||||
--Error ER_WRONG_TYPE_FOR_VAR
|
||||
|
@ -606,6 +606,17 @@ SELECT NAME_CONST('a', -(1 OR 2)) OR 1;
|
||||
SELECT NAME_CONST('a', -(1 AND 2)) OR 1;
|
||||
SELECT NAME_CONST('a', -(1)) OR 1;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-15630 uuid() function evaluates at wrong time in query
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (id INT);
|
||||
INSERT INTO t1 VALUES (1),(2),(3);
|
||||
--replace_column 2 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
|
||||
SELECT COUNT(1), UUID() as uid FROM t1 GROUP BY uid;
|
||||
DROP TABLE t1;
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # End of 5.5 tests
|
||||
--echo #
|
||||
|
@ -1768,6 +1768,41 @@ EXPLAIN EXTENDED SELECT CHAR(0xDF USING latin1);
|
||||
EXPLAIN EXTENDED SELECT CHAR(0xDF USING `binary`);
|
||||
EXPLAIN EXTENDED SELECT CHAR(0xDF);
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-15619 using CONVERT() inside AES_ENCRYPT() in an UPDATE corrupts data
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (
|
||||
id int(11) NOT NULL,
|
||||
session_id varchar(255) DEFAULT NULL,
|
||||
directory mediumtext,
|
||||
checksum int(10) DEFAULT NULL,
|
||||
last_update datetime DEFAULT NULL,
|
||||
PRIMARY KEY (id),
|
||||
KEY lastupdate (last_update)
|
||||
) DEFAULT CHARSET=latin1;
|
||||
INSERT INTO t1 VALUES (1,'',NULL,38391,'2017-06-24 07:35:28');
|
||||
UPDATE t1 SET directory = AES_ENCRYPT(CONVERT('test stringrererejrjerjehrjekhrjkehrjkehrkjehrjkerhkjehrjekrhkjehrkjerhjkehrkjehrkjehrjkehrjkehrjkehrjkerjkehrjkehrjkehrjke rekjhrejrejhrjehgrehjgrhjerjhegrjherejhgrjhegrjehgrjhegrejhrgjehgrjhegrjhegrjhergjhegrjhegrhjegrjerhthkjjkdhjkgdfjkgjkdgdjkfjkhgjkfdhjgjkfdghkjdfghkjfdghfjkdghkdjfghdkjfghfjkdghfkjdghkjfdghfkjdghfkdjghfkjdghfdjkghjkdfhgdfjkghfjkdghfjkdghfjdkghfjkdghkfjdghfkjdghfkjdghkjdfghfjdkghjkfdghkjdfhgjkdfhgjkfdhgkjfdghkfjdhgkjfdgdjkejktjherjthkjrethkjrethjkerthjkerhtjkerhtkjerhtjkerhtjkerhtjkrehtkjerhtkjrehtjkrehtkjrehtkjerhtkjerhtjkrehtkjrehtjkrehtkjrethjkrethkjrehtkjethjkerhtjkrehtjkretkjerhtkjrehtjkerhtjkrehtjrehtkjrekjtrfgdsfgdhjsghjgfdhjsfhjdfgdhjshjdshjfghjdsfgjhsfgjhsdfgjhdsfgjdhsfgsjhfgjhsdfgsdjhfgjdhsfdjshfgdsjhfgjsdhfdjshfgdjhsfgdjshfgjdhsfgjhsdfgjhsdgfjhsdgfjhdsgfjhsgfjhsdgfjhdsgfhjsdehkjthrkjethjkre' USING latin1), '95F5A1F52A554'), last_update= NOW();
|
||||
SELECT directory IS NULL FROM t1;
|
||||
DROP TABLE t1;
|
||||
|
||||
CREATE TABLE t1 (
|
||||
id int(11) NOT NULL PRIMARY KEY,
|
||||
directory mediumtext
|
||||
) DEFAULT CHARSET=latin1;
|
||||
INSERT INTO t1 VALUES (1,AES_ENCRYPT(CONVERT(REPEAT('a',800) USING latin1),'95F5A1F52A554'));
|
||||
SELECT AES_DECRYPT(directory,'95F5A1F52A554') FROM t1;
|
||||
DROP TABLE t1;
|
||||
|
||||
SET @enc=AES_ENCRYPT(REPEAT(_latin1'a',800),'95F5A1F52A554');
|
||||
CREATE TABLE t1 (
|
||||
id int(11) NOT NULL PRIMARY KEY,
|
||||
directory mediumtext
|
||||
) DEFAULT CHARSET=latin1;
|
||||
INSERT INTO t1 VALUES (1,AES_DECRYPT(CONVERT(@enc USING binary),'95F5A1F52A554'));
|
||||
SELECT * FROM t1;
|
||||
DROP TABLE t1;
|
||||
|
||||
--echo #
|
||||
--echo # Start of 10.1 tests
|
||||
--echo #
|
||||
|
@ -781,6 +781,15 @@ CREATE TRIGGER tr AFTER DELETE ON t1 FOR EACH ROW SET @a = 1\;
|
||||
PREPARE stmt FROM 'CREATE TRIGGER tr AFTER DELETE ON t1 FOR EACH ROW SET @a = 1\\';
|
||||
DROP TABLE t1;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-15620 Crash when using "SET @@NEW.a=expr" inside a trigger
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (a INT);
|
||||
--error ER_UNKNOWN_SYSTEM_VARIABLE
|
||||
CREATE TRIGGER tr1 BEFORE INSERT ON t1 FOR EACH ROW SET @@NEW.a=0;
|
||||
DROP TABLE t1;
|
||||
|
||||
#
|
||||
# start of 10.1 tests
|
||||
#
|
||||
|
@ -729,6 +729,25 @@ select db_name, table_name, column_name,
|
||||
|
||||
drop table t1;
|
||||
|
||||
--echo #
|
||||
--echo # MDEB-9744: session optimizer_use_condition_selectivity=5 causing SQL Error (1918):
|
||||
--echo # Encountered illegal value '' when converting to DECIMAL
|
||||
--echo #
|
||||
|
||||
set @save_optimizer_use_condition_selectivity= @@optimizer_use_condition_selectivity;
|
||||
set optimizer_use_condition_selectivity=3, use_stat_tables=preferably;
|
||||
|
||||
create table t1 (id int(10),cost decimal(9,2)) engine=innodb;
|
||||
ANALYZE TABLE t1 PERSISTENT FOR ALL;
|
||||
|
||||
create temporary table t2 (id int);
|
||||
insert into t2 (id) select id from t1 where cost > 0;
|
||||
select * from t2;
|
||||
|
||||
set use_stat_tables=@save_use_stat_tables;
|
||||
set optimizer_use_condition_selectivity= @save_optimizer_use_condition_selectivity;
|
||||
drop table t1,t2;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-9590: Always print "Engine-independent statistic" warnings and
|
||||
--echo # might be filtering columns unintentionally from engines
|
||||
|
@ -5491,6 +5491,202 @@ SHOW CREATE VIEW v1;
|
||||
drop view v1;
|
||||
drop table t1;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS t0 (f0 INT);
|
||||
CREATE TABLE IF NOT EXISTS t1 (f1 INT);
|
||||
CREATE TABLE IF NOT EXISTS t2 (f2 INT);
|
||||
CREATE TABLE IF NOT EXISTS t3 (f3 INT);
|
||||
CREATE TABLE IF NOT EXISTS t4 (f4 INT);
|
||||
CREATE TABLE IF NOT EXISTS t5 (f5 INT);
|
||||
CREATE TABLE IF NOT EXISTS t6 (f6 INT);
|
||||
CREATE TABLE IF NOT EXISTS t7 (f7 INT);
|
||||
CREATE TABLE IF NOT EXISTS t8 (f8 INT);
|
||||
CREATE TABLE IF NOT EXISTS t9 (f9 INT);
|
||||
CREATE TABLE IF NOT EXISTS t10 (f10 INT);
|
||||
CREATE TABLE IF NOT EXISTS t11 (f11 INT);
|
||||
CREATE TABLE IF NOT EXISTS t12 (f12 INT);
|
||||
CREATE TABLE IF NOT EXISTS t13 (f13 INT);
|
||||
CREATE TABLE IF NOT EXISTS t14 (f14 INT);
|
||||
CREATE TABLE IF NOT EXISTS t15 (f15 INT);
|
||||
CREATE TABLE IF NOT EXISTS t16 (f16 INT);
|
||||
CREATE TABLE IF NOT EXISTS t17 (f17 INT);
|
||||
CREATE TABLE IF NOT EXISTS t18 (f18 INT);
|
||||
CREATE TABLE IF NOT EXISTS t19 (f19 INT);
|
||||
CREATE TABLE IF NOT EXISTS t20 (f20 INT);
|
||||
CREATE TABLE IF NOT EXISTS t21 (f21 INT);
|
||||
CREATE TABLE IF NOT EXISTS t22 (f22 INT);
|
||||
CREATE TABLE IF NOT EXISTS t23 (f23 INT);
|
||||
CREATE TABLE IF NOT EXISTS t24 (f24 INT);
|
||||
CREATE TABLE IF NOT EXISTS t25 (f25 INT);
|
||||
CREATE TABLE IF NOT EXISTS t26 (f26 INT);
|
||||
CREATE TABLE IF NOT EXISTS t27 (f27 INT);
|
||||
CREATE TABLE IF NOT EXISTS t28 (f28 INT);
|
||||
CREATE TABLE IF NOT EXISTS t29 (f29 INT);
|
||||
CREATE TABLE IF NOT EXISTS t30 (f30 INT);
|
||||
CREATE TABLE IF NOT EXISTS t31 (f31 INT);
|
||||
CREATE TABLE IF NOT EXISTS t32 (f32 INT);
|
||||
CREATE TABLE IF NOT EXISTS t33 (f33 INT);
|
||||
CREATE TABLE IF NOT EXISTS t34 (f34 INT);
|
||||
CREATE TABLE IF NOT EXISTS t35 (f35 INT);
|
||||
CREATE TABLE IF NOT EXISTS t36 (f36 INT);
|
||||
CREATE TABLE IF NOT EXISTS t37 (f37 INT);
|
||||
CREATE TABLE IF NOT EXISTS t38 (f38 INT);
|
||||
CREATE TABLE IF NOT EXISTS t39 (f39 INT);
|
||||
CREATE TABLE IF NOT EXISTS t40 (f40 INT);
|
||||
CREATE TABLE IF NOT EXISTS t41 (f41 INT);
|
||||
CREATE TABLE IF NOT EXISTS t42 (f42 INT);
|
||||
CREATE TABLE IF NOT EXISTS t43 (f43 INT);
|
||||
CREATE TABLE IF NOT EXISTS t44 (f44 INT);
|
||||
CREATE TABLE IF NOT EXISTS t45 (f45 INT);
|
||||
CREATE TABLE IF NOT EXISTS t46 (f46 INT);
|
||||
CREATE TABLE IF NOT EXISTS t47 (f47 INT);
|
||||
CREATE TABLE IF NOT EXISTS t48 (f48 INT);
|
||||
CREATE TABLE IF NOT EXISTS t49 (f49 INT);
|
||||
CREATE TABLE IF NOT EXISTS t50 (f50 INT);
|
||||
CREATE TABLE IF NOT EXISTS t51 (f51 INT);
|
||||
CREATE TABLE IF NOT EXISTS t52 (f52 INT);
|
||||
CREATE TABLE IF NOT EXISTS t53 (f53 INT);
|
||||
CREATE TABLE IF NOT EXISTS t54 (f54 INT);
|
||||
CREATE TABLE IF NOT EXISTS t55 (f55 INT);
|
||||
CREATE TABLE IF NOT EXISTS t56 (f56 INT);
|
||||
CREATE TABLE IF NOT EXISTS t57 (f57 INT);
|
||||
CREATE TABLE IF NOT EXISTS t58 (f58 INT);
|
||||
CREATE TABLE IF NOT EXISTS t59 (f59 INT);
|
||||
CREATE TABLE IF NOT EXISTS t60 (f60 INT);
|
||||
CREATE OR REPLACE VIEW v60 AS SELECT * FROM t60;
|
||||
|
||||
EXPLAIN
|
||||
SELECT t0.*
|
||||
FROM t0
|
||||
JOIN t1
|
||||
ON t1.f1 = t0.f0
|
||||
LEFT JOIN t2
|
||||
ON t0.f0 = t2.f2
|
||||
LEFT JOIN t3
|
||||
ON t0.f0 = t3.f3
|
||||
LEFT JOIN t4
|
||||
ON t0.f0 = t4.f4
|
||||
LEFT JOIN t5
|
||||
ON t4.f4 = t5.f5
|
||||
LEFT JOIN t6
|
||||
ON t0.f0 = t6.f6
|
||||
LEFT JOIN t7
|
||||
ON t0.f0 = t7.f7
|
||||
LEFT JOIN t8
|
||||
ON t0.f0 = t8.f8
|
||||
LEFT JOIN t9
|
||||
ON t0.f0 = t9.f9
|
||||
LEFT JOIN t10
|
||||
ON t0.f0 = t10.f10
|
||||
LEFT JOIN t11
|
||||
ON t0.f0 = t11.f11
|
||||
LEFT JOIN t12
|
||||
ON t0.f0 = t12.f12
|
||||
LEFT JOIN t13
|
||||
ON t0.f0 = t13.f13
|
||||
LEFT JOIN t14
|
||||
ON t0.f0 = t14.f14
|
||||
LEFT JOIN t15
|
||||
ON t0.f0 = t15.f15
|
||||
LEFT JOIN t16
|
||||
ON t0.f0 = t16.f16
|
||||
LEFT JOIN t17
|
||||
ON t0.f0 = t17.f17
|
||||
LEFT JOIN t18
|
||||
ON t0.f0 = t18.f18
|
||||
LEFT JOIN t19
|
||||
ON t18.f18 = t19.f19
|
||||
LEFT JOIN t20
|
||||
ON t20.f20 = t19.f19
|
||||
LEFT JOIN t21
|
||||
ON t20.f20 = t21.f21
|
||||
LEFT JOIN t22
|
||||
ON t19.f19 = t22.f22
|
||||
LEFT JOIN t23
|
||||
ON t23.f23 = t0.f0
|
||||
LEFT JOIN t24
|
||||
ON t24.f24 = t23.f23
|
||||
LEFT JOIN t25
|
||||
ON t0.f0 = t25.f25
|
||||
LEFT JOIN t26
|
||||
ON t26.f26 = t0.f0
|
||||
LEFT JOIN t27
|
||||
ON t27.f27 = t0.f0
|
||||
LEFT JOIN t28
|
||||
ON t0.f0 = t28.f28
|
||||
LEFT JOIN t29
|
||||
ON t0.f0 = t29.f29
|
||||
LEFT JOIN t30
|
||||
ON t30.f30 = t0.f0
|
||||
LEFT JOIN t31
|
||||
ON t0.f0 = t31.f31
|
||||
LEFT JOIN t32
|
||||
ON t32.f32 = t31.f31
|
||||
LEFT JOIN t33
|
||||
ON t33.f33 = t0.f0
|
||||
LEFT JOIN t34
|
||||
ON t33.f33 = t34.f34
|
||||
LEFT JOIN t35
|
||||
ON t33.f33 = t35.f35
|
||||
LEFT JOIN t36
|
||||
ON t36.f36 = t0.f0
|
||||
LEFT JOIN t37
|
||||
ON t32.f32 = t37.f37
|
||||
LEFT JOIN t38
|
||||
ON t31.f31 = t38.f38
|
||||
LEFT JOIN t39
|
||||
ON t39.f39 = t0.f0
|
||||
LEFT JOIN t40
|
||||
ON t40.f40 = t39.f39
|
||||
LEFT JOIN t41
|
||||
ON t41.f41 = t0.f0
|
||||
LEFT JOIN t42
|
||||
ON t42.f42 = t41.f41
|
||||
LEFT JOIN t43
|
||||
ON t43.f43 = t41.f41
|
||||
LEFT JOIN t44
|
||||
ON t44.f44 = t0.f0
|
||||
LEFT JOIN t45
|
||||
ON t45.f45 = t0.f0
|
||||
LEFT JOIN t46
|
||||
ON t46.f46 = t0.f0
|
||||
LEFT JOIN t47
|
||||
ON t47.f47 = t0.f0
|
||||
LEFT JOIN t48
|
||||
ON t48.f48 = t0.f0
|
||||
LEFT JOIN t49
|
||||
ON t0.f0 = t49.f49
|
||||
LEFT JOIN t50
|
||||
ON t0.f0 = t50.f50
|
||||
LEFT JOIN t51
|
||||
ON t0.f0 = t51.f51
|
||||
LEFT JOIN t52
|
||||
ON t52.f52 = t0.f0
|
||||
LEFT JOIN t53
|
||||
ON t53.f53 = t0.f0
|
||||
LEFT JOIN t54
|
||||
ON t54.f54 = t0.f0
|
||||
LEFT JOIN t55
|
||||
ON t55.f55 = t0.f0
|
||||
LEFT JOIN t56
|
||||
ON t56.f56 = t0.f0
|
||||
LEFT JOIN t57
|
||||
ON t57.f57 = t0.f0
|
||||
LEFT JOIN t58
|
||||
ON t58.f58 = t57.f57
|
||||
LEFT JOIN t59
|
||||
ON t36.f36 = t59.f59
|
||||
LEFT JOIN v60
|
||||
ON t36.f36 = v60.f60
|
||||
;
|
||||
drop table t0, t1, t2, t3, t4, t5, t6, t7, t8, t9,
|
||||
t10, t11, t12, t13, t14, t15, t16, t17, t18,
|
||||
t19, t20, t21, t22, t23, t24, t25, t26, t27,
|
||||
t28, t29, t30, t31, t32, t33, t34, t35, t36,
|
||||
t37, t38, t39, t40, t41, t42, t43, t44, t45,
|
||||
t46, t47, t48, t49, t50, t51, t52, t53, t54,
|
||||
t55, t56, t57, t58, t59,t60;
|
||||
drop view v60;
|
||||
|
||||
--echo # -----------------------------------------------------------------
|
||||
--echo # -- End of 5.5 tests.
|
||||
--echo # -----------------------------------------------------------------
|
||||
|
@ -214,7 +214,7 @@ int my_addr_resolve(void *ptr, my_addr_loc *loc)
|
||||
strnmov(addr2line_binary, info.dli_fname, sizeof(addr2line_binary));
|
||||
}
|
||||
offset = info.dli_fbase;
|
||||
len= my_snprintf(input, sizeof(input), "%p\n", ptr - offset);
|
||||
len= my_snprintf(input, sizeof(input), "%08x\n", (ulonglong)(ptr - offset));
|
||||
if (write(in[1], input, len) <= 0)
|
||||
return 1;
|
||||
|
||||
|
@ -2512,10 +2512,10 @@ static int send_client_reply_packet(MCPVIO_EXT *mpvio,
|
||||
if (mysql->client_flag & CLIENT_MULTI_STATEMENTS)
|
||||
mysql->client_flag|= CLIENT_MULTI_RESULTS;
|
||||
|
||||
#if defined(HAVE_OPENSSL) && !defined(EMBEDDED_LIBRARY)
|
||||
#ifdef HAVE_OPENSSL
|
||||
if (mysql->options.use_ssl)
|
||||
mysql->client_flag|= CLIENT_SSL;
|
||||
#endif /* HAVE_OPENSSL && !EMBEDDED_LIBRARY*/
|
||||
#endif /* HAVE_OPENSSL */
|
||||
|
||||
if (mpvio->db)
|
||||
mysql->client_flag|= CLIENT_CONNECT_WITH_DB;
|
||||
|
@ -41,13 +41,12 @@ struct show_table_contributors_st show_table_contributors[]= {
|
||||
{"Alibaba Cloud", "https://www.alibabacloud.com/", "Platinum Sponsor of the MariaDB Foundation"},
|
||||
{"Tencent Cloud", "https://cloud.tencent.com", "Platinum Sponsor of the MariaDB Foundation"},
|
||||
{"Microsoft", "https://microsoft.com/", "Platinum Sponsor of the MariaDB Foundation"},
|
||||
{"MariaDB Corporation", "https://mariadb.com", "Founding member, Gold Sponsor of the MariaDB Foundation"},
|
||||
{"MariaDB Corporation", "https://mariadb.com", "Founding member, Platinum Sponsor of the MariaDB Foundation"},
|
||||
{"Visma", "https://visma.com", "Gold Sponsor of the MariaDB Foundation"},
|
||||
{"DBS", "https://dbs.com", "Gold Sponsor of the MariaDB Foundation"},
|
||||
{"IBM", "https://www.ibm.com", "Gold Sponsor of the MariaDB Foundation"},
|
||||
{"Nexedi", "https://www.nexedi.com", "Silver Sponsor of the MariaDB Foundation"},
|
||||
{"Acronis", "http://www.acronis.com", "Silver Sponsor of the MariaDB Foundation"},
|
||||
{"Auttomattic", "https://automattic.com", "Bronze Sponsor of the MariaDB Foundation"},
|
||||
{"Verkkokauppa.com", "https://www.verkkokauppa.com", "Bronze Sponsor of the MariaDB Foundation"},
|
||||
{"Virtuozzo", "https://virtuozzo.com", "Bronze Sponsor of the MariaDB Foundation"},
|
||||
{"Tencent Game DBA", "http://tencentdba.com/about", "Bronze Sponsor of the MariaDB Foundation"},
|
||||
|
@ -318,7 +318,7 @@ String *Item_aes_crypt::val_str(String *str2)
|
||||
{
|
||||
DBUG_ASSERT(fixed == 1);
|
||||
StringBuffer<80> user_key_buf;
|
||||
String *sptr= args[0]->val_str(&str_value);
|
||||
String *sptr= args[0]->val_str(&tmp_value);
|
||||
String *user_key= args[1]->val_str(&user_key_buf);
|
||||
uint32 aes_length;
|
||||
|
||||
|
@ -202,6 +202,7 @@ class Item_aes_crypt :public Item_str_binary_checksum_func
|
||||
|
||||
protected:
|
||||
int what;
|
||||
String tmp_value;
|
||||
public:
|
||||
Item_aes_crypt(THD *thd, Item *a, Item *b)
|
||||
:Item_str_binary_checksum_func(thd, a, b) {}
|
||||
@ -211,8 +212,8 @@ public:
|
||||
class Item_func_aes_encrypt :public Item_aes_crypt
|
||||
{
|
||||
public:
|
||||
Item_func_aes_encrypt(THD *thd, Item *a, Item *b):
|
||||
Item_aes_crypt(thd, a, b) {}
|
||||
Item_func_aes_encrypt(THD *thd, Item *a, Item *b)
|
||||
:Item_aes_crypt(thd, a, b) {}
|
||||
void fix_length_and_dec();
|
||||
const char *func_name() const { return "aes_encrypt"; }
|
||||
};
|
||||
@ -1241,6 +1242,7 @@ public:
|
||||
DERIVATION_COERCIBLE, MY_REPERTOIRE_ASCII);
|
||||
fix_char_length(MY_UUID_STRING_LENGTH);
|
||||
}
|
||||
table_map used_tables() const { return RAND_TABLE_BIT; }
|
||||
const char *func_name() const{ return "uuid"; }
|
||||
String *val_str(String *);
|
||||
bool check_vcol_func_processor(uchar *int_arg)
|
||||
|
@ -540,7 +540,7 @@ bool max_user_connections_checking=0;
|
||||
Limit of the total number of prepared statements in the server.
|
||||
Is necessary to protect the server against out-of-memory attacks.
|
||||
*/
|
||||
ulong max_prepared_stmt_count;
|
||||
uint max_prepared_stmt_count;
|
||||
/**
|
||||
Current total number of prepared statements in the server. This number
|
||||
is exact, and therefore may not be equal to the difference between
|
||||
@ -551,7 +551,7 @@ ulong max_prepared_stmt_count;
|
||||
two different connections, this counts as two distinct prepared
|
||||
statements.
|
||||
*/
|
||||
ulong prepared_stmt_count=0;
|
||||
uint prepared_stmt_count=0;
|
||||
ulong thread_id=1L,current_pid;
|
||||
ulong slow_launch_threads = 0;
|
||||
uint sync_binlog_period= 0, sync_relaylog_period= 0,
|
||||
|
@ -200,7 +200,7 @@ extern ulong slave_trans_retries;
|
||||
extern uint slave_net_timeout;
|
||||
extern int max_user_connections;
|
||||
extern ulong what_to_log,flush_time;
|
||||
extern ulong max_prepared_stmt_count, prepared_stmt_count;
|
||||
extern uint max_prepared_stmt_count, prepared_stmt_count;
|
||||
extern ulong open_files_limit;
|
||||
extern ulonglong binlog_cache_size, binlog_stmt_cache_size;
|
||||
extern ulonglong max_binlog_cache_size, max_binlog_stmt_cache_size;
|
||||
|
@ -5577,8 +5577,8 @@ ER_SP_NO_AGGREGATE 42000
|
||||
eng "AGGREGATE is not supported for stored functions"
|
||||
ger "AGGREGATE wird bei gespeicherten Funktionen nicht unterstützt"
|
||||
ER_MAX_PREPARED_STMT_COUNT_REACHED 42000
|
||||
eng "Can't create more than max_prepared_stmt_count statements (current value: %lu)"
|
||||
ger "Kann nicht mehr Anweisungen als max_prepared_stmt_count erzeugen (aktueller Wert: %lu)"
|
||||
eng "Can't create more than max_prepared_stmt_count statements (current value: %u)"
|
||||
ger "Kann nicht mehr Anweisungen als max_prepared_stmt_count erzeugen (aktueller Wert: %u)"
|
||||
ER_VIEW_RECURSIVE
|
||||
eng "`%-.192s`.`%-.192s` contains view recursion"
|
||||
ger "`%-.192s`.`%-.192s` enthält View-Rekursion"
|
||||
|
@ -3083,18 +3083,19 @@ bool statistics_for_tables_is_needed(THD *thd, TABLE_LIST *tables)
|
||||
return FALSE;
|
||||
|
||||
/*
|
||||
Do not read statistics for any query over non-user tables.
|
||||
If the query references some statistical tables, but not all
|
||||
of them, reading the statistics may lead to a deadlock
|
||||
Do not read statistics for any query that explicity involves
|
||||
statistical tables, failure to to do so we may end up
|
||||
in a deadlock.
|
||||
*/
|
||||
|
||||
for (TABLE_LIST *tl= tables; tl; tl= tl->next_global)
|
||||
{
|
||||
if (!tl->is_view_or_derived() && tl->table)
|
||||
{
|
||||
TABLE_SHARE *table_share= tl->table->s;
|
||||
if (table_share &&
|
||||
(table_share->table_category != TABLE_CATEGORY_USER ||
|
||||
table_share->tmp_table != NO_TMP_TABLE))
|
||||
table_share->table_category != TABLE_CATEGORY_USER
|
||||
&& is_stat_table(tl->db, tl->alias))
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
@ -3767,6 +3768,15 @@ double get_column_range_cardinality(Field *field,
|
||||
|
||||
if (!col_stats)
|
||||
return tab_records;
|
||||
/*
|
||||
Use statistics for a table only when we have actually read
|
||||
the statistics from the stat tables. For example due to
|
||||
chances of getting a deadlock we disable reading statistics for
|
||||
a table.
|
||||
*/
|
||||
|
||||
if (!table->stats_is_read)
|
||||
return tab_records;
|
||||
|
||||
double col_nulls= tab_records * col_stats->get_nulls_ratio();
|
||||
|
||||
@ -3990,4 +4000,3 @@ bool is_stat_table(const char *db, const char *table)
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -14503,6 +14503,11 @@ option_value_no_option_type:
|
||||
| '@' '@' opt_var_ident_type internal_variable_name equal set_expr_or_default
|
||||
{
|
||||
struct sys_var_with_base tmp= $4;
|
||||
if (tmp.var == trg_new_row_fake_var)
|
||||
{
|
||||
my_error(ER_UNKNOWN_SYSTEM_VARIABLE, MYF(0), "NEW");
|
||||
MYSQL_YYABORT;
|
||||
}
|
||||
/* Lookup if necessary: must be a system variable. */
|
||||
if (tmp.var == NULL)
|
||||
{
|
||||
|
@ -2111,11 +2111,11 @@ static Sys_var_ulong Sys_max_long_data_size(
|
||||
BLOCK_SIZE(1));
|
||||
|
||||
static PolyLock_mutex PLock_prepared_stmt_count(&LOCK_prepared_stmt_count);
|
||||
static Sys_var_ulong Sys_max_prepared_stmt_count(
|
||||
static Sys_var_uint Sys_max_prepared_stmt_count(
|
||||
"max_prepared_stmt_count",
|
||||
"Maximum number of prepared statements in the server",
|
||||
GLOBAL_VAR(max_prepared_stmt_count), CMD_LINE(REQUIRED_ARG),
|
||||
VALID_RANGE(0, 1024*1024), DEFAULT(16382), BLOCK_SIZE(1),
|
||||
VALID_RANGE(0, UINT_MAX32), DEFAULT(16382), BLOCK_SIZE(1),
|
||||
&PLock_prepared_stmt_count);
|
||||
|
||||
static Sys_var_ulong Sys_max_sort_length(
|
||||
|
@ -2305,6 +2305,7 @@ struct TABLE_LIST
|
||||
DBUG_PRINT("enter", ("Alias: '%s' Unit: %p",
|
||||
(alias ? alias : "<NULL>"),
|
||||
get_unit()));
|
||||
derived= get_unit();
|
||||
derived_type= ((derived_type & (derived ? DTYPE_MASK : DTYPE_VIEW)) |
|
||||
DTYPE_TABLE | DTYPE_MATERIALIZE);
|
||||
set_check_materialized();
|
||||
|
@ -22,6 +22,5 @@
|
||||
======================================================================
|
||||
*/
|
||||
|
||||
#include "graphcore-config.h"
|
||||
#include "graphcore-graph.h"
|
||||
|
||||
|
@ -25,7 +25,6 @@
|
||||
#include <string.h>
|
||||
#include <cstdlib>
|
||||
|
||||
#include "graphcore-config.h"
|
||||
#include "graphcore-graph.h"
|
||||
|
||||
#include <set>
|
||||
|
@ -24,8 +24,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "oqgraph_thunk.h"
|
||||
#include "oqgraph_judy.h"
|
||||
#include "oqgraph_thunk.h"
|
||||
|
||||
#define BOOST_NO_HASH 1
|
||||
#define BOOST_NO_SLIST 1
|
||||
|
Reference in New Issue
Block a user