mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge from mysql-next-mr.
This commit is contained in:
@ -21,14 +21,10 @@ let $index_merge_random_rows_in_EXPLAIN = 1;
|
||||
# InnoDB does not support Merge tables (affects include/index_merge1.inc)
|
||||
let $merge_table_support= 0;
|
||||
|
||||
# The first two tests are disabled because of non deterministic explain output.
|
||||
# If include/index_merge1.inc can be enabled for InnoDB and all other
|
||||
# storage engines, please remove the subtest for Bug#21277 from
|
||||
# include/index_merge2.inc.
|
||||
# This test exists already in include/index_merge1.inc.
|
||||
# -- [DISABLED Bug#45727]
|
||||
# --source include/index_merge1.inc
|
||||
# --source include/index_merge_ror.inc
|
||||
# --source include/index_merge2.inc
|
||||
|
||||
--source include/index_merge2.inc
|
||||
--source include/index_merge_2sweeps.inc
|
||||
--source include/index_merge_ror_cpk.inc
|
||||
|
48
mysql-test/t/information_schema-big.test
Normal file
48
mysql-test/t/information_schema-big.test
Normal file
@ -0,0 +1,48 @@
|
||||
# This test uses grants, which can't get tested for embedded server
|
||||
-- source include/big_test.inc
|
||||
-- source include/not_embedded.inc
|
||||
|
||||
# check that CSV engine was compiled in, as the result of the test depends
|
||||
# on the presence of the log tables (which are CSV-based).
|
||||
--source include/have_csv.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t0,t1,t2,t3,t4,t5;
|
||||
DROP VIEW IF EXISTS v1;
|
||||
--enable_warnings
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Bug#18925: subqueries with MIN/MAX functions on INFORMARTION_SCHEMA
|
||||
--echo #
|
||||
|
||||
SELECT t.table_name, c1.column_name
|
||||
FROM information_schema.tables t
|
||||
INNER JOIN
|
||||
information_schema.columns c1
|
||||
ON t.table_schema = c1.table_schema AND
|
||||
t.table_name = c1.table_name
|
||||
WHERE t.table_schema = 'information_schema' AND
|
||||
c1.ordinal_position =
|
||||
( SELECT COALESCE(MIN(c2.ordinal_position),1)
|
||||
FROM information_schema.columns c2
|
||||
WHERE c2.table_schema = t.table_schema AND
|
||||
c2.table_name = t.table_name AND
|
||||
c2.column_name LIKE '%SCHEMA%'
|
||||
)
|
||||
AND t.table_name NOT LIKE 'innodb%';
|
||||
SELECT t.table_name, c1.column_name
|
||||
FROM information_schema.tables t
|
||||
INNER JOIN
|
||||
information_schema.columns c1
|
||||
ON t.table_schema = c1.table_schema AND
|
||||
t.table_name = c1.table_name
|
||||
WHERE t.table_schema = 'information_schema' AND
|
||||
c1.ordinal_position =
|
||||
( SELECT COALESCE(MIN(c2.ordinal_position),1)
|
||||
FROM information_schema.columns c2
|
||||
WHERE c2.table_schema = 'information_schema' AND
|
||||
c2.table_name = t.table_name AND
|
||||
c2.column_name LIKE '%SCHEMA%'
|
||||
)
|
||||
AND t.table_name NOT LIKE 'innodb%';
|
@ -913,41 +913,6 @@ DROP FUNCTION f1;
|
||||
DROP PROCEDURE p1;
|
||||
DROP USER mysql_bug20230@localhost;
|
||||
|
||||
#
|
||||
# Bug#18925 subqueries with MIN/MAX functions on INFORMARTION_SCHEMA
|
||||
#
|
||||
|
||||
SELECT t.table_name, c1.column_name
|
||||
FROM information_schema.tables t
|
||||
INNER JOIN
|
||||
information_schema.columns c1
|
||||
ON t.table_schema = c1.table_schema AND
|
||||
t.table_name = c1.table_name
|
||||
WHERE t.table_schema = 'information_schema' AND
|
||||
c1.ordinal_position =
|
||||
( SELECT COALESCE(MIN(c2.ordinal_position),1)
|
||||
FROM information_schema.columns c2
|
||||
WHERE c2.table_schema = t.table_schema AND
|
||||
c2.table_name = t.table_name AND
|
||||
c2.column_name LIKE '%SCHEMA%'
|
||||
)
|
||||
AND t.table_name not like 'innodb_%';
|
||||
SELECT t.table_name, c1.column_name
|
||||
FROM information_schema.tables t
|
||||
INNER JOIN
|
||||
information_schema.columns c1
|
||||
ON t.table_schema = c1.table_schema AND
|
||||
t.table_name = c1.table_name
|
||||
WHERE t.table_schema = 'information_schema' AND
|
||||
c1.ordinal_position =
|
||||
( SELECT COALESCE(MIN(c2.ordinal_position),1)
|
||||
FROM information_schema.columns c2
|
||||
WHERE c2.table_schema = 'information_schema' AND
|
||||
c2.table_name = t.table_name AND
|
||||
c2.column_name LIKE '%SCHEMA%'
|
||||
)
|
||||
AND t.table_name not like 'innodb_%';
|
||||
|
||||
#
|
||||
# Bug#2123 query with a simple non-correlated subquery over
|
||||
# INFORMARTION_SCHEMA.TABLES
|
||||
|
@ -130,3 +130,60 @@ SELECT COALESCE(d, d), IFNULL(d, d), IF(i, d, d),
|
||||
DROP TABLE t1;
|
||||
|
||||
--echo End of 5.0 tests
|
||||
|
||||
# Verify that column metadata is correct for all possible data types.
|
||||
# Originally about BUG#42980 "Client doesn't set NUM_FLAG for DECIMAL"
|
||||
|
||||
create table t1(
|
||||
# numeric types
|
||||
bool_col bool,
|
||||
boolean_col boolean,
|
||||
bit_col bit(5),
|
||||
tiny tinyint,
|
||||
tiny_uns tinyint unsigned,
|
||||
small smallint,
|
||||
small_uns smallint unsigned,
|
||||
medium mediumint,
|
||||
medium_uns mediumint unsigned,
|
||||
int_col int,
|
||||
int_col_uns int unsigned,
|
||||
big bigint,
|
||||
big_uns bigint unsigned,
|
||||
decimal_col decimal(10,5),
|
||||
# synonyms of DECIMAL
|
||||
numeric_col numeric(10),
|
||||
fixed_col fixed(10),
|
||||
dec_col dec(10),
|
||||
decimal_col_uns decimal(10,5) unsigned,
|
||||
fcol float,
|
||||
fcol_uns float unsigned,
|
||||
dcol double,
|
||||
double_precision_col double precision,
|
||||
dcol_uns double unsigned,
|
||||
# date/time types
|
||||
date_col date,
|
||||
time_col time,
|
||||
timestamp_col timestamp,
|
||||
year_col year,
|
||||
datetime_col datetime,
|
||||
# string types
|
||||
char_col char(5),
|
||||
varchar_col varchar(10),
|
||||
binary_col binary(10),
|
||||
varbinary_col varbinary(10),
|
||||
tinyblob_col tinyblob,
|
||||
blob_col blob,
|
||||
mediumblob_col mediumblob,
|
||||
longblob_col longblob,
|
||||
text_col text,
|
||||
mediumtext_col mediumtext,
|
||||
longtext_col longtext,
|
||||
enum_col enum("A","B","C"),
|
||||
set_col set("F","E","D")
|
||||
);
|
||||
|
||||
--enable_metadata
|
||||
select * from t1;
|
||||
--disable_metadata
|
||||
|
||||
drop table t1;
|
||||
|
@ -1159,3 +1159,22 @@ INSERT INTO t1 VALUES ('2006-03-01 12:00:00');
|
||||
-- echo must use p0 only:
|
||||
explain partitions select * from t1 where recdate < '2006-01-01 00:00:00';
|
||||
drop table t1;
|
||||
|
||||
-- echo #
|
||||
-- echo # BUG#33730 Full table scan instead selected partitions for query more than 10 partitions
|
||||
-- echo #
|
||||
create table t0 (a int);
|
||||
insert into t0 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
|
||||
create table t1 (a int)
|
||||
partition by range(a+0) (
|
||||
partition p0 values less than (64),
|
||||
partition p1 values less than (128),
|
||||
partition p2 values less than (255)
|
||||
);
|
||||
insert into t1 select A.a + 10*B.a from t0 A, t0 B;
|
||||
|
||||
# this will use interval_via_walking
|
||||
explain partitions select * from t1 where a between 10 and 13;
|
||||
explain partitions select * from t1 where a between 10 and 10+33;
|
||||
|
||||
drop table t0, t1;
|
||||
|
Reference in New Issue
Block a user