Current Path : /home/usr.opt/mysql57/mysql-test/suite/ndb/t/ |
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 : //home/usr.opt/mysql57/mysql-test/suite/ndb/t/ndb_replace.test |
# The include statement below is a temp one for tests that are yet to #be ported to run with InnoDB, #but needs to be kept for tests that would need MyISAM in future. --source include/force_myisam_default.inc -- source include/have_ndb.inc # # Test of REPLACE with NDB # --disable_warnings drop table if exists t1,t2; --enable_warnings CREATE TABLE t1 ( gesuchnr int(11) DEFAULT '0' NOT NULL, benutzer_id int(11) DEFAULT '0' NOT NULL, PRIMARY KEY (gesuchnr,benutzer_id) ) engine=ndbcluster; replace into t1 (gesuchnr,benutzer_id) values (2,1); replace into t1 (gesuchnr,benutzer_id) values (1,1); replace into t1 (gesuchnr,benutzer_id) values (1,1); insert into t1 (gesuchnr, benutzer_id) value (3,2); replace into t1 (gesuchnr,benutzer_id) values (1,1); replace into t1 (gesuchnr,benutzer_id) values (1,1); --error ER_DUP_ENTRY insert into t1 (gesuchnr,benutzer_id) values (1,1); replace into t1 (gesuchnr,benutzer_id) values (1,1); select * from t1 order by gesuchnr; drop table t1; # End of 4.1 tests # bug#17431 CREATE TABLE t1(i INT PRIMARY KEY AUTO_INCREMENT, j INT, k INT, UNIQUE INDEX(j) ) ENGINE = ndb; INSERT INTO t1 VALUES (1,1,23),(2,2,24); REPLACE INTO t1 (j,k) VALUES (1,42); REPLACE INTO t1 (i,j) VALUES (17,2); SELECT * from t1 ORDER BY i; DROP TABLE t1; # bug#19906 CREATE TABLE t2 (a INT(11) NOT NULL, b INT(11) NOT NULL, c INT(11) NOT NULL, x TEXT, y TEXT, z TEXT, id INT(10) unsigned NOT NULL AUTO_INCREMENT, i INT(11) DEFAULT NULL, PRIMARY KEY (id), UNIQUE KEY a (a,b,c) ) ENGINE=ndbcluster; REPLACE INTO t2 (a,b,c,x,y,z,i) VALUES (1,1,1,'a','a','a',1),(1,1,1,'b','b','b',2), (1,1,1,'c','c','c',3); SELECT * FROM t2 ORDER BY id; REPLACE INTO t2(a,b,c,x,y,z,i) values (1,1,1,'a','a','a',1); REPLACE INTO t2(a,b,c,x,y,z,i) values (1,1,1,'b','b','b',2); SELECT * FROM t2 ORDER BY id; DROP TABLE t2; # # Bug #20728 "REPLACE does not work correctly for NDB table with PK and # unique index" # --disable_warnings drop table if exists t1; --enable_warnings create table t1 (pk int primary key, apk int unique, data int) engine=ndbcluster; # Test for plain replace which updates pk insert into t1 values (1, 1, 1), (2, 2, 2), (3, 3, 3); replace into t1 (pk, apk) values (4, 1), (5, 2); select * from t1 order by pk; delete from t1; # Another test for plain replace which doesn't touch pk insert into t1 values (1, 1, 1), (2, 2, 2), (3, 3, 3); replace into t1 (pk, apk) values (1, 4), (2, 5); select * from t1 order by pk; delete from t1; # Test for load data replace which updates pk insert into t1 values (1, 1, 1), (4, 4, 4), (6, 6, 6); load data infile '../../../std_data/loaddata5.dat' replace into table t1 fields terminated by '' enclosed by '' ignore 1 lines (pk, apk); select * from t1 order by pk; delete from t1; # Now test for load data replace which doesn't touch pk insert into t1 values (1, 1, 1), (3, 3, 3), (5, 5, 5); load data infile '../../../std_data/loaddata5.dat' replace into table t1 fields terminated by '' enclosed by '' ignore 1 lines (pk, apk); select * from t1 order by pk; delete from t1; # Finally test for both types of replace ... select insert into t1 values (1, 1, 1), (2, 2, 2), (3, 3, 3); replace into t1 (pk, apk) select 4, 1; replace into t1 (pk, apk) select 2, 4; select * from t1 order by pk; # Clean-up drop table t1; --echo End of 5.0 tests. # # Bug #22045 "Got error 839 'Illegal null attribute' from NDBCLUSTER when # 'Replace Into'" # # Turn off STRICT since test intentionally generate warnings --source suite/ndb/include/turn_off_strict_sql_mode.inc CREATE TABLE t1(c1 INT NOT NULL PRIMARY KEY, c2 INT NOT NULL DEFAULT 3, c3 INT NULL DEFAULT 7, c4 INT NOT NULL ) ENGINE = NDB; REPLACE INTO t1 (c1) VALUES (5); SELECT * FROM t1; DELETE FROM t1; INSERT INTO t1 (c1) VALUES (5); SELECT * FROM t1; DROP TABLE t1; CREATE TABLE t1(c1 INT NOT NULL, c2 INT NOT NULL DEFAULT 3, c3 INT NULL DEFAULT 7, c4 INT NOT NULL ) ENGINE = NDB; REPLACE INTO t1 (c1) VALUES (5); SELECT * FROM t1; DELETE FROM t1; INSERT INTO t1 (c1) VALUES (5); SELECT * FROM t1; DROP TABLE t1; --source suite/ndb/include/restore_sql_mode_after_turn_off_strict.inc