Current Path : /usr/opt/mysql57/mysql-test/suite/ndb/r/ |
FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64 |
Current File : //usr/opt/mysql57/mysql-test/suite/ndb/r/ndb_auto_increment.result |
DROP TABLE IF EXISTS t1,t2; DROP TABLE IF EXISTS t1; set @old_auto_increment_offset = @@session.auto_increment_offset; set @old_auto_increment_increment = @@session.auto_increment_increment; set @old_ndb_autoincrement_prefetch_sz = @@session.ndb_autoincrement_prefetch_sz; set @old_auto_increment_offset = @@session.auto_increment_offset; set @old_auto_increment_increment = @@session.auto_increment_increment; set @old_ndb_autoincrement_prefetch_sz = @@session.ndb_autoincrement_prefetch_sz; flush status; create table t1 (a int not null auto_increment primary key) engine ndb; insert into t1 values (NULL); select * from t1 order by a; a 1 update t1 set a = 5 where a = 1; insert into t1 values (NULL); select * from t1 order by a; a 5 6 insert into t1 values (7); insert into t1 values (NULL); select * from t1 order by a; a 5 6 7 8 insert into t1 values (2); insert into t1 values (NULL); select * from t1 order by a; a 2 5 6 7 8 9 update t1 set a = 4 where a = 2; insert into t1 values (NULL); select * from t1 order by a; a 4 5 6 7 8 9 10 delete from t1 where a = 10; insert into t1 values (NULL); select * from t1 order by a; a 4 5 6 7 8 9 11 replace t1 values (NULL); select * from t1 order by a; a 4 5 6 7 8 9 11 12 replace t1 values (15); select * from t1 order by a; a 4 5 6 7 8 9 11 12 15 replace into t1 values (NULL); select * from t1 order by a; a 4 5 6 7 8 9 11 12 15 16 replace t1 values (15); select * from t1 order by a; a 4 5 6 7 8 9 11 12 15 16 insert ignore into t1 values (NULL); select * from t1 order by a; a 4 5 6 7 8 9 11 12 15 16 17 insert ignore into t1 values (15), (NULL); Warnings: Warning 1062 Duplicate entry '15' for key 'PRIMARY' select * from t1 order by a; a 4 5 6 7 8 9 11 12 15 16 17 18 insert into t1 values (15) on duplicate key update a = 20; insert into t1 values (NULL); select * from t1 order by a; a 4 5 6 7 8 9 11 12 16 17 18 20 21 insert into t1 values (NULL) on duplicate key update a = 30; select * from t1 order by a; a 4 5 6 7 8 9 11 12 16 17 18 20 21 22 insert into t1 values (30) on duplicate key update a = 40; select * from t1 order by a; a 4 5 6 7 8 9 11 12 16 17 18 20 21 22 30 insert ignore into t1 values(600),(NULL),(NULL),(610),(NULL); select * from t1 order by a; a 4 5 6 7 8 9 11 12 16 17 18 20 21 22 30 600 601 602 610 611 drop table t1; create table t1 (a int not null primary key, b int not null unique auto_increment) engine ndb; insert into t1 values (1, NULL); insert into t1 values (3, NULL); update t1 set b = 3 where a = 3; insert into t1 values (4, NULL); select * from t1 order by a; a b 1 1 3 3 4 4 drop table t1; CREATE TABLE t1 ( pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT, b INT NOT NULL, c INT NOT NULL UNIQUE ) ENGINE=NDBCLUSTER; CREATE TABLE t2 ( pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT, b INT NOT NULL, c INT NOT NULL UNIQUE ) ENGINE=MYISAM; SET @@session.auto_increment_increment=10; INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2); INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2); SELECT * FROM t1 ORDER BY pk; pk b c 1 1 0 11 2 1 21 3 2 SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c; COUNT(t1.pk) 3 TRUNCATE t1; TRUNCATE t2; SET @@session.auto_increment_offset=5; INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2); INSERT INTO t1 (pk,b,c) VALUES (27,4,3),(NULL,5,4),(99,6,5),(NULL,7,6); INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2); INSERT INTO t2 (pk,b,c) VALUES (27,4,3),(NULL,5,4),(99,6,5),(NULL,7,6); SELECT * FROM t1 ORDER BY pk; pk b c 5 1 0 15 2 1 25 3 2 27 4 3 35 5 4 99 6 5 105 7 6 SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c; COUNT(t1.pk) 7 TRUNCATE t1; TRUNCATE t2; SET @@session.auto_increment_increment=2; INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2); INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2); SELECT * FROM t1 ORDER BY pk; pk b c 1 1 0 3 2 1 5 3 2 SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c; COUNT(t1.pk) 3 DROP TABLE t1, t2; CREATE TABLE t1 ( pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT, b INT NOT NULL, c INT NOT NULL UNIQUE ) ENGINE=NDBCLUSTER AUTO_INCREMENT = 7; CREATE TABLE t2 ( pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT, b INT NOT NULL, c INT NOT NULL UNIQUE ) ENGINE=MYISAM AUTO_INCREMENT = 7; SET @@session.auto_increment_offset=1; SET @@session.auto_increment_increment=1; INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2); INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2); SELECT * FROM t1 ORDER BY pk; pk b c 7 1 0 8 2 1 9 3 2 SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c; COUNT(t1.pk) 3 DROP TABLE t1, t2; CREATE TABLE t1 ( pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT, b INT NOT NULL, c INT NOT NULL UNIQUE ) ENGINE=NDBCLUSTER AUTO_INCREMENT = 3; CREATE TABLE t2 ( pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT, b INT NOT NULL, c INT NOT NULL UNIQUE ) ENGINE=MYISAM AUTO_INCREMENT = 3; SET @@session.auto_increment_offset=5; SET @@session.auto_increment_increment=10; INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2); INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2); SELECT * FROM t1 ORDER BY pk; pk b c 5 1 0 15 2 1 25 3 2 SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c; COUNT(t1.pk) 3 DROP TABLE t1, t2; CREATE TABLE t1 ( pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT, b INT NOT NULL, c INT NOT NULL UNIQUE ) ENGINE=NDBCLUSTER AUTO_INCREMENT = 7; CREATE TABLE t2 ( pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT, b INT NOT NULL, c INT NOT NULL UNIQUE ) ENGINE=MYISAM AUTO_INCREMENT = 7; SET @@session.auto_increment_offset=5; SET @@session.auto_increment_increment=10; INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2); INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2); SELECT * FROM t1 ORDER BY pk; pk b c 15 1 0 25 2 1 35 3 2 SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c; COUNT(t1.pk) 3 DROP TABLE t1, t2; CREATE TABLE t1 ( pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT, b INT NOT NULL, c INT NOT NULL UNIQUE ) ENGINE=NDBCLUSTER AUTO_INCREMENT = 5; CREATE TABLE t2 ( pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT, b INT NOT NULL, c INT NOT NULL UNIQUE ) ENGINE=MYISAM AUTO_INCREMENT = 5; SET @@session.auto_increment_offset=5; SET @@session.auto_increment_increment=10; INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2); INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2); SELECT * FROM t1 ORDER BY pk; pk b c 5 1 0 15 2 1 25 3 2 SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c; COUNT(t1.pk) 3 DROP TABLE t1, t2; CREATE TABLE t1 ( pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT, b INT NOT NULL, c INT NOT NULL UNIQUE ) ENGINE=NDBCLUSTER AUTO_INCREMENT = 100; CREATE TABLE t2 ( pk INT NOT NULL PRIMARY KEY AUTO_INCREMENT, b INT NOT NULL, c INT NOT NULL UNIQUE ) ENGINE=MYISAM AUTO_INCREMENT = 100; SET @@session.auto_increment_offset=5; SET @@session.auto_increment_increment=10; INSERT INTO t1 (b,c) VALUES (1,0),(2,1),(3,2); INSERT INTO t2 (b,c) VALUES (1,0),(2,1),(3,2); SELECT * FROM t1 ORDER BY pk; pk b c 105 1 0 115 2 1 125 3 2 SELECT COUNT(t1.pk) FROM t1, t2 WHERE t1.pk = t2.pk AND t1.b = t2.b AND t1.c = t1.c; COUNT(t1.pk) 3 DROP TABLE t1, t2; SET @@session.auto_increment_offset=1; SET @@session.auto_increment_increment=1; set ndb_autoincrement_prefetch_sz = 32; drop table if exists t1; SET @@session.auto_increment_offset=1; SET @@session.auto_increment_increment=1; set ndb_autoincrement_prefetch_sz = 32; create table t1 (a int not null auto_increment primary key) engine ndb; insert into t1 values (NULL); insert into t1 values (NULL); select * from t1 order by a; a 1 33 insert into t1 values (20); insert into t1 values (NULL); select * from t1 order by a; a 1 20 33 34 insert into t1 values (35); insert into t1 values (NULL); insert into t1 values (NULL); ERROR 23000: Duplicate entry '35' for key 'PRIMARY' select * from t1 order by a; a 1 20 33 34 35 65 insert into t1 values (100); insert into t1 values (NULL); insert into t1 values (NULL); select * from t1 order by a; a 1 20 33 34 35 65 66 100 101 set auto_increment_offset = @old_auto_increment_offset; set auto_increment_increment = @old_auto_increment_increment; set ndb_autoincrement_prefetch_sz = @old_ndb_autoincrement_prefetch_sz; drop table t1; set auto_increment_offset = @old_auto_increment_offset; set auto_increment_increment = @old_auto_increment_increment; set ndb_autoincrement_prefetch_sz = @old_ndb_autoincrement_prefetch_sz; CREATE TABLE `t1` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `k` int(10) unsigned NOT NULL DEFAULT '0', `c` char(120) NOT NULL DEFAULT '', `pad` char(60) NOT NULL DEFAULT '', PRIMARY KEY (`id`), KEY `k` (`k`) ) ENGINE=ndbcluster; CREATE TABLE `t2` ( `evend_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `timestamp` int(11) NOT NULL, `server_id` int(11) NOT NULL, PRIMARY KEY (`evend_id`) ) ENGINE=ndbcluster; insert into t1 values (null,1,'',''),(null,2,'',''); CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN insert into t2(timestamp, server_id) values(UNIX_TIMESTAMP(),@@global.server_id); end; | CREATE TRIGGER tr1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN insert into t2(timestamp, server_id) values(UNIX_TIMESTAMP(),@@global.server_id); end; | update t1 set c='foobar' where id=1; update t1 set c='foobar' where id=1; update t1 set c='foobar' where id=1; update t1 set c='foobar' where id=1; update t1 set c='foobar' where id=1; update t1 set c='foobar' where id=1; update t1 set c='foobar' where id=1; update t1 set c='foobar' where id=1; select evend_id,server_id from t2 order by evend_id; evend_id server_id 1 1 2 2 3 1 4 2 5 1 6 2 7 1 8 2 drop trigger tr1; drop table t1, t2; drop trigger if exists tr1; create table t1 (a int primary key auto_increment, b int) engine=ndb; insert into t1 values (null,1),(null,2),(null,3); show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) NOT NULL AUTO_INCREMENT, `b` int(11) DEFAULT NULL, PRIMARY KEY (`a`) ) ENGINE=ndbcluster AUTO_INCREMENT=4 DEFAULT CHARSET=latin1 drop table t1; create table t1 (a int primary key auto_increment, b int) auto_increment=5 engine=ndb; alter table t1 auto_increment=32000000; show create table t1; Table Create Table t1 CREATE TABLE `t1` ( `a` int(11) NOT NULL AUTO_INCREMENT, `b` int(11) DEFAULT NULL, PRIMARY KEY (`a`) ) ENGINE=ndbcluster AUTO_INCREMENT=32000000 DEFAULT CHARSET=latin1 drop table t1; CREATE TABLE t1 ( id bigint(20) unsigned NOT NULL AUTO_INCREMENT, data binary(16) NOT NULL, PRIMARY KEY (id), UNIQUE KEY uk_t1_data (data) ) ENGINE = NDB; INSERT IGNORE INTO t1 (data) VALUES (6),(6),(6),(6),(6),(6),(6); Warnings: Warning 1062 Duplicate entry '6' for key 'uk_t1_data' Warning 1062 Duplicate entry '6' for key 'uk_t1_data' Warning 1062 Duplicate entry '6' for key 'uk_t1_data' Warning 1062 Duplicate entry '6' for key 'uk_t1_data' Warning 1062 Duplicate entry '6' for key 'uk_t1_data' Warning 1062 Duplicate entry '6' for key 'uk_t1_data' SELECT id FROM t1; id 1 DELETE from t1; INSERT IGNORE INTO t1 (data) VALUES (6),(6),(6),(6),(6),(6),(6); Warnings: Warning 1062 Duplicate entry '6' for key 'uk_t1_data' Warning 1062 Duplicate entry '6' for key 'uk_t1_data' Warning 1062 Duplicate entry '6' for key 'uk_t1_data' Warning 1062 Duplicate entry '6' for key 'uk_t1_data' Warning 1062 Duplicate entry '6' for key 'uk_t1_data' Warning 1062 Duplicate entry '6' for key 'uk_t1_data' SELECT id from t1; id 3 DROP TABLE t1; create table t1 (a serial) engine ndb; set @@insert_id=1; insert into t1 values(null); insert into t1 values(null); insert into t1 values(null); insert into t1 values(null); set @@insert_id=17; insert into t1 values(null); insert into t1 values(null); insert into t1 values(null); select * from t1 order by a; a 1 2 3 4 17 18 19 set @@insert_id=1; insert into t1 values(null); ERROR 23000: Duplicate entry '1' for key 'a' drop table t1;