summaryrefslogtreecommitdiff
path: root/mysql-test/r/innodb_mysql.result
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/r/innodb_mysql.result')
-rw-r--r--mysql-test/r/innodb_mysql.result2495
1 files changed, 0 insertions, 2495 deletions
diff --git a/mysql-test/r/innodb_mysql.result b/mysql-test/r/innodb_mysql.result
deleted file mode 100644
index 3d409d3bfb1..00000000000
--- a/mysql-test/r/innodb_mysql.result
+++ /dev/null
@@ -1,2495 +0,0 @@
-set global innodb_support_xa=default;
-set session innodb_support_xa=default;
-SET SESSION STORAGE_ENGINE = InnoDB;
-drop table if exists t1,t2,t3,t1m,t1i,t2m,t2i,t4;
-drop procedure if exists p1;
-create table t1 (
-c_id int(11) not null default '0',
-org_id int(11) default null,
-unique key contacts$c_id (c_id),
-key contacts$org_id (org_id)
-);
-insert into t1 values
-(2,null),(120,null),(141,null),(218,7), (128,1),
-(151,2),(234,2),(236,2),(243,2),(255,2),(259,2),(232,3),(235,3),(238,3),
-(246,3),(253,3),(269,3),(285,3),(291,3),(293,3),(131,4),(230,4),(231,4);
-create table t2 (
-slai_id int(11) not null default '0',
-owner_tbl int(11) default null,
-owner_id int(11) default null,
-sla_id int(11) default null,
-inc_web int(11) default null,
-inc_email int(11) default null,
-inc_chat int(11) default null,
-inc_csr int(11) default null,
-inc_total int(11) default null,
-time_billed int(11) default null,
-activedate timestamp null default null,
-expiredate timestamp null default null,
-state int(11) default null,
-sla_set int(11) default null,
-unique key t2$slai_id (slai_id),
-key t2$owner_id (owner_id),
-key t2$sla_id (sla_id)
-);
-insert into t2(slai_id, owner_tbl, owner_id, sla_id) values
-(1,3,1,1), (3,3,10,2), (4,3,3,6), (5,3,2,5), (6,3,8,3), (7,3,9,7),
-(8,3,6,8), (9,3,4,9), (10,3,5,10), (11,3,11,11), (12,3,7,12);
-flush tables;
-select si.slai_id
-from t1 c join t2 si on
-((si.owner_tbl = 3 and si.owner_id = c.org_id) or
-( si.owner_tbl = 2 and si.owner_id = c.c_id))
-where
-c.c_id = 218 and expiredate is null;
-slai_id
-12
-select * from t1 where org_id is null;
-c_id org_id
-2 NULL
-120 NULL
-141 NULL
-select si.slai_id
-from t1 c join t2 si on
-((si.owner_tbl = 3 and si.owner_id = c.org_id) or
-( si.owner_tbl = 2 and si.owner_id = c.c_id))
-where
-c.c_id = 218 and expiredate is null;
-slai_id
-12
-drop table t1, t2;
-CREATE TABLE t1 (a int, b int, KEY b (b));
-CREATE TABLE t2 (a int, b int, PRIMARY KEY (a,b));
-CREATE TABLE t3 (a int, b int, c int, PRIMARY KEY (a),
-UNIQUE KEY b (b,c), KEY a (a,b,c));
-INSERT INTO t1 VALUES (1, 1);
-INSERT INTO t1 SELECT a + 1, b + 1 FROM t1;
-INSERT INTO t1 SELECT a + 2, b + 2 FROM t1;
-INSERT INTO t2 VALUES (1,1),(1,2),(1,3),(1,4),(1,5),(1,6),(1,7),(1,8);
-INSERT INTO t2 SELECT a + 1, b FROM t2;
-DELETE FROM t2 WHERE a = 1 AND b < 2;
-INSERT INTO t3 VALUES (1,1,1),(2,1,2);
-INSERT INTO t3 SELECT a + 2, a + 2, 3 FROM t3;
-INSERT INTO t3 SELECT a + 4, a + 4, 3 FROM t3;
-SELECT STRAIGHT_JOIN SQL_NO_CACHE t1.b, t1.a FROM t1, t3, t2 WHERE
-t3.a = t2.a AND t2.b = t1.a AND t3.b = 1 AND t3.c IN (1, 2)
-ORDER BY t1.b LIMIT 2;
-b a
-1 1
-2 2
-SELECT STRAIGHT_JOIN SQL_NO_CACHE t1.b, t1.a FROM t1, t3, t2 WHERE
-t3.a = t2.a AND t2.b = t1.a AND t3.b = 1 AND t3.c IN (1, 2)
-ORDER BY t1.b LIMIT 5;
-b a
-1 1
-2 2
-2 2
-3 3
-3 3
-DROP TABLE t1, t2, t3;
-CREATE TABLE `t1` (`id1` INT) ;
-INSERT INTO `t1` (`id1`) VALUES (1),(5),(2);
-CREATE TABLE `t2` (
-`id1` INT,
-`id2` INT NOT NULL,
-`id3` INT,
-`id4` INT NOT NULL,
-UNIQUE (`id2`,`id4`),
-KEY (`id1`)
-);
-INSERT INTO `t2`(`id1`,`id2`,`id3`,`id4`) VALUES
-(1,1,1,0),
-(1,1,2,1),
-(5,1,2,2),
-(6,1,2,3),
-(1,2,2,2),
-(1,2,1,1);
-SELECT `id1` FROM `t1` WHERE `id1` NOT IN (SELECT `id1` FROM `t2` WHERE `id2` = 1 AND `id3` = 2);
-id1
-2
-DROP TABLE t1, t2;
-create table t1 (c1 int) engine=innodb;
-handler t1 open;
-handler t1 read first;
-c1
-Before and after comparison
-0
-drop table t1;
-CREATE TABLE t1(c1 TEXT, UNIQUE (c1(1)), cnt INT DEFAULT 1)
-ENGINE=INNODB CHARACTER SET UTF8;
-INSERT INTO t1 (c1) VALUES ('1a');
-SELECT * FROM t1;
-c1 cnt
-1a 1
-INSERT INTO t1 (c1) VALUES ('1b') ON DUPLICATE KEY UPDATE cnt=cnt+1;
-SELECT * FROM t1;
-c1 cnt
-1a 2
-DROP TABLE t1;
-CREATE TABLE t1(c1 VARCHAR(2), UNIQUE (c1(1)), cnt INT DEFAULT 1)
-ENGINE=INNODB CHARACTER SET UTF8;
-INSERT INTO t1 (c1) VALUES ('1a');
-SELECT * FROM t1;
-c1 cnt
-1a 1
-INSERT INTO t1 (c1) VALUES ('1b') ON DUPLICATE KEY UPDATE cnt=cnt+1;
-SELECT * FROM t1;
-c1 cnt
-1a 2
-DROP TABLE t1;
-CREATE TABLE t1(c1 CHAR(2), UNIQUE (c1(1)), cnt INT DEFAULT 1)
-ENGINE=INNODB CHARACTER SET UTF8;
-INSERT INTO t1 (c1) VALUES ('1a');
-SELECT * FROM t1;
-c1 cnt
-1a 1
-INSERT INTO t1 (c1) VALUES ('1b') ON DUPLICATE KEY UPDATE cnt=cnt+1;
-SELECT * FROM t1;
-c1 cnt
-1a 2
-DROP TABLE t1;
-CREATE TABLE t1 (
-a1 decimal(10,0) DEFAULT NULL,
-a2 blob,
-a3 time DEFAULT NULL,
-a4 blob,
-a5 char(175) DEFAULT NULL,
-a6 timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
-a7 tinyblob,
-INDEX idx (a6,a7(239),a5)
-) ENGINE=InnoDB;
-EXPLAIN SELECT a4 FROM t1 WHERE
-a6=NULL AND
-a4='UNcT5pIde4I6c2SheTo4gt92OV1jgJCVkXmzyf325R1DwLURkbYHwhydANIZMbKTgdcR5xS';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
-EXPLAIN SELECT t1.a4 FROM t1, t1 t WHERE
-t.a6=t.a6 AND t1.a6=NULL AND
-t1.a4='UNcT5pIde4I6c2SheTo4gt92OV1jgJCVkXmzyf325R1DwLURkbYHwhydANIZMbKTgdcR5xS';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
-DROP TABLE t1;
-create table t1m (a int) engine = MEMORY;
-create table t1i (a int);
-create table t2m (a int) engine = MEMORY;
-create table t2i (a int);
-insert into t2m values (5);
-insert into t2i values (5);
-select min(a) from t1i;
-min(a)
-NULL
-select min(7) from t1i;
-min(7)
-NULL
-select min(7) from DUAL;
-min(7)
-7
-explain select min(7) from t2i join t1i;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2i ALL NULL NULL NULL NULL 1
-1 SIMPLE t1i ALL NULL NULL NULL NULL 1 Using join buffer
-select min(7) from t2i join t1i;
-min(7)
-NULL
-select max(a) from t1i;
-max(a)
-NULL
-select max(7) from t1i;
-max(7)
-NULL
-select max(7) from DUAL;
-max(7)
-7
-explain select max(7) from t2i join t1i;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2i ALL NULL NULL NULL NULL 1
-1 SIMPLE t1i ALL NULL NULL NULL NULL 1 Using join buffer
-select max(7) from t2i join t1i;
-max(7)
-NULL
-select 1, min(a) from t1i where a=99;
-1 min(a)
-1 NULL
-select 1, min(a) from t1i where 1=99;
-1 min(a)
-1 NULL
-select 1, min(1) from t1i where a=99;
-1 min(1)
-1 NULL
-select 1, min(1) from t1i where 1=99;
-1 min(1)
-1 NULL
-select 1, max(a) from t1i where a=99;
-1 max(a)
-1 NULL
-select 1, max(a) from t1i where 1=99;
-1 max(a)
-1 NULL
-select 1, max(1) from t1i where a=99;
-1 max(1)
-1 NULL
-select 1, max(1) from t1i where 1=99;
-1 max(1)
-1 NULL
-explain select count(*), min(7), max(7) from t1m, t1i;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1m system NULL NULL NULL NULL 0 const row not found
-1 SIMPLE t1i ALL NULL NULL NULL NULL 1
-select count(*), min(7), max(7) from t1m, t1i;
-count(*) min(7) max(7)
-0 NULL NULL
-explain select count(*), min(7), max(7) from t1m, t2i;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1m system NULL NULL NULL NULL 0 const row not found
-1 SIMPLE t2i ALL NULL NULL NULL NULL 1
-select count(*), min(7), max(7) from t1m, t2i;
-count(*) min(7) max(7)
-0 NULL NULL
-explain select count(*), min(7), max(7) from t2m, t1i;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2m system NULL NULL NULL NULL 1
-1 SIMPLE t1i ALL NULL NULL NULL NULL 1
-select count(*), min(7), max(7) from t2m, t1i;
-count(*) min(7) max(7)
-0 NULL NULL
-drop table t1m, t1i, t2m, t2i;
-create table t1 (
-a1 char(64), a2 char(64), b char(16), c char(16) not null, d char(16), dummy char(64) default ' '
-) ENGINE = MEMORY;
-insert into t1 (a1, a2, b, c, d) values
-('a','a','a','a111','xy1'),('a','a','a','b111','xy2'),('a','a','a','c111','xy3'),('a','a','a','d111','xy4'),
-('a','a','b','e112','xy1'),('a','a','b','f112','xy2'),('a','a','b','g112','xy3'),('a','a','b','h112','xy4'),
-('a','b','a','i121','xy1'),('a','b','a','j121','xy2'),('a','b','a','k121','xy3'),('a','b','a','l121','xy4'),
-('a','b','b','m122','xy1'),('a','b','b','n122','xy2'),('a','b','b','o122','xy3'),('a','b','b','p122','xy4'),
-('b','a','a','a211','xy1'),('b','a','a','b211','xy2'),('b','a','a','c211','xy3'),('b','a','a','d211','xy4'),
-('b','a','b','e212','xy1'),('b','a','b','f212','xy2'),('b','a','b','g212','xy3'),('b','a','b','h212','xy4'),
-('b','b','a','i221','xy1'),('b','b','a','j221','xy2'),('b','b','a','k221','xy3'),('b','b','a','l221','xy4'),
-('b','b','b','m222','xy1'),('b','b','b','n222','xy2'),('b','b','b','o222','xy3'),('b','b','b','p222','xy4'),
-('c','a','a','a311','xy1'),('c','a','a','b311','xy2'),('c','a','a','c311','xy3'),('c','a','a','d311','xy4'),
-('c','a','b','e312','xy1'),('c','a','b','f312','xy2'),('c','a','b','g312','xy3'),('c','a','b','h312','xy4'),
-('c','b','a','i321','xy1'),('c','b','a','j321','xy2'),('c','b','a','k321','xy3'),('c','b','a','l321','xy4'),
-('c','b','b','m322','xy1'),('c','b','b','n322','xy2'),('c','b','b','o322','xy3'),('c','b','b','p322','xy4'),
-('d','a','a','a411','xy1'),('d','a','a','b411','xy2'),('d','a','a','c411','xy3'),('d','a','a','d411','xy4'),
-('d','a','b','e412','xy1'),('d','a','b','f412','xy2'),('d','a','b','g412','xy3'),('d','a','b','h412','xy4'),
-('d','b','a','i421','xy1'),('d','b','a','j421','xy2'),('d','b','a','k421','xy3'),('d','b','a','l421','xy4'),
-('d','b','b','m422','xy1'),('d','b','b','n422','xy2'),('d','b','b','o422','xy3'),('d','b','b','p422','xy4'),
-('a','a','a','a111','xy1'),('a','a','a','b111','xy2'),('a','a','a','c111','xy3'),('a','a','a','d111','xy4'),
-('a','a','b','e112','xy1'),('a','a','b','f112','xy2'),('a','a','b','g112','xy3'),('a','a','b','h112','xy4'),
-('a','b','a','i121','xy1'),('a','b','a','j121','xy2'),('a','b','a','k121','xy3'),('a','b','a','l121','xy4'),
-('a','b','b','m122','xy1'),('a','b','b','n122','xy2'),('a','b','b','o122','xy3'),('a','b','b','p122','xy4'),
-('b','a','a','a211','xy1'),('b','a','a','b211','xy2'),('b','a','a','c211','xy3'),('b','a','a','d211','xy4'),
-('b','a','b','e212','xy1'),('b','a','b','f212','xy2'),('b','a','b','g212','xy3'),('b','a','b','h212','xy4'),
-('b','b','a','i221','xy1'),('b','b','a','j221','xy2'),('b','b','a','k221','xy3'),('b','b','a','l221','xy4'),
-('b','b','b','m222','xy1'),('b','b','b','n222','xy2'),('b','b','b','o222','xy3'),('b','b','b','p222','xy4'),
-('c','a','a','a311','xy1'),('c','a','a','b311','xy2'),('c','a','a','c311','xy3'),('c','a','a','d311','xy4'),
-('c','a','b','e312','xy1'),('c','a','b','f312','xy2'),('c','a','b','g312','xy3'),('c','a','b','h312','xy4'),
-('c','b','a','i321','xy1'),('c','b','a','j321','xy2'),('c','b','a','k321','xy3'),('c','b','a','l321','xy4'),
-('c','b','b','m322','xy1'),('c','b','b','n322','xy2'),('c','b','b','o322','xy3'),('c','b','b','p322','xy4'),
-('d','a','a','a411','xy1'),('d','a','a','b411','xy2'),('d','a','a','c411','xy3'),('d','a','a','d411','xy4'),
-('d','a','b','e412','xy1'),('d','a','b','f412','xy2'),('d','a','b','g412','xy3'),('d','a','b','h412','xy4'),
-('d','b','a','i421','xy1'),('d','b','a','j421','xy2'),('d','b','a','k421','xy3'),('d','b','a','l421','xy4'),
-('d','b','b','m422','xy1'),('d','b','b','n422','xy2'),('d','b','b','o422','xy3'),('d','b','b','p422','xy4');
-create table t4 (
-pk_col int auto_increment primary key, a1 char(64), a2 char(64), b char(16), c char(16) not null, d char(16), dummy char(64) default ' '
-);
-insert into t4 (a1, a2, b, c, d, dummy) select * from t1;
-create index idx12672_0 on t4 (a1);
-create index idx12672_1 on t4 (a1,a2,b,c);
-create index idx12672_2 on t4 (a1,a2,b);
-analyze table t4;
-Table Op Msg_type Msg_text
-test.t4 analyze status OK
-select distinct a1 from t4 where pk_col not in (1,2,3,4);
-a1
-a
-b
-c
-d
-drop table t1,t4;
-DROP TABLE IF EXISTS t2, t1;
-CREATE TABLE t1 (i INT NOT NULL PRIMARY KEY) ENGINE= InnoDB;
-CREATE TABLE t2 (
-i INT NOT NULL,
-FOREIGN KEY (i) REFERENCES t1 (i) ON DELETE NO ACTION
-) ENGINE= InnoDB;
-INSERT INTO t1 VALUES (1);
-INSERT INTO t2 VALUES (1);
-DELETE IGNORE FROM t1 WHERE i = 1;
-Warnings:
-Error 1451 Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`i`) REFERENCES `t1` (`i`) ON DELETE NO ACTION)
-SELECT * FROM t1, t2;
-i i
-1 1
-DROP TABLE t2, t1;
-End of 4.1 tests.
-create table t1 (
-a varchar(30), b varchar(30), primary key(a), key(b)
-);
-select distinct a from t1;
-a
-drop table t1;
-create table t1(a int, key(a));
-insert into t1 values(1);
-select a, count(a) from t1 group by a with rollup;
-a count(a)
-1 1
-NULL 1
-drop table t1;
-create table t1 (f1 int, f2 char(1), primary key(f1,f2));
-insert into t1 values ( 1,"e"),(2,"a"),( 3,"c"),(4,"d");
-alter table t1 drop primary key, add primary key (f2, f1);
-explain select distinct f1 a, f1 b from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL PRIMARY 5 NULL 4 Using index; Using temporary
-explain select distinct f1, f2 from t1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range NULL PRIMARY 5 NULL 3 Using index for group-by; Using temporary
-drop table t1;
-CREATE TABLE t1 (id int(11) NOT NULL PRIMARY KEY, name varchar(20),
-INDEX (name));
-CREATE TABLE t2 (id int(11) NOT NULL PRIMARY KEY, fkey int(11));
-ALTER TABLE t2 ADD FOREIGN KEY (fkey) REFERENCES t2(id);
-INSERT INTO t1 VALUES (1,'A1'),(2,'A2'),(3,'B');
-INSERT INTO t2 VALUES (1,1),(2,2),(3,2),(4,3),(5,3);
-EXPLAIN
-SELECT COUNT(*) FROM t2 LEFT JOIN t1 ON t2.fkey = t1.id
-WHERE t1.name LIKE 'A%';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index PRIMARY,name name 23 NULL 3 Using where; Using index
-1 SIMPLE t2 ref fkey fkey 5 test.t1.id 1 Using where; Using index
-EXPLAIN
-SELECT COUNT(*) FROM t2 LEFT JOIN t1 ON t2.fkey = t1.id
-WHERE t1.name LIKE 'A%' OR FALSE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 index NULL fkey 5 NULL 5 Using index
-1 SIMPLE t1 eq_ref PRIMARY PRIMARY 4 test.t2.fkey 1 Using where
-DROP TABLE t1,t2;
-CREATE TABLE t1 (
-id int NOT NULL,
-name varchar(20) NOT NULL,
-dept varchar(20) NOT NULL,
-age tinyint(3) unsigned NOT NULL,
-PRIMARY KEY (id),
-INDEX (name,dept)
-) ENGINE=InnoDB;
-INSERT INTO t1(id, dept, age, name) VALUES
-(3987, 'cs1', 10, 'rs1'), (3988, 'cs2', 20, 'rs1'), (3995, 'cs3', 10, 'rs2'),
-(3996, 'cs4', 20, 'rs2'), (4003, 'cs5', 10, 'rs3'), (4004, 'cs6', 20, 'rs3'),
-(4011, 'cs7', 10, 'rs4'), (4012, 'cs8', 20, 'rs4'), (4019, 'cs9', 10, 'rs5'),
-(4020, 'cs10', 20, 'rs5'),(4027, 'cs11', 10, 'rs6'),(4028, 'cs12', 20, 'rs6');
-EXPLAIN SELECT DISTINCT t1.name, t1.dept FROM t1 WHERE t1.name='rs5';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range name name 44 NULL 2 Using where; Using index for group-by
-SELECT DISTINCT t1.name, t1.dept FROM t1 WHERE t1.name='rs5';
-name dept
-rs5 cs10
-rs5 cs9
-DELETE FROM t1;
-# Masking (#) number in "rows" column of the following EXPLAIN output, as it may vary (bug#47746).
-EXPLAIN SELECT DISTINCT t1.name, t1.dept FROM t1 WHERE t1.name='rs5';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range name name 44 NULL # Using where; Using index for group-by
-SELECT DISTINCT t1.name, t1.dept FROM t1 WHERE t1.name='rs5';
-name dept
-DROP TABLE t1;
-drop table if exists t1;
-show variables like 'innodb_rollback_on_timeout';
-Variable_name Value
-innodb_rollback_on_timeout OFF
-create table t1 (a int unsigned not null primary key) engine = innodb;
-insert into t1 values (1);
-commit;
-begin work;
-insert into t1 values (2);
-select * from t1;
-a
-1
-2
-begin work;
-insert into t1 values (5);
-select * from t1;
-a
-1
-5
-insert into t1 values (2);
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-select * from t1;
-a
-1
-5
-commit;
-select * from t1;
-a
-1
-2
-commit;
-select * from t1;
-a
-1
-2
-5
-drop table t1;
-set @save_qcache_size=@@global.query_cache_size;
-set @save_qcache_type=@@global.query_cache_type;
-set global query_cache_size=10*1024*1024;
-set global query_cache_type=1;
-drop table if exists `test`;
-Warnings:
-Note 1051 Unknown table 'test'
-CREATE TABLE `test` (`test1` varchar(3) NOT NULL,
-`test2` varchar(4) NOT NULL,PRIMARY KEY (`test1`))
-ENGINE=InnoDB DEFAULT CHARSET=latin1;
-INSERT INTO `test` (`test1`, `test2`) VALUES ('tes', '5678');
-select * from test;
-test1 test2
-tes 5678
-INSERT INTO `test` (`test1`, `test2`) VALUES ('tes', '1234')
-ON DUPLICATE KEY UPDATE `test2` = '1234';
-select * from test;
-test1 test2
-tes 1234
-flush tables;
-select * from test;
-test1 test2
-tes 1234
-drop table test;
-set global query_cache_type=@save_qcache_type;
-set global query_cache_size=@save_qcache_size;
-drop table if exists t1;
-show variables like 'innodb_rollback_on_timeout';
-Variable_name Value
-innodb_rollback_on_timeout OFF
-create table t1 (a int unsigned not null primary key) engine = innodb;
-insert into t1 values (1);
-commit;
-begin work;
-insert into t1 values (2);
-select * from t1;
-a
-1
-2
-begin work;
-insert into t1 values (5);
-select * from t1;
-a
-1
-5
-insert into t1 values (2);
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-select * from t1;
-a
-1
-5
-commit;
-select * from t1;
-a
-1
-2
-commit;
-select * from t1;
-a
-1
-2
-5
-drop table t1;
-create table t1(
-id int auto_increment,
-c char(1) not null,
-counter int not null default 1,
-primary key (id),
-unique key (c)
-) engine=innodb;
-insert into t1 (id, c) values
-(NULL, 'a'),
-(NULL, 'a')
-on duplicate key update id = values(id), counter = counter + 1;
-select * from t1;
-id c counter
-2 a 2
-insert into t1 (id, c) values
-(NULL, 'b')
-on duplicate key update id = values(id), counter = counter + 1;
-select * from t1;
-id c counter
-2 a 2
-3 b 1
-truncate table t1;
-insert into t1 (id, c) values (NULL, 'a');
-select * from t1;
-id c counter
-1 a 1
-insert into t1 (id, c) values (NULL, 'b'), (NULL, 'b')
-on duplicate key update id = values(id), c = values(c), counter = counter + 1;
-select * from t1;
-id c counter
-1 a 1
-3 b 2
-insert into t1 (id, c) values (NULL, 'a')
-on duplicate key update id = values(id), c = values(c), counter = counter + 1;
-select * from t1;
-id c counter
-3 b 2
-4 a 2
-drop table t1;
-CREATE TABLE t1(
-id int AUTO_INCREMENT PRIMARY KEY,
-stat_id int NOT NULL,
-acct_id int DEFAULT NULL,
-INDEX idx1 (stat_id, acct_id),
-INDEX idx2 (acct_id)
-) ENGINE=MyISAM;
-CREATE TABLE t2(
-id int AUTO_INCREMENT PRIMARY KEY,
-stat_id int NOT NULL,
-acct_id int DEFAULT NULL,
-INDEX idx1 (stat_id, acct_id),
-INDEX idx2 (acct_id)
-) ENGINE=InnoDB;
-INSERT INTO t1(stat_id,acct_id) VALUES
-(1,759), (2,831), (3,785), (4,854), (1,921),
-(1,553), (2,589), (3,743), (2,827), (2,545),
-(4,779), (4,783), (1,597), (1,785), (4,832),
-(1,741), (1,833), (3,788), (2,973), (1,907);
-INSERT INTO t1(stat_id,acct_id) SELECT stat_id, mod(id+100000, acct_id) FROM t1;
-INSERT INTO t1(stat_id,acct_id) SELECT stat_id, mod(id+100000, acct_id) FROM t1;
-INSERT INTO t1(stat_id,acct_id) SELECT stat_id, mod(id+100000, acct_id) FROM t1;
-INSERT INTO t1(stat_id,acct_id) SELECT stat_id, mod(id+100000, acct_id) FROM t1;
-INSERT INTO t1(stat_id,acct_id) SELECT stat_id, mod(id+100000, acct_id) FROM t1;
-INSERT INTO t1(stat_id,acct_id) SELECT stat_id, mod(id+100000, acct_id) FROM t1;
-INSERT INTO t1(stat_id,acct_id) SELECT stat_id, mod(id+100000, acct_id) FROM t1;
-INSERT INTO t1(stat_id,acct_id) SELECT stat_id, mod(id+100000, acct_id) FROM t1;
-INSERT INTO t1(stat_id,acct_id) SELECT stat_id, mod(id+100000, acct_id) FROM t1;
-INSERT INTO t1(stat_id,acct_id) SELECT stat_id, mod(id+100000, acct_id) FROM t1;
-INSERT INTO t1(stat_id,acct_id) SELECT stat_id, mod(id+100000, acct_id) FROM t1;
-UPDATE t1 SET acct_id=785
-WHERE MOD(stat_id,2)=0 AND MOD(id,stat_id)=MOD(acct_id,stat_id);
-OPTIMIZE TABLE t1;
-Table Op Msg_type Msg_text
-test.t1 optimize status OK
-SELECT COUNT(*) FROM t1;
-COUNT(*)
-40960
-SELECT COUNT(*) FROM t1 WHERE acct_id=785;
-COUNT(*)
-8702
-EXPLAIN SELECT COUNT(*) FROM t1 WHERE stat_id IN (1,3) AND acct_id=785;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 range idx1,idx2 idx1 9 NULL 2 Using where; Using index
-INSERT INTO t2 SELECT * FROM t1;
-OPTIMIZE TABLE t2;
-Table Op Msg_type Msg_text
-test.t2 optimize note Table does not support optimize, doing recreate + analyze instead
-test.t2 optimize status OK
-EXPLAIN SELECT COUNT(*) FROM t2 WHERE stat_id IN (1,3) AND acct_id=785;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 range idx1,idx2 idx1 9 NULL 2 Using where; Using index
-DROP TABLE t1,t2;
-create table t1(a int) engine=innodb;
-alter table t1 comment '123';
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `a` int(11) DEFAULT NULL
-) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='123'
-drop table t1;
-CREATE TABLE t1 (a CHAR(2), KEY (a)) ENGINE = InnoDB DEFAULT CHARSET=UTF8;
-INSERT INTO t1 VALUES ('uk'),('bg');
-SELECT * FROM t1 WHERE a = 'uk';
-a
-uk
-DELETE FROM t1 WHERE a = 'uk';
-SELECT * FROM t1 WHERE a = 'uk';
-a
-UPDATE t1 SET a = 'us' WHERE a = 'uk';
-SELECT * FROM t1 WHERE a = 'uk';
-a
-CREATE TABLE t2 (a CHAR(2), KEY (a)) ENGINE = InnoDB;
-INSERT INTO t2 VALUES ('uk'),('bg');
-SELECT * FROM t2 WHERE a = 'uk';
-a
-uk
-DELETE FROM t2 WHERE a = 'uk';
-SELECT * FROM t2 WHERE a = 'uk';
-a
-INSERT INTO t2 VALUES ('uk');
-UPDATE t2 SET a = 'us' WHERE a = 'uk';
-SELECT * FROM t2 WHERE a = 'uk';
-a
-CREATE TABLE t3 (a CHAR(2), KEY (a)) ENGINE = MyISAM;
-INSERT INTO t3 VALUES ('uk'),('bg');
-SELECT * FROM t3 WHERE a = 'uk';
-a
-uk
-DELETE FROM t3 WHERE a = 'uk';
-SELECT * FROM t3 WHERE a = 'uk';
-a
-INSERT INTO t3 VALUES ('uk');
-UPDATE t3 SET a = 'us' WHERE a = 'uk';
-SELECT * FROM t3 WHERE a = 'uk';
-a
-DROP TABLE t1,t2,t3;
-create table t1 (a int) engine=innodb;
-select * from bug29807;
-ERROR 42S02: Table 'test.bug29807' doesn't exist
-drop table t1;
-drop table bug29807;
-ERROR 42S02: Unknown table 'bug29807'
-create table bug29807 (a int);
-drop table bug29807;
-CREATE TABLE t1 (a INT) ENGINE=InnoDB;
-CREATE TABLE t2 (a INT) ENGINE=InnoDB;
-switch to connection c1
-SET AUTOCOMMIT=0;
-INSERT INTO t2 VALUES (1);
-switch to connection c2
-SET AUTOCOMMIT=0;
-LOCK TABLES t1 READ, t2 READ;
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-switch to connection c1
-COMMIT;
-INSERT INTO t1 VALUES (1);
-switch to connection default
-SET AUTOCOMMIT=default;
-DROP TABLE t1,t2;
-CREATE TABLE t1 (
-id int NOT NULL auto_increment PRIMARY KEY,
-b int NOT NULL,
-c datetime NOT NULL,
-INDEX idx_b(b),
-INDEX idx_c(c)
-) ENGINE=InnoDB;
-CREATE TABLE t2 (
-b int NOT NULL auto_increment PRIMARY KEY,
-c datetime NOT NULL
-) ENGINE= MyISAM;
-INSERT INTO t2(c) VALUES ('2007-01-01');
-INSERT INTO t2(c) SELECT c FROM t2;
-INSERT INTO t2(c) SELECT c FROM t2;
-INSERT INTO t2(c) SELECT c FROM t2;
-INSERT INTO t2(c) SELECT c FROM t2;
-INSERT INTO t2(c) SELECT c FROM t2;
-INSERT INTO t2(c) SELECT c FROM t2;
-INSERT INTO t2(c) SELECT c FROM t2;
-INSERT INTO t2(c) SELECT c FROM t2;
-INSERT INTO t2(c) SELECT c FROM t2;
-INSERT INTO t2(c) SELECT c FROM t2;
-INSERT INTO t1(b,c) SELECT b,c FROM t2;
-UPDATE t2 SET c='2007-01-02';
-INSERT INTO t1(b,c) SELECT b,c FROM t2;
-UPDATE t2 SET c='2007-01-03';
-INSERT INTO t1(b,c) SELECT b,c FROM t2;
-set @@sort_buffer_size=8192;
-Warnings:
-Warning 1292 Truncated incorrect sort_buffer_size value: '8192'
-SELECT COUNT(*) FROM t1;
-COUNT(*)
-3072
-EXPLAIN
-SELECT COUNT(*) FROM t1
-WHERE (c >= '2007-01-02' AND c <= '2007-01-03') OR b >= 1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL idx_b,idx_c NULL NULL NULL # Using where
-SELECT COUNT(*) FROM t1
-WHERE (c >= '2007-01-02' AND c <= '2007-01-03') OR b >= 1;
-COUNT(*)
-3072
-EXPLAIN
-SELECT COUNT(*) FROM t1 FORCE INDEX(idx_b, idx_c)
-WHERE (c >= '2007-01-02' AND c <= '2007-01-03') OR b >= 1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index_merge idx_b,idx_c idx_c,idx_b 8,4 NULL # Using sort_union(idx_c,idx_b); Using where
-SELECT COUNT(*) FROM t1 FORCE INDEX(idx_b, idx_c)
-WHERE (c >= '2007-01-02' AND c <= '2007-01-03') OR b >= 1;
-COUNT(*)
-3072
-set @@sort_buffer_size=default;
-DROP TABLE t1,t2;
-CREATE TABLE t1 (a int, b int);
-insert into t1 values (1,1),(1,2);
-CREATE TABLE t2 (primary key (a)) select * from t1;
-ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
-drop table if exists t2;
-Warnings:
-Note 1051 Unknown table 't2'
-CREATE TEMPORARY TABLE t2 (primary key (a)) select * from t1;
-ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
-drop table if exists t2;
-Warnings:
-Note 1051 Unknown table 't2'
-CREATE TABLE t2 (a int, b int, primary key (a));
-BEGIN;
-INSERT INTO t2 values(100,100);
-CREATE TABLE IF NOT EXISTS t2 (primary key (a)) select * from t1;
-ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
-SELECT * from t2;
-a b
-100 100
-ROLLBACK;
-SELECT * from t2;
-a b
-100 100
-TRUNCATE table t2;
-INSERT INTO t2 select * from t1;
-ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
-SELECT * from t2;
-a b
-drop table t2;
-CREATE TEMPORARY TABLE t2 (a int, b int, primary key (a));
-BEGIN;
-INSERT INTO t2 values(100,100);
-CREATE TEMPORARY TABLE IF NOT EXISTS t2 (primary key (a)) select * from t1;
-ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
-SELECT * from t2;
-a b
-100 100
-COMMIT;
-BEGIN;
-INSERT INTO t2 values(101,101);
-CREATE TEMPORARY TABLE IF NOT EXISTS t2 (primary key (a)) select * from t1;
-ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
-SELECT * from t2;
-a b
-100 100
-101 101
-ROLLBACK;
-SELECT * from t2;
-a b
-100 100
-TRUNCATE table t2;
-INSERT INTO t2 select * from t1;
-ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
-SELECT * from t2;
-a b
-drop table t1,t2;
-create table t1(f1 varchar(800) binary not null, key(f1))
-character set utf8 collate utf8_general_ci;
-Warnings:
-Warning 1071 Specified key was too long; max key length is 767 bytes
-insert into t1 values('aaa');
-drop table t1;
-CREATE TABLE t1 (a INT PRIMARY KEY, b INT, c FLOAT, KEY b(b)) ENGINE = INNODB;
-INSERT INTO t1 VALUES ( 1 , 1 , 1);
-INSERT INTO t1 SELECT a + 1 , MOD(a + 1 , 20), 1 FROM t1;
-INSERT INTO t1 SELECT a + 2 , MOD(a + 2 , 20), 1 FROM t1;
-INSERT INTO t1 SELECT a + 4 , MOD(a + 4 , 20), 1 FROM t1;
-INSERT INTO t1 SELECT a + 8 , MOD(a + 8 , 20), 1 FROM t1;
-INSERT INTO t1 SELECT a + 16, MOD(a + 16, 20), 1 FROM t1;
-INSERT INTO t1 SELECT a + 32, MOD(a + 32, 20), 1 FROM t1;
-INSERT INTO t1 SELECT a + 64, MOD(a + 64, 20), 1 FROM t1;
-EXPLAIN SELECT b, SUM(c) FROM t1 GROUP BY b;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL b 5 NULL 128
-EXPLAIN SELECT SQL_BIG_RESULT b, SUM(c) FROM t1 GROUP BY b;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 128 Using filesort
-DROP TABLE t1;
-drop table if exists t1;
-show variables like 'innodb_rollback_on_timeout';
-Variable_name Value
-innodb_rollback_on_timeout OFF
-create table t1 (a int unsigned not null primary key) engine = innodb;
-insert into t1 values (1);
-commit;
-begin work;
-insert into t1 values (2);
-select * from t1;
-a
-1
-2
-begin work;
-insert into t1 values (5);
-select * from t1;
-a
-1
-5
-insert into t1 values (2);
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-select * from t1;
-a
-1
-5
-commit;
-select * from t1;
-a
-1
-2
-commit;
-select * from t1;
-a
-1
-2
-5
-drop table t1;
-drop table if exists t1;
-create table t1 (a int) engine=innodb;
-alter table t1 alter a set default 1;
-drop table t1;
-
-Bug#24918 drop table and lock / inconsistent between
-perm and temp tables
-
-Check transactional tables under LOCK TABLES
-
-drop table if exists t24918, t24918_tmp, t24918_trans, t24918_trans_tmp,
-t24918_access;
-create table t24918_access (id int);
-create table t24918 (id int) engine=myisam;
-create temporary table t24918_tmp (id int) engine=myisam;
-create table t24918_trans (id int) engine=innodb;
-create temporary table t24918_trans_tmp (id int) engine=innodb;
-lock table t24918 write, t24918_tmp write, t24918_trans write, t24918_trans_tmp write;
-drop table t24918;
-select * from t24918_access;
-ERROR HY000: Table 't24918_access' was not locked with LOCK TABLES
-drop table t24918_trans;
-select * from t24918_access;
-ERROR HY000: Table 't24918_access' was not locked with LOCK TABLES
-drop table t24918_trans_tmp;
-select * from t24918_access;
-ERROR HY000: Table 't24918_access' was not locked with LOCK TABLES
-drop table t24918_tmp;
-select * from t24918_access;
-ERROR HY000: Table 't24918_access' was not locked with LOCK TABLES
-unlock tables;
-drop table t24918_access;
-CREATE TABLE t1 (a int, b int, PRIMARY KEY (a), KEY bkey (b)) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,2),(3,2),(2,2),(4,2),(5,2),(6,2),(7,2),(8,2);
-INSERT INTO t1 SELECT a + 8, 2 FROM t1;
-INSERT INTO t1 SELECT a + 16, 1 FROM t1;
-EXPLAIN SELECT * FROM t1 WHERE b=2 ORDER BY a;
-id 1
-select_type SIMPLE
-table t1
-type ref
-possible_keys bkey
-key bkey
-key_len 5
-ref const
-rows 16
-Extra Using where; Using index
-SELECT * FROM t1 WHERE b=2 ORDER BY a;
-a b
-1 2
-2 2
-3 2
-4 2
-5 2
-6 2
-7 2
-8 2
-9 2
-10 2
-11 2
-12 2
-13 2
-14 2
-15 2
-16 2
-EXPLAIN SELECT * FROM t1 WHERE b BETWEEN 1 AND 2 ORDER BY a;
-id 1
-select_type SIMPLE
-table t1
-type range
-possible_keys bkey
-key bkey
-key_len 5
-ref NULL
-rows 16
-Extra Using where; Using index; Using filesort
-SELECT * FROM t1 WHERE b BETWEEN 1 AND 2 ORDER BY a;
-a b
-1 2
-2 2
-3 2
-4 2
-5 2
-6 2
-7 2
-8 2
-9 2
-10 2
-11 2
-12 2
-13 2
-14 2
-15 2
-16 2
-17 1
-18 1
-19 1
-20 1
-21 1
-22 1
-23 1
-24 1
-25 1
-26 1
-27 1
-28 1
-29 1
-30 1
-31 1
-32 1
-EXPLAIN SELECT * FROM t1 WHERE b BETWEEN 1 AND 2 ORDER BY b,a;
-id 1
-select_type SIMPLE
-table t1
-type range
-possible_keys bkey
-key bkey
-key_len 5
-ref NULL
-rows 16
-Extra Using where; Using index
-SELECT * FROM t1 WHERE b BETWEEN 1 AND 2 ORDER BY b,a;
-a b
-17 1
-18 1
-19 1
-20 1
-21 1
-22 1
-23 1
-24 1
-25 1
-26 1
-27 1
-28 1
-29 1
-30 1
-31 1
-32 1
-1 2
-2 2
-3 2
-4 2
-5 2
-6 2
-7 2
-8 2
-9 2
-10 2
-11 2
-12 2
-13 2
-14 2
-15 2
-16 2
-CREATE TABLE t2 (a int, b int, c int, PRIMARY KEY (a), KEY bkey (b,c))
-ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,1,1),(3,1,1),(2,1,1),(4,1,1);
-INSERT INTO t2 SELECT a + 4, 1, 1 FROM t2;
-INSERT INTO t2 SELECT a + 8, 1, 1 FROM t2;
-EXPLAIN SELECT * FROM t2 WHERE b=1 ORDER BY a;
-id 1
-select_type SIMPLE
-table t2
-type ref
-possible_keys bkey
-key bkey
-key_len 5
-ref const
-rows 8
-Extra Using where; Using index; Using filesort
-SELECT * FROM t2 WHERE b=1 ORDER BY a;
-a b c
-1 1 1
-2 1 1
-3 1 1
-4 1 1
-5 1 1
-6 1 1
-7 1 1
-8 1 1
-9 1 1
-10 1 1
-11 1 1
-12 1 1
-13 1 1
-14 1 1
-15 1 1
-16 1 1
-EXPLAIN SELECT * FROM t2 WHERE b=1 AND c=1 ORDER BY a;
-id 1
-select_type SIMPLE
-table t2
-type ref
-possible_keys bkey
-key bkey
-key_len 10
-ref const,const
-rows 8
-Extra Using where; Using index
-SELECT * FROM t2 WHERE b=1 AND c=1 ORDER BY a;
-a b c
-1 1 1
-2 1 1
-3 1 1
-4 1 1
-5 1 1
-6 1 1
-7 1 1
-8 1 1
-9 1 1
-10 1 1
-11 1 1
-12 1 1
-13 1 1
-14 1 1
-15 1 1
-16 1 1
-EXPLAIN SELECT * FROM t2 WHERE b=1 AND c=1 ORDER BY b,c,a;
-id 1
-select_type SIMPLE
-table t2
-type ref
-possible_keys bkey
-key bkey
-key_len 10
-ref const,const
-rows 8
-Extra Using where; Using index
-SELECT * FROM t2 WHERE b=1 AND c=1 ORDER BY b,c,a;
-a b c
-1 1 1
-2 1 1
-3 1 1
-4 1 1
-5 1 1
-6 1 1
-7 1 1
-8 1 1
-9 1 1
-10 1 1
-11 1 1
-12 1 1
-13 1 1
-14 1 1
-15 1 1
-16 1 1
-EXPLAIN SELECT * FROM t2 WHERE b=1 AND c=1 ORDER BY c,a;
-id 1
-select_type SIMPLE
-table t2
-type ref
-possible_keys bkey
-key bkey
-key_len 10
-ref const,const
-rows 8
-Extra Using where; Using index
-SELECT * FROM t2 WHERE b=1 AND c=1 ORDER BY c,a;
-a b c
-1 1 1
-2 1 1
-3 1 1
-4 1 1
-5 1 1
-6 1 1
-7 1 1
-8 1 1
-9 1 1
-10 1 1
-11 1 1
-12 1 1
-13 1 1
-14 1 1
-15 1 1
-16 1 1
-DROP TABLE t1,t2;
-CREATE TABLE t1 (a INT, PRIMARY KEY (a)) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1),(2),(3),(4),(5),(6),(7),(8);
-INSERT INTO t1 SELECT a + 8 FROM t1;
-INSERT INTO t1 SELECT a + 16 FROM t1;
-CREATE PROCEDURE p1 ()
-BEGIN
-DECLARE i INT DEFAULT 50;
-DECLARE cnt INT;
-# Continue even in the presence of ER_LOCK_DEADLOCK.
-DECLARE CONTINUE HANDLER FOR 1213 BEGIN END;
-START TRANSACTION;
-ALTER TABLE t1 ENGINE=InnoDB;
-COMMIT;
-START TRANSACTION;
-WHILE (i > 0) DO
-SET i = i - 1;
-SELECT COUNT(*) INTO cnt FROM t1 LOCK IN SHARE MODE;
-END WHILE;
-COMMIT;
-END;|
-CALL p1();
-CALL p1();
-CALL p1();
-DROP PROCEDURE p1;
-DROP TABLE t1;
-create table t1(a text) engine=innodb default charset=utf8;
-insert into t1 values('aaa');
-alter table t1 add index(a(1024));
-Warnings:
-Warning 1071 Specified key was too long; max key length is 767 bytes
-Warning 1071 Specified key was too long; max key length is 767 bytes
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `a` text,
- KEY `a` (`a`(255))
-) ENGINE=InnoDB DEFAULT CHARSET=utf8
-drop table t1;
-CREATE TABLE t1 (
-a INT,
-b INT,
-KEY (b)
-) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,10), (2,10), (2,20), (3,30);
-START TRANSACTION;
-SELECT * FROM t1 WHERE b=20 FOR UPDATE;
-a b
-2 20
-START TRANSACTION;
-SELECT * FROM t1 WHERE b=10 ORDER BY A FOR UPDATE;
-a b
-1 10
-2 10
-ROLLBACK;
-ROLLBACK;
-DROP TABLE t1;
-CREATE TABLE t1(
-a INT,
-b INT NOT NULL,
-c INT NOT NULL,
-d INT,
-UNIQUE KEY (c,b)
-) engine=innodb;
-INSERT INTO t1 VALUES (1,1,1,50), (1,2,3,40), (2,1,3,4);
-EXPLAIN SELECT c,b,d FROM t1 GROUP BY c,b,d;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using filesort
-SELECT c,b,d FROM t1 GROUP BY c,b,d;
-c b d
-1 1 50
-3 1 4
-3 2 40
-EXPLAIN SELECT c,b,d FROM t1 GROUP BY c,b,d ORDER BY NULL;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3
-SELECT c,b,d FROM t1 GROUP BY c,b,d ORDER BY NULL;
-c b d
-1 1 50
-3 1 4
-3 2 40
-EXPLAIN SELECT c,b,d FROM t1 ORDER BY c,b,d;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using filesort
-SELECT c,b,d FROM t1 ORDER BY c,b,d;
-c b d
-1 1 50
-3 1 4
-3 2 40
-EXPLAIN SELECT c,b,d FROM t1 GROUP BY c,b;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL c 8 NULL 3
-SELECT c,b,d FROM t1 GROUP BY c,b;
-c b d
-1 1 50
-3 1 4
-3 2 40
-EXPLAIN SELECT c,b FROM t1 GROUP BY c,b;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL c 8 NULL 3 Using index
-SELECT c,b FROM t1 GROUP BY c,b;
-c b
-1 1
-3 1
-3 2
-DROP TABLE t1;
-CREATE TABLE t1 (a INT, b INT, PRIMARY KEY (a), INDEX b (b)) ENGINE=InnoDB;
-INSERT INTO t1(a,b) VALUES (1,1), (2,2), (3,2);
-EXPLAIN SELECT * FROM t1 WHERE b=2 ORDER BY a ASC;
-id 1
-select_type SIMPLE
-table t1
-type ref
-possible_keys b
-key b
-key_len 5
-ref const
-rows 1
-Extra Using where; Using index
-SELECT * FROM t1 WHERE b=2 ORDER BY a ASC;
-a b
-2 2
-3 2
-EXPLAIN SELECT * FROM t1 WHERE b=2 ORDER BY a DESC;
-id 1
-select_type SIMPLE
-table t1
-type ref
-possible_keys b
-key b
-key_len 5
-ref const
-rows 1
-Extra Using where; Using index
-SELECT * FROM t1 WHERE b=2 ORDER BY a DESC;
-a b
-3 2
-2 2
-EXPLAIN SELECT * FROM t1 ORDER BY b ASC, a ASC;
-id 1
-select_type SIMPLE
-table t1
-type index
-possible_keys NULL
-key b
-key_len 5
-ref NULL
-rows 3
-Extra Using index
-SELECT * FROM t1 ORDER BY b ASC, a ASC;
-a b
-1 1
-2 2
-3 2
-EXPLAIN SELECT * FROM t1 ORDER BY b DESC, a DESC;
-id 1
-select_type SIMPLE
-table t1
-type index
-possible_keys NULL
-key b
-key_len 5
-ref NULL
-rows 3
-Extra Using index
-SELECT * FROM t1 ORDER BY b DESC, a DESC;
-a b
-3 2
-2 2
-1 1
-EXPLAIN SELECT * FROM t1 ORDER BY b ASC, a DESC;
-id 1
-select_type SIMPLE
-table t1
-type index
-possible_keys NULL
-key b
-key_len 5
-ref NULL
-rows 3
-Extra Using index; Using filesort
-SELECT * FROM t1 ORDER BY b ASC, a DESC;
-a b
-1 1
-3 2
-2 2
-EXPLAIN SELECT * FROM t1 ORDER BY b DESC, a ASC;
-id 1
-select_type SIMPLE
-table t1
-type index
-possible_keys NULL
-key b
-key_len 5
-ref NULL
-rows 3
-Extra Using index; Using filesort
-SELECT * FROM t1 ORDER BY b DESC, a ASC;
-a b
-2 2
-3 2
-1 1
-DROP TABLE t1;
-
-#
-# Bug#27610: ALTER TABLE ROW_FORMAT=... does not rebuild the table.
-#
-
-# - prepare;
-
-DROP TABLE IF EXISTS t1;
-
-CREATE TABLE t1(c INT)
-ENGINE = InnoDB
-ROW_FORMAT = COMPACT;
-
-# - initial check;
-
-SELECT table_schema, table_name, row_format
-FROM INFORMATION_SCHEMA.TABLES
-WHERE table_schema = DATABASE() AND table_name = 't1';
-table_schema table_name row_format
-test t1 Compact
-
-# - change ROW_FORMAT and check;
-
-ALTER TABLE t1 ROW_FORMAT = REDUNDANT;
-
-SELECT table_schema, table_name, row_format
-FROM INFORMATION_SCHEMA.TABLES
-WHERE table_schema = DATABASE() AND table_name = 't1';
-table_schema table_name row_format
-test t1 Redundant
-
-# - that's it, cleanup.
-
-DROP TABLE t1;
-create table t1(a char(10) not null, unique key aa(a(1)),
-b char(4) not null, unique key bb(b(4))) engine=innodb;
-desc t1;
-Field Type Null Key Default Extra
-a char(10) NO UNI NULL
-b char(4) NO PRI NULL
-show create table t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `a` char(10) NOT NULL,
- `b` char(4) NOT NULL,
- UNIQUE KEY `bb` (`b`),
- UNIQUE KEY `aa` (`a`(1))
-) ENGINE=InnoDB DEFAULT CHARSET=latin1
-drop table t1;
-CREATE TABLE t1 (id int, type char(6), d int, INDEX idx(id,d)) ENGINE=InnoDB;
-INSERT INTO t1 VALUES
-(191, 'member', 1), (NULL, 'member', 3), (NULL, 'member', 4), (201, 'member', 2);
-EXPLAIN SELECT * FROM t1 WHERE id=191 OR id IS NULL ORDER BY d;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ALL idx NULL NULL NULL 4 Using where; Using filesort
-SELECT * FROM t1 WHERE id=191 OR id IS NULL ORDER BY d;
-id type d
-191 member 1
-NULL member 3
-NULL member 4
-DROP TABLE t1;
-set @my_innodb_autoextend_increment=@@global.innodb_autoextend_increment;
-set global innodb_autoextend_increment=8;
-set global innodb_autoextend_increment=@my_innodb_autoextend_increment;
-set @my_innodb_commit_concurrency=@@global.innodb_commit_concurrency;
-set global innodb_commit_concurrency=0;
-set global innodb_commit_concurrency=@my_innodb_commit_concurrency;
-CREATE TABLE t1 (a int, b int, c int, PRIMARY KEY (a), KEY t1_b (b))
-ENGINE=InnoDB;
-INSERT INTO t1 (a,b,c) VALUES (1,1,1), (2,1,1), (3,1,1), (4,1,1);
-INSERT INTO t1 (a,b,c) SELECT a+4,b,c FROM t1;
-EXPLAIN SELECT a, b, c FROM t1 WHERE b = 1 ORDER BY a DESC LIMIT 5;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index t1_b PRIMARY 4 NULL 8 Using where
-SELECT a, b, c FROM t1 WHERE b = 1 ORDER BY a DESC LIMIT 5;
-a b c
-8 1 1
-7 1 1
-6 1 1
-5 1 1
-4 1 1
-DROP TABLE t1;
-DROP TABLE IF EXISTS t1;
-CREATE TABLE t1 (a char(50)) ENGINE=InnoDB;
-CREATE INDEX i1 on t1 (a(3));
-SELECT * FROM t1 WHERE a = 'abcde';
-a
-DROP TABLE t1;
-#
-# BUG #26288: savepoint are not deleted on comit, if the transaction
-# was otherwise empty
-#
-BEGIN;
-SAVEPOINT s1;
-COMMIT;
-RELEASE SAVEPOINT s1;
-ERROR 42000: SAVEPOINT s1 does not exist
-BEGIN;
-SAVEPOINT s2;
-COMMIT;
-ROLLBACK TO SAVEPOINT s2;
-ERROR 42000: SAVEPOINT s2 does not exist
-BEGIN;
-SAVEPOINT s3;
-ROLLBACK;
-RELEASE SAVEPOINT s3;
-ERROR 42000: SAVEPOINT s3 does not exist
-BEGIN;
-SAVEPOINT s4;
-ROLLBACK;
-ROLLBACK TO SAVEPOINT s4;
-ERROR 42000: SAVEPOINT s4 does not exist
-CREATE TABLE t1 (f1 INTEGER PRIMARY KEY COMMENT 'My ID#', f2 INTEGER DEFAULT NULL, f3 CHAR(10) DEFAULT 'My ID#', CONSTRAINT f2_ref FOREIGN KEY (f2) REFERENCES t1 (f1)) ENGINE=INNODB;
-SHOW CREATE TABLE t1;
-Table Create Table
-t1 CREATE TABLE `t1` (
- `f1` int(11) NOT NULL COMMENT 'My ID#',
- `f2` int(11) DEFAULT NULL,
- `f3` char(10) DEFAULT 'My ID#',
- PRIMARY KEY (`f1`),
- KEY `f2_ref` (`f2`),
- CONSTRAINT `f2_ref` FOREIGN KEY (`f2`) REFERENCES `t1` (`f1`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1
-DROP TABLE t1;
-#
-# Bug #36995: valgrind error in remove_const during subquery executions
-#
-create table t1 (a bit(1) not null,b int) engine=myisam;
-create table t2 (c int) engine=innodb;
-explain
-select b from t1 where a not in (select b from t1,t2 group by a) group by a;
-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 DEPENDENT SUBQUERY t1 system NULL NULL NULL NULL 0 const row not found
-2 DEPENDENT SUBQUERY t2 ALL NULL NULL NULL NULL 1
-DROP TABLE t1,t2;
-End of 5.0 tests
-CREATE TABLE `t2` (
-`k` int(11) NOT NULL auto_increment,
-`a` int(11) default NULL,
-`c` int(11) default NULL,
-PRIMARY KEY (`k`),
-UNIQUE KEY `idx_1` (`a`)
-);
-insert into t2 ( a ) values ( 6 ) on duplicate key update c =
-ifnull( c,
-0 ) + 1;
-insert into t2 ( a ) values ( 7 ) on duplicate key update c =
-ifnull( c,
-0 ) + 1;
-select last_insert_id();
-last_insert_id()
-2
-select * from t2;
-k a c
-1 6 NULL
-2 7 NULL
-insert into t2 ( a ) values ( 6 ) on duplicate key update c =
-ifnull( c,
-0 ) + 1;
-select last_insert_id();
-last_insert_id()
-2
-select last_insert_id(0);
-last_insert_id(0)
-0
-insert into t2 ( a ) values ( 6 ) on duplicate key update c =
-ifnull( c,
-0 ) + 1;
-select last_insert_id();
-last_insert_id()
-0
-select * from t2;
-k a c
-1 6 2
-2 7 NULL
-insert ignore into t2 values (null,6,1),(10,8,1);
-select last_insert_id();
-last_insert_id()
-0
-insert ignore into t2 values (null,6,1),(null,8,1),(null,15,1),(null,20,1);
-select last_insert_id();
-last_insert_id()
-11
-select * from t2;
-k a c
-1 6 2
-2 7 NULL
-10 8 1
-11 15 1
-12 20 1
-insert into t2 ( a ) values ( 6 ) on duplicate key update c =
-ifnull( c,
-0 ) + 1, k=last_insert_id(k);
-select last_insert_id();
-last_insert_id()
-1
-select * from t2;
-k a c
-1 6 3
-2 7 NULL
-10 8 1
-11 15 1
-12 20 1
-drop table t2;
-drop table if exists t1, t2;
-create table t1 (i int);
-alter table t1 modify i int default 1;
-alter table t1 modify i int default 2, rename t2;
-lock table t2 write;
-alter table t2 modify i int default 3;
-unlock tables;
-lock table t2 write;
-alter table t2 modify i int default 4, rename t1;
-unlock tables;
-drop table t1;
-drop table if exists t1;
-create table t1 (i int);
-insert into t1 values ();
-lock table t1 write;
-alter table t1 modify i int default 1;
-insert into t1 values ();
-select * from t1;
-i
-NULL
-1
-alter table t1 change i c char(10) default "Two";
-insert into t1 values ();
-select * from t1;
-c
-NULL
-1
-Two
-unlock tables;
-select * from t1;
-c
-NULL
-1
-Two
-drop tables t1;
-create table t1(f1 varchar(5) unique, f2 timestamp NOT NULL DEFAULT
-CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP);
-insert into t1(f1) values(1);
-select @a:=f2 from t1;
-@a:=f2
-#
-update t1 set f1=1;
-select @b:=f2 from t1;
-@b:=f2
-#
-select if(@a=@b,"ok","wrong");
-if(@a=@b,"ok","wrong")
-ok
-insert into t1(f1) values (1) on duplicate key update f1="1";
-select @b:=f2 from t1;
-@b:=f2
-#
-select if(@a=@b,"ok","wrong");
-if(@a=@b,"ok","wrong")
-ok
-insert into t1(f1) select f1 from t1 on duplicate key update f1="1";
-select @b:=f2 from t1;
-@b:=f2
-#
-select if(@a=@b,"ok","wrong");
-if(@a=@b,"ok","wrong")
-ok
-drop table t1;
-SET SESSION AUTOCOMMIT = 0;
-SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
-set binlog_format=mixed;
-# Switch to connection con1
-CREATE TABLE t1 (a INT PRIMARY KEY, b VARCHAR(256))
-ENGINE = InnoDB;
-INSERT INTO t1 VALUES (1,2);
-# 1. test for locking:
-BEGIN;
-UPDATE t1 SET b = 12 WHERE a = 1;
-affected rows: 1
-info: Rows matched: 1 Changed: 1 Warnings: 0
-SELECT * FROM t1;
-a b
-1 12
-# Switch to connection con2
-UPDATE t1 SET b = 21 WHERE a = 1;
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-# Switch to connection con1
-SELECT * FROM t1;
-a b
-1 12
-ROLLBACK;
-# Switch to connection con2
-ROLLBACK;
-# Switch to connection con1
-# 2. test for serialized update:
-CREATE TABLE t2 (a INT);
-TRUNCATE t1;
-INSERT INTO t1 VALUES (1,'init');
-CREATE PROCEDURE p1()
-BEGIN
-UPDATE t1 SET b = CONCAT(b, '+con2') WHERE a = 1;
-INSERT INTO t2 VALUES ();
-END|
-BEGIN;
-UPDATE t1 SET b = CONCAT(b, '+con1') WHERE a = 1;
-affected rows: 1
-info: Rows matched: 1 Changed: 1 Warnings: 0
-SELECT * FROM t1;
-a b
-1 init+con1
-# Switch to connection con2
-CALL p1;;
-# Switch to connection con1
-SELECT * FROM t1;
-a b
-1 init+con1
-COMMIT;
-SELECT * FROM t1;
-a b
-1 init+con1
-# Switch to connection con2
-SELECT * FROM t1;
-a b
-1 init+con1+con2
-COMMIT;
-# Switch to connection con1
-# 3. test for updated key column:
-TRUNCATE t1;
-TRUNCATE t2;
-INSERT INTO t1 VALUES (1,'init');
-BEGIN;
-UPDATE t1 SET a = 2, b = CONCAT(b, '+con1') WHERE a = 1;
-affected rows: 1
-info: Rows matched: 1 Changed: 1 Warnings: 0
-SELECT * FROM t1;
-a b
-2 init+con1
-# Switch to connection con2
-CALL p1;;
-# Switch to connection con1
-SELECT * FROM t1;
-a b
-2 init+con1
-COMMIT;
-SELECT * FROM t1;
-a b
-2 init+con1
-# Switch to connection con2
-SELECT * FROM t1;
-a b
-2 init+con1
-DROP PROCEDURE p1;
-DROP TABLE t1, t2;
-CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL, PRIMARY KEY (a,b)) engine=innodb;
-CREATE TABLE t2 (c INT NOT NULL, d INT NOT NULL, PRIMARY KEY (c,d),
-CONSTRAINT c2 FOREIGN KEY f2 (c) REFERENCES t1 (a,b) ON UPDATE NO ACTION) engine=innodb;
-ERROR 42000: Incorrect foreign key definition for 'f2': Key reference and table reference don't match
-CREATE TABLE t2 (c INT NOT NULL, d INT NOT NULL, PRIMARY KEY (c,d),
-CONSTRAINT c2 FOREIGN KEY (c) REFERENCES t1 (a,b) ON UPDATE NO ACTION) engine=innodb;
-ERROR 42000: Incorrect foreign key definition for 'c2': Key reference and table reference don't match
-CREATE TABLE t2 (c INT NOT NULL, d INT NOT NULL, PRIMARY KEY (c,d),
-CONSTRAINT c1 FOREIGN KEY c2 (c) REFERENCES t1 (a) ON DELETE NO ACTION,
-CONSTRAINT c2 FOREIGN KEY (c) REFERENCES t1 (a) ON UPDATE NO ACTION) engine=innodb;
-ALTER TABLE t2 DROP FOREIGN KEY c2;
-DROP TABLE t2;
-CREATE TABLE t2 (c INT NOT NULL, d INT NOT NULL, PRIMARY KEY (c,d),
-FOREIGN KEY (c) REFERENCES t1 (a,k) ON UPDATE NO ACTION) engine=innodb;
-ERROR 42000: Incorrect foreign key definition for 'foreign key without name': Key reference and table reference don't match
-CREATE TABLE t2 (c INT NOT NULL, d INT NOT NULL, PRIMARY KEY (c,d),
-FOREIGN KEY f1 (c) REFERENCES t1 (a,k) ON UPDATE NO ACTION) engine=innodb;
-ERROR 42000: Incorrect foreign key definition for 'f1': Key reference and table reference don't match
-CREATE TABLE t2 (c INT NOT NULL, d INT NOT NULL, PRIMARY KEY (c,d),
-CONSTRAINT c1 FOREIGN KEY f1 (c) REFERENCES t1 (a) ON DELETE NO ACTION,
-CONSTRAINT c2 FOREIGN KEY (c) REFERENCES t1 (a) ON UPDATE NO ACTION,
-FOREIGN KEY f3 (c) REFERENCES t1 (a) ON UPDATE NO ACTION,
-FOREIGN KEY (c) REFERENCES t1 (a) ON UPDATE NO ACTION) engine=innodb;
-SHOW CREATE TABLE t2;
-Table Create Table
-t2 CREATE TABLE `t2` (
- `c` int(11) NOT NULL,
- `d` int(11) NOT NULL,
- PRIMARY KEY (`c`,`d`),
- CONSTRAINT `c1` FOREIGN KEY (`c`) REFERENCES `t1` (`a`) ON DELETE NO ACTION,
- CONSTRAINT `c2` FOREIGN KEY (`c`) REFERENCES `t1` (`a`) ON UPDATE NO ACTION,
- CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`c`) REFERENCES `t1` (`a`) ON UPDATE NO ACTION,
- CONSTRAINT `t2_ibfk_2` FOREIGN KEY (`c`) REFERENCES `t1` (`a`) ON UPDATE NO ACTION
-) ENGINE=InnoDB DEFAULT CHARSET=latin1
-DROP TABLE t2;
-DROP TABLE t1;
-create table t1 (a int auto_increment primary key) engine=innodb;
-alter table t1 order by a;
-Warnings:
-Warning 1105 ORDER BY ignored as there is a user-defined clustered index in the table 't1'
-drop table t1;
-CREATE TABLE t1
-(vid integer NOT NULL,
-tid integer NOT NULL,
-idx integer NOT NULL,
-name varchar(128) NOT NULL,
-type varchar(128) NULL,
-PRIMARY KEY(idx, vid, tid),
-UNIQUE(vid, tid, name)
-) ENGINE=InnoDB;
-INSERT INTO t1 VALUES
-(1,1,1,'pk',NULL),(2,1,1,'pk',NULL),(3,1,1,'pk',NULL),(4,1,1,'c1',NULL),
-(5,1,1,'pk',NULL),(1,1,2,'c1',NULL),(2,1,2,'c1',NULL),(3,1,2,'c1',NULL),
-(4,1,2,'c2',NULL),(5,1,2,'c1',NULL),(2,1,3,'c2',NULL),(3,1,3,'c2',NULL),
-(4,1,3,'pk',NULL),(5,1,3,'c2',NULL),
-(2,1,4,'c_extra',NULL),(3,1,4,'c_extra',NULL);
-EXPLAIN SELECT * FROM t1 FORCE INDEX (PRIMARY) WHERE tid = 1 AND vid = 3 ORDER BY idx DESC;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL PRIMARY 12 NULL 16 Using where
-SELECT * FROM t1 FORCE INDEX (PRIMARY) WHERE tid = 1 AND vid = 3 ORDER BY idx DESC;
-vid tid idx name type
-3 1 4 c_extra NULL
-3 1 3 c2 NULL
-3 1 2 c1 NULL
-3 1 1 pk NULL
-DROP TABLE t1;
-#
-# Bug #44290: explain crashes for subquery with distinct in
-# SQL_SELECT::test_quick_select
-# (reproduced only with InnoDB tables)
-#
-CREATE TABLE t1 (c1 INT, c2 INT, c3 INT, KEY (c3), KEY (c2, c3))
-ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,1,1), (1,1,1), (1,1,2), (1,1,1), (1,1,2);
-SELECT 1 FROM (SELECT COUNT(DISTINCT c1)
-FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x;
-1
-1
-EXPLAIN
-SELECT 1 FROM (SELECT COUNT(DISTINCT c1)
-FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived2> system NULL NULL NULL NULL 1
-2 DERIVED t1 index c3,c2 c2 10 NULL 5
-DROP TABLE t1;
-CREATE TABLE t1 (c1 REAL, c2 REAL, c3 REAL, KEY (c3), KEY (c2, c3))
-ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,1,1), (1,1,1), (1,1,2), (1,1,1), (1,1,2);
-SELECT 1 FROM (SELECT COUNT(DISTINCT c1)
-FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x;
-1
-1
-EXPLAIN
-SELECT 1 FROM (SELECT COUNT(DISTINCT c1)
-FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived2> system NULL NULL NULL NULL 1
-2 DERIVED t1 index c3,c2 c2 18 NULL 5
-DROP TABLE t1;
-CREATE TABLE t1 (c1 DECIMAL(12,2), c2 DECIMAL(12,2), c3 DECIMAL(12,2),
-KEY (c3), KEY (c2, c3))
-ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,1,1), (1,1,1), (1,1,2), (1,1,1), (1,1,2);
-SELECT 1 FROM (SELECT COUNT(DISTINCT c1)
-FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x;
-1
-1
-EXPLAIN
-SELECT 1 FROM (SELECT COUNT(DISTINCT c1)
-FROM t1 WHERE c2 IN (1, 1) AND c3 = 2 GROUP BY c2) x;
-id select_type table type possible_keys key key_len ref rows Extra
-1 PRIMARY <derived2> system NULL NULL NULL NULL 1
-2 DERIVED t1 index c3,c2 c2 14 NULL 5
-DROP TABLE t1;
-End of 5.1 tests
-#
-# Bug#42643: InnoDB does not support replication of TRUNCATE TABLE
-#
-# Check that a TRUNCATE TABLE statement, needing an exclusive meta
-# data lock, waits for a shared metadata lock owned by a concurrent
-# transaction.
-#
-CREATE TABLE t1 (a INT) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1),(2),(3);
-BEGIN;
-SELECT * FROM t1 ORDER BY a;
-a
-1
-2
-3
-# Connection con1
-TRUNCATE TABLE t1;;
-# Connection default
-SELECT * FROM t1 ORDER BY a;
-a
-1
-2
-3
-ROLLBACK;
-# Connection con1
-# Reaping TRUNCATE TABLE
-SELECT * FROM t1;
-a
-# Disconnect con1
-# Connection default
-DROP TABLE t1;
-drop table if exists t1, t2, t3;
-create table t1(a int);
-insert into t1 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
-create table t2 (a int, b int, pk int, key(a,b), primary key(pk)) engine=innodb;
-insert into t2 select @a:=A.a+10*(B.a + 10*C.a),@a, @a from t1 A, t1 B, t1 C;
-this must use key 'a', not PRIMARY:
-explain select a from t2 where a=b;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 index NULL a 10 NULL # Using where; Using index
-drop table t1, t2;
-SET SESSION BINLOG_FORMAT=STATEMENT;
-SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
-select @@session.sql_log_bin, @@session.binlog_format, @@session.tx_isolation;
-@@session.sql_log_bin 1
-@@session.binlog_format STATEMENT
-@@session.tx_isolation READ-COMMITTED
-CREATE TABLE t1 ( a INT ) ENGINE=InnoDB;
-INSERT INTO t1 VALUES(1);
-DROP TABLE t1;
-DROP TABLE IF EXISTS t1;
-CREATE TABLE t1 (a char(50)) ENGINE=InnoDB;
-CREATE INDEX i1 on t1 (a(3));
-SELECT * FROM t1 WHERE a = 'abcde';
-a
-DROP TABLE t1;
-CREATE TABLE foo (a int, b int, c char(10),
-PRIMARY KEY (c(3)),
-KEY b (b)
-) engine=innodb;
-CREATE TABLE foo2 (a int, b int, c char(10),
-PRIMARY KEY (c),
-KEY b (b)
-) engine=innodb;
-CREATE TABLE bar (a int, b int, c char(10),
-PRIMARY KEY (c(3)),
-KEY b (b)
-) engine=myisam;
-INSERT INTO foo VALUES
-(1,2,'abcdefghij'), (2,3,''), (3,4,'klmnopqrst'),
-(4,5,'uvwxyz'), (5,6,'meotnsyglt'), (4,5,'asfdewe');
-INSERT INTO bar SELECT * FROM foo;
-INSERT INTO foo2 SELECT * FROM foo;
-EXPLAIN SELECT c FROM bar WHERE b>2;;
-id 1
-select_type SIMPLE
-table bar
-type ALL
-possible_keys b
-key NULL
-key_len NULL
-ref NULL
-rows 6
-Extra Using where
-EXPLAIN SELECT c FROM foo WHERE b>2;;
-id 1
-select_type SIMPLE
-table foo
-type ALL
-possible_keys b
-key NULL
-key_len NULL
-ref NULL
-rows 6
-Extra Using where
-EXPLAIN SELECT c FROM foo2 WHERE b>2;;
-id 1
-select_type SIMPLE
-table foo2
-type range
-possible_keys b
-key b
-key_len 5
-ref NULL
-rows 3
-Extra Using where; Using index
-EXPLAIN SELECT c FROM bar WHERE c>2;;
-id 1
-select_type SIMPLE
-table bar
-type ALL
-possible_keys PRIMARY
-key NULL
-key_len NULL
-ref NULL
-rows 6
-Extra Using where
-EXPLAIN SELECT c FROM foo WHERE c>2;;
-id 1
-select_type SIMPLE
-table foo
-type ALL
-possible_keys PRIMARY
-key NULL
-key_len NULL
-ref NULL
-rows 6
-Extra Using where
-EXPLAIN SELECT c FROM foo2 WHERE c>2;;
-id 1
-select_type SIMPLE
-table foo2
-type index
-possible_keys PRIMARY
-key b
-key_len 5
-ref NULL
-rows 6
-Extra Using where; Using index
-DROP TABLE foo, bar, foo2;
-DROP TABLE IF EXISTS t1,t3,t2;
-DROP FUNCTION IF EXISTS f1;
-CREATE FUNCTION f1() RETURNS VARCHAR(250)
-BEGIN
-return 'hhhhhhh' ;
-END|
-CREATE TABLE t1 (a VARCHAR(20), b VARCHAR(20), c VARCHAR(20)) ENGINE=INNODB;
-BEGIN WORK;
-CREATE TEMPORARY TABLE t2 (a VARCHAR(20), b VARCHAR(20), c varchar(20)) ENGINE=INNODB;
-CREATE TEMPORARY TABLE t3 LIKE t2;
-INSERT INTO t1 VALUES ('a','b',NULL),('c','d',NULL),('e','f',NULL);
-SET @stmt := CONCAT('INSERT INTO t2 SELECT tbl.a, tbl.b, f1()',' FROM t1 tbl');
-PREPARE stmt1 FROM @stmt;
-SET @stmt := CONCAT('INSERT INTO t3', ' SELECT * FROM t2');
-PREPARE stmt3 FROM @stmt;
-EXECUTE stmt1;
-COMMIT;
-DEALLOCATE PREPARE stmt1;
-DEALLOCATE PREPARE stmt3;
-DROP TABLE t1,t3,t2;
-DROP FUNCTION f1;
-DROP TABLE IF EXISTS t1,t2;
-CREATE TABLE t1 (id INT NOT NULL, PRIMARY KEY (id)) ENGINE=INNODB;
-CREATE TABLE t2 (id INT PRIMARY KEY,
-t1_id INT, INDEX par_ind (t1_id),
-FOREIGN KEY (t1_id) REFERENCES t1(id)) ENGINE=INNODB;
-INSERT INTO t1 VALUES (1),(2);
-INSERT INTO t2 VALUES (3,2);
-SET AUTOCOMMIT = 0;
-START TRANSACTION;
-TRUNCATE TABLE t1;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`t1_id`) REFERENCES `t1` (`id`))
-SELECT * FROM t1;
-id
-1
-2
-COMMIT;
-SELECT * FROM t1;
-id
-1
-2
-START TRANSACTION;
-TRUNCATE TABLE t1;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`t1_id`) REFERENCES `t1` (`id`))
-SELECT * FROM t1;
-id
-1
-2
-ROLLBACK;
-SELECT * FROM t1;
-id
-1
-2
-SET AUTOCOMMIT = 1;
-START TRANSACTION;
-SELECT * FROM t1;
-id
-1
-2
-COMMIT;
-TRUNCATE TABLE t1;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`t1_id`) REFERENCES `t1` (`id`))
-SELECT * FROM t1;
-id
-1
-2
-DELETE FROM t2 WHERE id = 3;
-START TRANSACTION;
-SELECT * FROM t1;
-id
-1
-2
-TRUNCATE TABLE t1;
-ROLLBACK;
-SELECT * FROM t1;
-id
-TRUNCATE TABLE t2;
-DROP TABLE t2;
-DROP TABLE t1;
-#
-# Bug#40127 Multiple table DELETE IGNORE hangs on foreign key constraint violation on 5.0
-#
-CREATE TABLE t1 (
-id INT UNSIGNED NOT NULL AUTO_INCREMENT,
-PRIMARY KEY (id)
-) ENGINE=InnoDB;
-CREATE TABLE t2 (
-id INT UNSIGNED NOT NULL AUTO_INCREMENT,
-aid INT UNSIGNED NOT NULL,
-PRIMARY KEY (id),
-FOREIGN KEY (aid) REFERENCES t1 (id)
-) ENGINE=InnoDB;
-CREATE TABLE t3 (
-bid INT UNSIGNED NOT NULL,
-FOREIGN KEY (bid) REFERENCES t2 (id)
-) ENGINE=InnoDB;
-CREATE TABLE t4 (
-a INT
-) ENGINE=InnoDB;
-CREATE TABLE t5 (
-a INT
-) ENGINE=InnoDB;
-INSERT INTO t1 (id) VALUES (1);
-INSERT INTO t2 (id, aid) VALUES (1, 1),(2,1),(3,1),(4,1);
-INSERT INTO t3 (bid) VALUES (1);
-INSERT INTO t4 VALUES (1),(2),(3),(4),(5);
-INSERT INTO t5 VALUES (1);
-DELETE t5 FROM t4 LEFT JOIN t5 ON t4.a= t5.a;
-DELETE t2, t1 FROM t2 INNER JOIN t1 ON (t2.aid = t1.id) WHERE t2.id = 1;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t3`, CONSTRAINT `t3_ibfk_1` FOREIGN KEY (`bid`) REFERENCES `t2` (`id`))
-DELETE t2, t1 FROM t2 INNER JOIN t1 ON (t2.aid = t1.id) WHERE t2.id = 1;
-ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails (`test`.`t3`, CONSTRAINT `t3_ibfk_1` FOREIGN KEY (`bid`) REFERENCES `t2` (`id`))
-DELETE IGNORE t2, t1 FROM t2 INNER JOIN t1 ON (t2.aid = t1.id) WHERE t2.id = 1;
-DROP TABLE t3;
-DROP TABLE t2;
-DROP TABLE t1;
-DROP TABLES t4,t5;
-# Bug#40127 Multiple table DELETE IGNORE hangs on foreign key constraint violation on 5.0
-# Testing for any side effects of IGNORE on AFTER DELETE triggers used with
-# transactional tables.
-#
-CREATE TABLE t1 (i INT NOT NULL PRIMARY KEY) ENGINE=InnoDB;
-CREATE TABLE t2 (a VARCHAR(100)) ENGINE=InnoDB;
-CREATE TABLE t3 (i INT NOT NULL PRIMARY KEY) ENGINE=InnoDB;
-CREATE TABLE t4 (i INT NOT NULL PRIMARY KEY, t1i INT,
-FOREIGN KEY (t1i) REFERENCES t1(i))
-ENGINE=InnoDB;
-CREATE TRIGGER trg AFTER DELETE ON t1 FOR EACH ROW
-BEGIN
-SET @b:='EXECUTED TRIGGER';
-INSERT INTO t2 VALUES (@b);
-SET @a:= error_happens_here;
-END||
-SET @b:="";
-SET @a:="";
-INSERT INTO t1 VALUES (1),(2),(3),(4);
-INSERT INTO t3 SELECT * FROM t1;
-** An error in a trigger causes rollback of the statement.
-DELETE t1 FROM t3 LEFT JOIN t1 ON t1.i=t3.i;
-ERROR 42S22: Unknown column 'error_happens_here' in 'field list'
-SELECT @a,@b;
-@a @b
- EXECUTED TRIGGER
-SELECT * FROM t2;
-a
-SELECT * FROM t1 LEFT JOIN t3 ON t1.i=t3.i;
-i i
-1 1
-2 2
-3 3
-4 4
-** Same happens with the IGNORE option
-DELETE IGNORE t1 FROM t3 LEFT JOIN t1 ON t1.i=t3.i;
-ERROR 42S22: Unknown column 'error_happens_here' in 'field list'
-SELECT * FROM t2;
-a
-SELECT * FROM t1 LEFT JOIN t3 ON t1.i=t3.i;
-i i
-1 1
-2 2
-3 3
-4 4
-**
-** The following is an attempt to demonstrate
-** error handling inside a row iteration.
-**
-DROP TRIGGER trg;
-TRUNCATE TABLE t1;
-TRUNCATE TABLE t2;
-TRUNCATE TABLE t3;
-INSERT INTO t1 VALUES (1),(2),(3),(4);
-INSERT INTO t3 VALUES (1),(2),(3),(4);
-INSERT INTO t4 VALUES (3,3),(4,4);
-CREATE TRIGGER trg AFTER DELETE ON t1 FOR EACH ROW
-BEGIN
-SET @b:= CONCAT('EXECUTED TRIGGER FOR ROW ',CAST(OLD.i AS CHAR));
-INSERT INTO t2 VALUES (@b);
-END||
-** DELETE is prevented by foreign key constrains but errors are silenced.
-** The AFTER trigger isn't fired.
-DELETE IGNORE t1 FROM t3 LEFT JOIN t1 ON t1.i=t3.i;
-** Tables are modified by best effort:
-SELECT * FROM t1 LEFT JOIN t3 ON t1.i=t3.i;
-i i
-3 3
-4 4
-** The AFTER trigger was only executed on successful rows:
-SELECT * FROM t2;
-a
-EXECUTED TRIGGER FOR ROW 1
-EXECUTED TRIGGER FOR ROW 2
-DROP TRIGGER trg;
-**
-** Induce an error midway through an AFTER-trigger
-**
-TRUNCATE TABLE t4;
-TRUNCATE TABLE t1;
-TRUNCATE TABLE t3;
-INSERT INTO t1 VALUES (1),(2),(3),(4);
-INSERT INTO t3 VALUES (1),(2),(3),(4);
-CREATE TRIGGER trg AFTER DELETE ON t1 FOR EACH ROW
-BEGIN
-SET @a:= @a+1;
-IF @a > 2 THEN
-INSERT INTO t4 VALUES (5,5);
-END IF;
-END||
-SET @a:=0;
-** Errors in the trigger causes the statement to abort.
-DELETE IGNORE t1 FROM t3 LEFT JOIN t1 ON t1.i=t3.i;
-ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test`.`t4`, CONSTRAINT `t4_ibfk_1` FOREIGN KEY (`t1i`) REFERENCES `t1` (`i`))
-SELECT * FROM t1 LEFT JOIN t3 ON t1.i=t3.i;
-i i
-1 1
-2 2
-3 3
-4 4
-SELECT * FROM t4;
-i t1i
-DROP TRIGGER trg;
-DROP TABLE t4;
-DROP TABLE t1;
-DROP TABLE t2;
-DROP TABLE t3;
-CREATE TABLE t1 (a INT, b INT, KEY (a)) ENGINE = INNODB;
-CREATE TABLE t2 (a INT KEY, b INT, KEY (b)) ENGINE = INNODB;
-CREATE TABLE t3 (a INT, b INT KEY, KEY (a)) ENGINE = INNODB;
-CREATE TABLE t4 (a INT KEY, b INT, KEY (b)) ENGINE = INNODB;
-INSERT INTO t1 VALUES (1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6);
-INSERT INTO t2 VALUES (1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
-INSERT INTO t3 VALUES (1, 101), (2, 102), (3, 103), (4, 104), (5, 105), (6, 106);
-INSERT INTO t4 VALUES (1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
-UPDATE t1, t2 SET t1.a = t1.a + 100, t2.b = t1.a + 10
-WHERE t1.a BETWEEN 2 AND 4 AND t2.a = t1.b;
-SELECT * FROM t2;
-a b
-1 1
-2 12
-3 13
-4 14
-5 5
-UPDATE t3, t4 SET t3.a = t3.a + 100, t4.b = t3.a + 10
-WHERE t3.a BETWEEN 2 AND 4 AND t4.a = t3.b - 100;
-SELECT * FROM t4;
-a b
-1 1
-2 12
-3 13
-4 14
-5 5
-DROP TABLE t1, t2, t3, t4;
-#
-# Bug#44886: SIGSEGV in test_if_skip_sort_order() -
-# uninitialized variable used as subscript
-#
-CREATE TABLE t1 (a INT, b INT, c INT, d INT, PRIMARY KEY (b), KEY (a,c))
-ENGINE=InnoDB;
-INSERT INTO t1 VALUES (1,1,1,0);
-CREATE TABLE t2 (a INT, b INT, e INT, KEY (e)) ENGINE=InnoDB;
-INSERT INTO t2 VALUES (1,1,2);
-CREATE TABLE t3 (a INT, b INT) ENGINE=MyISAM;
-INSERT INTO t3 VALUES (1, 1);
-SELECT * FROM t1, t2, t3
-WHERE t1.a = t3.a AND (t1.b = t3.b OR t1.d) AND t2.b = t1.b AND t2.e = 2
-GROUP BY t1.b;
-a b c d a b e a b
-1 1 1 0 1 1 2 1 1
-DROP TABLE t1, t2, t3;
-#
-# Bug #45828: Optimizer won't use partial primary key if another
-# index can prevent filesort
-#
-CREATE TABLE `t1` (
-c1 int NOT NULL,
-c2 int NOT NULL,
-c3 int NOT NULL,
-PRIMARY KEY (c1,c2),
-KEY (c3)
-) ENGINE=InnoDB;
-INSERT INTO t1 VALUES (5,2,1246276747);
-INSERT INTO t1 VALUES (2,1,1246281721);
-INSERT INTO t1 VALUES (7,3,1246281756);
-INSERT INTO t1 VALUES (4,2,1246282139);
-INSERT INTO t1 VALUES (3,1,1246282230);
-INSERT INTO t1 VALUES (1,0,1246282712);
-INSERT INTO t1 VALUES (8,3,1246282765);
-INSERT INTO t1 SELECT c1+10,c2+10,c3+10 FROM t1;
-INSERT INTO t1 SELECT c1+100,c2+100,c3+100 from t1;
-INSERT INTO t1 SELECT c1+1000,c2+1000,c3+1000 from t1;
-INSERT INTO t1 SELECT c1+10000,c2+10000,c3+10000 from t1;
-INSERT INTO t1 SELECT c1+100000,c2+100000,c3+100000 from t1;
-INSERT INTO t1 SELECT c1+1000000,c2+1000000,c3+1000000 from t1;
-SELECT * FROM t1 WHERE c1 = 99999999 AND c3 > 1 ORDER BY c3;
-c1 c2 c3
-EXPLAIN SELECT * FROM t1 WHERE c1 = 99999999 AND c3 > 1 ORDER BY c3;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref PRIMARY,c3 PRIMARY 4 const 1 Using where; Using filesort
-EXPLAIN SELECT * FROM t1 FORCE INDEX (PRIMARY) WHERE c1 = 99999999 AND c3 > 1 ORDER BY c3;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref PRIMARY PRIMARY 4 const 1 Using where; Using filesort
-CREATE TABLE t2 (
-c1 int NOT NULL,
-c2 int NOT NULL,
-c3 int NOT NULL,
-KEY (c1,c2),
-KEY (c3)
-) ENGINE=InnoDB;
-explain SELECT * FROM t2 WHERE c1 = 99999999 AND c3 > 1 ORDER BY c3;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 ref c1,c3 c1 4 const 1 Using where; Using filesort
-DROP TABLE t1,t2;
-#
-# 36259: Optimizing with ORDER BY
-#
-CREATE TABLE t1 (
-a INT NOT NULL AUTO_INCREMENT,
-b INT NOT NULL,
-c INT NOT NULL,
-d VARCHAR(5),
-e INT NOT NULL,
-PRIMARY KEY (a), KEY i2 (b,c,d)
-) ENGINE=InnoDB;
-INSERT INTO t1 (b,c,d,e) VALUES (1,1,'a',1), (2,2,'b',2);
-INSERT INTO t1 (b,c,d,e) SELECT RAND()*10000, RAND()*10000, d, e FROM t1;
-INSERT INTO t1 (b,c,d,e) SELECT RAND()*10000, RAND()*10000, d, e FROM t1;
-INSERT INTO t1 (b,c,d,e) SELECT RAND()*10000, RAND()*10000, d, e FROM t1;
-INSERT INTO t1 (b,c,d,e) SELECT RAND()*10000, RAND()*10000, d, e FROM t1;
-INSERT INTO t1 (b,c,d,e) SELECT RAND()*10000, RAND()*10000, d, e FROM t1;
-INSERT INTO t1 (b,c,d,e) SELECT RAND()*10000, RAND()*10000, d, e FROM t1;
-EXPLAIN SELECT * FROM t1 WHERE b=1 AND c=1 ORDER BY a;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref i2 i2 8 const,const 1 Using where; Using filesort
-EXPLAIN SELECT * FROM t1 FORCE INDEX(i2) WHERE b=1 and c=1 ORDER BY a;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref i2 i2 8 const,const 1 Using where; Using filesort
-EXPLAIN SELECT * FROM t1 FORCE INDEX(PRIMARY) WHERE b=1 AND c=1 ORDER BY a;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL PRIMARY 4 NULL 128 Using where
-DROP TABLE t1;
-#
-# Bug #47963: Wrong results when index is used
-#
-CREATE TABLE t1(
-a VARCHAR(5) NOT NULL,
-b VARCHAR(5) NOT NULL,
-c DATETIME NOT NULL,
-KEY (c)
-) ENGINE=InnoDB;
-INSERT INTO t1 VALUES('TEST', 'TEST', '2009-10-09 00:00:00');
-SELECT * FROM t1 WHERE a = 'TEST' AND
-c >= '2009-10-09 00:00:00' AND c <= '2009-10-09 00:00:00';
-a b c
-TEST TEST 2009-10-09 00:00:00
-SELECT * FROM t1 WHERE a = 'TEST' AND
-c >= '2009-10-09 00:00:00.0' AND c <= '2009-10-09 00:00:00.0';
-a b c
-TEST TEST 2009-10-09 00:00:00
-SELECT * FROM t1 WHERE a = 'TEST' AND
-c >= '2009-10-09 00:00:00.0' AND c <= '2009-10-09 00:00:00';
-a b c
-TEST TEST 2009-10-09 00:00:00
-SELECT * FROM t1 WHERE a = 'TEST' AND
-c >= '2009-10-09 00:00:00' AND c <= '2009-10-09 00:00:00.0';
-a b c
-TEST TEST 2009-10-09 00:00:00
-SELECT * FROM t1 WHERE a = 'TEST' AND
-c >= '2009-10-09 00:00:00.000' AND c <= '2009-10-09 00:00:00.000';
-a b c
-TEST TEST 2009-10-09 00:00:00
-SELECT * FROM t1 WHERE a = 'TEST' AND
-c >= '2009-10-09 00:00:00.00' AND c <= '2009-10-09 00:00:00.001';
-a b c
-TEST TEST 2009-10-09 00:00:00
-SELECT * FROM t1 WHERE a = 'TEST' AND
-c >= '2009-10-09 00:00:00.001' AND c <= '2009-10-09 00:00:00.00';
-a b c
-EXPLAIN SELECT * FROM t1 WHERE a = 'TEST' AND
-c >= '2009-10-09 00:00:00.001' AND c <= '2009-10-09 00:00:00.00';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
-DROP TABLE t1;
-#
-# Bug #46175: NULL read_view and consistent read assertion
-#
-CREATE TABLE t1(a CHAR(13),KEY(a)) ENGINE=innodb;
-CREATE TABLE t2(b DATETIME,KEY(b)) ENGINE=innodb;
-INSERT INTO t1 VALUES (),();
-INSERT INTO t2 VALUES (),();
-CREATE OR REPLACE VIEW v1 AS SELECT 1 FROM t2
-WHERE b =(SELECT a FROM t1 LIMIT 1);
-CREATE PROCEDURE p1(num INT)
-BEGIN
-DECLARE i INT DEFAULT 0;
-REPEAT
-SHOW CREATE VIEW v1;
-SET i:=i+1;
-UNTIL i>num END REPEAT;
-END|
-# Should not crash
-# Should not crash
-DROP PROCEDURE p1;
-DROP VIEW v1;
-DROP TABLE t1,t2;
-#
-# Bug #49324: more valgrind errors in test_if_skip_sort_order
-#
-CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=innodb ;
-#should not cause valgrind warnings
-SELECT 1 FROM t1 JOIN t1 a USING(a) GROUP BY t1.a,t1.a;
-1
-DROP TABLE t1;
-#
-# Bug#50843: Filesort used instead of clustered index led to
-# performance degradation.
-#
-create table t1(f1 int not null primary key, f2 int) engine=innodb;
-create table t2(f1 int not null, key (f1)) engine=innodb;
-insert into t1 values (1,1),(2,2),(3,3);
-insert into t2 values (1),(2),(3);
-explain select t1.* from t1 left join t2 using(f1) group by t1.f1;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL PRIMARY 4 NULL 3
-1 SIMPLE t2 ref f1 f1 4 test.t1.f1 1 Using index
-drop table t1,t2;
-#
-#
-# Bug #39653: find_shortest_key in sql_select.cc does not consider
-# clustered primary keys
-#
-CREATE TABLE t1 (a INT PRIMARY KEY, b INT, c INT, d INT, e INT, f INT,
-KEY (b,c)) ENGINE=INNODB;
-INSERT INTO t1 VALUES (1,1,1,1,1,1), (2,2,2,2,2,2), (3,3,3,3,3,3),
-(4,4,4,4,4,4), (5,5,5,5,5,5), (6,6,6,6,6,6),
-(7,7,7,7,7,7), (8,8,8,8,8,8), (9,9,9,9,9,9),
-(11,11,11,11,11,11);
-EXPLAIN SELECT COUNT(*) FROM t1;
-id 1
-select_type SIMPLE
-table t1
-type index
-possible_keys NULL
-key b
-key_len 10
-ref NULL
-rows 10
-Extra Using index
-DROP TABLE t1;
-#
-# Bug #49838: DROP INDEX and ADD UNIQUE INDEX for same index may
-# corrupt definition at engine
-#
-CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL, KEY k (a,b))
-ENGINE=InnoDB;
-ALTER TABLE t1 DROP INDEX k, ADD UNIQUE INDEX k (a,b);
-SHOW INDEXES FROM t1;;
-Table t1
-Non_unique 0
-Key_name k
-Seq_in_index 1
-Column_name a
-Collation A
-Cardinality 0
-Sub_part NULL
-Packed NULL
-Null
-Index_type BTREE
-Comment
-Index_comment
-Table t1
-Non_unique 0
-Key_name k
-Seq_in_index 2
-Column_name b
-Collation A
-Cardinality 0
-Sub_part NULL
-Packed NULL
-Null
-Index_type BTREE
-Comment
-Index_comment
-DROP TABLE t1;
-#
-# Bug #47453: InnoDB incorrectly changes TIMESTAMP columns when
-# JOINed during an UPDATE
-#
-CREATE TABLE t1 (d INT) ENGINE=InnoDB;
-CREATE TABLE t2 (a INT, b INT,
-c TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
-ON UPDATE CURRENT_TIMESTAMP) ENGINE=InnoDB;
-set up our data elements
-INSERT INTO t1 (d) VALUES (1);
-INSERT INTO t2 (a,b) VALUES (1,1);
-SELECT SECOND(c) INTO @bug47453 FROM t2;
-SELECT SECOND(c)-@bug47453 FROM t1 JOIN t2 ON d=a;
-SECOND(c)-@bug47453
-0
-UPDATE t1 JOIN t2 ON d=a SET b=1 WHERE a=1;
-SELECT SECOND(c)-@bug47453 FROM t1 JOIN t2 ON d=a;
-SECOND(c)-@bug47453
-0
-SELECT SLEEP(1);
-SLEEP(1)
-0
-UPDATE t1 JOIN t2 ON d=a SET b=1 WHERE a=1;
-#should be 0
-SELECT SECOND(c)-@bug47453 FROM t1 JOIN t2 ON d=a;
-SECOND(c)-@bug47453
-0
-DROP TABLE t1, t2;
-#
-# Bug #53334: wrong result for outer join with impossible ON condition
-# (see the same test case for MyISAM in join.test)
-#
-CREATE TABLE t1 (id INT PRIMARY KEY);
-CREATE TABLE t2 (id INT);
-INSERT INTO t1 VALUES (75);
-INSERT INTO t1 VALUES (79);
-INSERT INTO t1 VALUES (78);
-INSERT INTO t1 VALUES (77);
-REPLACE INTO t1 VALUES (76);
-REPLACE INTO t1 VALUES (76);
-INSERT INTO t1 VALUES (104);
-INSERT INTO t1 VALUES (103);
-INSERT INTO t1 VALUES (102);
-INSERT INTO t1 VALUES (101);
-INSERT INTO t1 VALUES (105);
-INSERT INTO t1 VALUES (106);
-INSERT INTO t1 VALUES (107);
-INSERT INTO t2 VALUES (107),(75),(1000);
-SELECT t1.id,t2.id FROM t2 LEFT JOIN t1 ON t1.id>=74 AND t1.id<=0
-WHERE t2.id=75 AND t1.id IS NULL;
-id id
-NULL 75
-EXPLAIN SELECT t1.id,t2.id FROM t2 LEFT JOIN t1 ON t1.id>=74 AND t1.id<=0
-WHERE t2.id=75 AND t1.id IS NULL;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 const PRIMARY NULL NULL NULL 1 Impossible ON condition
-1 SIMPLE t2 ALL NULL NULL NULL NULL 3 Using where
-DROP TABLE t1,t2;
-End of 5.1 tests
-#
-# Test for bug #39932 "create table fails if column for FK is in different
-# case than in corr index".
-#
-drop tables if exists t1, t2;
-create table t1 (pk int primary key) engine=InnoDB;
-# Even although the below statement uses uppercased field names in
-# foreign key definition it still should be able to find explicitly
-# created supporting index. So it should succeed and should not
-# create any additional supporting indexes.
-create table t2 (fk int, key x (fk),
-constraint x foreign key (FK) references t1 (PK)) engine=InnoDB;
-show create table t2;
-Table Create Table
-t2 CREATE TABLE `t2` (
- `fk` int(11) DEFAULT NULL,
- KEY `x` (`fk`),
- CONSTRAINT `x` FOREIGN KEY (`fk`) REFERENCES `t1` (`pk`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1
-drop table t2, t1;
-#
-# Bug#44613 SELECT statement inside FUNCTION takes a shared lock
-#
-DROP TABLE IF EXISTS t1;
-DROP FUNCTION IF EXISTS f1;
-CREATE TABLE t1(x INT PRIMARY KEY, y INT) ENGINE=innodb;
-INSERT INTO t1 VALUES (1, 0), (2, 0);
-CREATE FUNCTION f1(z INT) RETURNS INT READS SQL DATA
-RETURN (SELECT x FROM t1 WHERE x = z);
-# Connection default
-START TRANSACTION;
-SELECT f1(1);
-f1(1)
-1
-# Connection con2
-START TRANSACTION;
-SELECT f1(1);
-f1(1)
-1
-UPDATE t1 SET y = 1 WHERE x = 1;
-COMMIT;
-# Connection default
-COMMIT;
-DROP TABLE t1;
-DROP FUNCTION f1;