Commit 75b67205 authored by jmiller@mysql.com's avatar jmiller@mysql.com

More updates for using NDB as default and some bug fixes along the way

parent e5a7238a
###########################################################
# 2006-02-01: By JBM: Added 1022, ORDER BY and PK for NDB
###########################################################
# See if queries that use both auto_increment and LAST_INSERT_ID()
# are replicated well
......@@ -7,16 +10,16 @@
#should work for both SBR and RBR
connection master;
create table t1(a int auto_increment, key(a));
create table t2(b int auto_increment, c int, key(b));
create table t1(a int auto_increment, PRIMARY key(a));
create table t2(b int auto_increment, c int, PRIMARY key(b));
insert into t1 values (1),(2),(3);
insert into t1 values (null);
insert into t2 values (null,last_insert_id());
save_master_pos;
connection slave;
sync_with_master;
select * from t1;
select * from t2;
select * from t1 ORDER BY a;
select * from t2 ORDER BY b;
connection master;
#check if multi-line inserts,
#which set last_insert_id to the first id inserted,
......@@ -44,18 +47,18 @@ connection master;
drop table t2;
drop table t1;
create table t1(a int auto_increment, key(a));
create table t2(b int auto_increment, c int, key(b));
create table t1(a int auto_increment, PRIMARY key(a));
create table t2(b int auto_increment, c int, PRIMARY key(b));
insert into t1 values (10);
insert into t1 values (null),(null),(null);
insert into t2 values (5,0);
insert into t2 (c) select * from t1;
select * from t2;
insert into t2 (c) select * from t1 ORDER BY a;
select * from t2 ORDER BY b;
save_master_pos;
connection slave;
sync_with_master;
select * from t1;
select * from t2;
select * from t1 ORDER BY a;
select * from t2 ORDER BY b;
connection master;
drop table t1;
drop table t2;
......@@ -71,7 +74,7 @@ connection master;
SET TIMESTAMP=1000000000;
CREATE TABLE t1 ( a INT UNIQUE );
SET FOREIGN_KEY_CHECKS=0;
--error 1062
--error 1022, 1062
INSERT INTO t1 VALUES (1),(1);
sync_slave_with_master;
......
......@@ -5,7 +5,7 @@ CREATE TABLE t1 (word CHAR(20) NOT NULL);
LOAD DATA INFILE '../../std_data/words.dat' INTO TABLE t1;
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
eval LOAD DATA LOCAL INFILE '$MYSQL_TEST_DIR/std_data/words.dat' INTO TABLE t1;
SELECT * FROM t1 LIMIT 10;
SELECT * FROM t1 ORDER BY word LIMIT 10;
#
# Test slave with wrong password
......@@ -30,7 +30,7 @@ sleep 2;
CREATE TABLE t3(n INT);
INSERT INTO t3 VALUES(1),(2);
sync_slave_with_master;
SELECT * FROM t3;
SELECT * FROM t3 ORDER BY n;
SELECT SUM(LENGTH(word)) FROM t1;
connection master;
DROP TABLE t1,t3;
......
......@@ -4,18 +4,18 @@ reset master;
reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
create table t1(a int auto_increment, key(a));
create table t2(b int auto_increment, c int, key(b));
create table t1(a int auto_increment, PRIMARY key(a));
create table t2(b int auto_increment, c int, PRIMARY key(b));
insert into t1 values (1),(2),(3);
insert into t1 values (null);
insert into t2 values (null,last_insert_id());
select * from t1;
select * from t1 ORDER BY a;
a
1
2
3
4
select * from t2;
select * from t2 ORDER BY b;
b c
1 4
drop table t1;
......@@ -40,26 +40,26 @@ b c
6 11
drop table t2;
drop table t1;
create table t1(a int auto_increment, key(a));
create table t2(b int auto_increment, c int, key(b));
create table t1(a int auto_increment, PRIMARY key(a));
create table t2(b int auto_increment, c int, PRIMARY key(b));
insert into t1 values (10);
insert into t1 values (null),(null),(null);
insert into t2 values (5,0);
insert into t2 (c) select * from t1;
select * from t2;
insert into t2 (c) select * from t1 ORDER BY a;
select * from t2 ORDER BY b;
b c
5 0
6 10
7 11
8 12
9 13
select * from t1;
select * from t1 ORDER BY a;
a
10
11
12
13
select * from t2;
select * from t2 ORDER BY b;
b c
5 0
6 10
......@@ -72,4 +72,4 @@ SET TIMESTAMP=1000000000;
CREATE TABLE t1 ( a INT UNIQUE );
SET FOREIGN_KEY_CHECKS=0;
INSERT INTO t1 VALUES (1),(1);
ERROR 23000: Duplicate entry '1' for key 1
Got one of the listed errors
......@@ -32,6 +32,8 @@ master-bin.000001 # Query 1 # use `test`; create table t1 (word char(20) not nul
master-bin.000001 # Query 1 # BEGIN
master-bin.000001 # Table_map 1 # cluster_replication.apply_status
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # test.t1
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Query 1 # COMMIT
master-bin.000001 # Query 1 # use `test`; drop table t1
show binlog events from 102 limit 1;
......@@ -68,6 +70,8 @@ master-bin.000001 # Query 1 # use `test`; create table t1 (word char(20) not nul
master-bin.000001 # Query 1 # BEGIN
master-bin.000001 # Table_map 1 # cluster_replication.apply_status
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # test.t1
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Query 1 # COMMIT
master-bin.000001 # Query 1 # use `test`; drop table t1
master-bin.000001 # Rotate 1 # master-bin.000002;pos=4
......@@ -90,12 +94,12 @@ master-bin.000002 # Query 1 # COMMIT
master-bin.000002 # Query 1 # use `test`; drop table t1
show binary logs;
Log_name File_size
master-bin.000001 1087
master-bin.000001 1798
master-bin.000002 991
start slave;
show binary logs;
Log_name File_size
slave-bin.000001 1494
slave-bin.000001 2205
slave-bin.000002 583
show binlog events in 'slave-bin.000001' from 4;
Log_name Pos Event_type Server_id End_log_pos Info
......@@ -112,6 +116,8 @@ slave-bin.000001 # Query 1 # use `test`; create table t1 (word char(20) not null
slave-bin.000001 # Query 2 # BEGIN
slave-bin.000001 # Table_map 2 # cluster_replication.apply_status
slave-bin.000001 # Write_rows 2 #
slave-bin.000001 # Table_map 2 # test.t1
slave-bin.000001 # Write_rows 2 #
slave-bin.000001 # Query 2 # COMMIT
slave-bin.000001 # Query 1 # use `test`; drop table t1
slave-bin.000001 # Query 1 # use `test`; create table t5 (a int)ENGINE=NDB
......
......@@ -7,25 +7,25 @@ start slave;
CREATE TABLE t1 (word CHAR(20) NOT NULL);
LOAD DATA INFILE '../../std_data/words.dat' INTO TABLE t1;
LOAD DATA LOCAL INFILE 'MYSQL_TEST_DIR/std_data/words.dat' INTO TABLE t1;
SELECT * FROM t1 LIMIT 10;
SELECT * FROM t1 ORDER BY word LIMIT 10;
word
Aarhus
Aarhus
Aarhus
Aarhus
Aaron
Aaron
Aaron
Aaron
Ababa
Ababa
aback
abaft
abandon
abandoned
abandoning
abandonment
abandons
STOP SLAVE;
SET PASSWORD FOR root@"localhost" = PASSWORD('foo');
START SLAVE;
SET PASSWORD FOR root@"localhost" = PASSWORD('');
CREATE TABLE t3(n INT);
INSERT INTO t3 VALUES(1),(2);
SELECT * FROM t3;
SELECT * FROM t3 ORDER BY n;
n
1
2
......
......@@ -9,7 +9,7 @@ DROP TABLE IF EXISTS test.t2;
***** Table Create Section ****
CREATE TABLE test.t1 (c1 int not null auto_increment,
data LONGBLOB, PRIMARY KEY(c1))ENGINE=$engine_type;
data LONGBLOB, PRIMARY KEY(c1))ENGINE=engine_type;
**** Data Insert Section test.t1 *****
......@@ -76,7 +76,7 @@ c1 INT NOT NULL PRIMARY KEY,
c2 TEXT,
c3 INT,
c4 LONGBLOB,
KEY(c3))ENGINE=$engine_type;
KEY(c3))ENGINE=engine_type;
*** Setup Values For test.t2 ***
set @x0 = '01234567012345670123456701234567';
......
......@@ -9,7 +9,7 @@ DROP TABLE IF EXISTS test.t2;
***** Table Create Section ****
CREATE TABLE test.t1 (c1 int not null auto_increment,
data LONGBLOB, PRIMARY KEY(c1))ENGINE=$engine_type;
data LONGBLOB, PRIMARY KEY(c1))ENGINE=engine_type;
**** Data Insert Section test.t1 *****
......@@ -76,7 +76,7 @@ c1 INT NOT NULL PRIMARY KEY,
c2 TEXT,
c3 INT,
c4 LONGBLOB,
KEY(c3))ENGINE=$engine_type;
KEY(c3))ENGINE=engine_type;
*** Setup Values For test.t2 ***
set @x0 = '01234567012345670123456701234567';
......
......@@ -13,14 +13,14 @@ CREATE TABLE test.t3 (value CHAR(30),domain_id INT, mailaccount_id INT, program
CREATE TABLE test.t1 (id INT,domain CHAR(30),PRIMARY KEY(id));
CREATE TRIGGER test.t2_ai AFTER INSERT ON test.t2 FOR EACH ROW UPDATE test.t3 ms, test.t1 d SET ms.value='No' WHERE ms.domain_id = (SELECT max(id) FROM test.t1 WHERE domain='example.com') AND ms.mailaccount_id IS NULL AND ms.program='spamfilter' AND ms.keey='scan_incoming'|
INSERT INTO test.t1 VALUES (1, 'example.com'),(2, 'mysql.com'),(3, 'earthmotherwear.com'), (4, 'yahoo.com'),(5, 'example.com');
select * from test.t1;
SELECT * FROM test.t1 ORDER BY id;
id domain
1 example.com
2 mysql.com
3 earthmotherwear.com
4 yahoo.com
5 example.com
select * from test.t1;
SELECT * FROM test.t1 ORDER BY id;
id domain
1 example.com
2 mysql.com
......@@ -45,13 +45,19 @@ value domain_id mailaccount_id program keey
No 5 NULL spamfilter scan_incoming
Yes 1 NULL spamfilter scan_incoming
DELETE FROM test.t1 WHERE id = 1;
select * from test.t1;
SELECT * FROM test.t1 ORDER BY id;
id domain
2 mysql.com
3 earthmotherwear.com
4 yahoo.com
5 example.com
select * from test.t1;
SELECT * FROM test.t1 ORDER BY id;
id domain
2 mysql.com
3 earthmotherwear.com
4 yahoo.com
5 example.com
SELECT * FROM test.t1 ORDER BY id;
id domain
2 mysql.com
3 earthmotherwear.com
......
......@@ -8,7 +8,7 @@ create table t1 (n int not null primary key);
insert into t1 values (1);
insert into t1 values (1);
insert into t1 values (2),(3);
select * from t1;
select * from t1 ORDER BY n;
n
1
2
......
......@@ -15,7 +15,7 @@ insert into t1 values (NULL),(NULL);
flush logs;
truncate table t1;
insert into t1 values (10),(NULL),(NULL),(NULL),(NULL),(NULL);
select * from t1;
select * from t1 ORDER BY n;
n
10
11
......
......@@ -24,15 +24,15 @@ drop table if exists t1,t2;
create table t1(f int);
create table t2(f int);
insert into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
create temporary table t3(f int);
create temporary table t3(f int)ENGINE=MyISAM;
insert into t3 select * from t1 where f<6;
create temporary table t3(f int);
create temporary table t3(f int)ENGINE=MyISAM;
insert into t2 select count(*) from t3;
insert into t3 select * from t1 where f>=4;
drop temporary table t3;
insert into t2 select count(*) from t3;
drop temporary table t3;
select * from t2;
select * from t2 ORDER BY f;
f
5
7
......@@ -46,13 +46,13 @@ SET TIMESTAMP=1040323938;
insert into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
SET TIMESTAMP=1040323945;
SET @@session.pseudo_thread_id=1;
create temporary table t3(f int);
create temporary table t3(f int)ENGINE=MyISAM;
SET TIMESTAMP=1040323952;
SET @@session.pseudo_thread_id=1;
insert into t3 select * from t1 where f<6;
SET TIMESTAMP=1040324145;
SET @@session.pseudo_thread_id=2;
create temporary table t3(f int);
create temporary table t3(f int)ENGINE=MyISAM;
SET TIMESTAMP=1040324186;
SET @@session.pseudo_thread_id=1;
insert into t2 select count(*) from t3;
......@@ -68,9 +68,9 @@ insert into t2 select count(*) from t3;
SET TIMESTAMP=1040324224;
SET @@session.pseudo_thread_id=2;
drop temporary table t3;
select * from t2;
select * from t2 ORDER BY f;
f
5
7
drop table t1,t2;
create temporary table t3 (f int);
create temporary table t3 (f int)ENGINE=MyISAM;
......@@ -2,6 +2,6 @@
# Wrapper for rpl_row_blob.test#
#################################
-- source include/have_innodb.inc
let $engine_type=INNODB;
let $engine_type=InnoDB;
-- source extra/rpl_tests/rpl_row_blob.test
......@@ -37,12 +37,12 @@ delimiter ;|
INSERT INTO test.t1 VALUES (1, 'example.com'),(2, 'mysql.com'),(3, 'earthmotherwear.com'), (4, 'yahoo.com'),(5, 'example.com');
select * from test.t1;
SELECT * FROM test.t1 ORDER BY id;
#show binlog events;
save_master_pos;
connection slave;
sync_with_master;
select * from test.t1;
SELECT * FROM test.t1 ORDER BY id;
connection master;
INSERT INTO test.t3 VALUES ('Yes', 5, NULL, 'spamfilter','scan_incoming');
......@@ -60,11 +60,13 @@ connection master;
DELETE FROM test.t1 WHERE id = 1;
select * from test.t1;
SELECT * FROM test.t1 ORDER BY id;
connection master;
SELECT * FROM test.t1 ORDER BY id;
save_master_pos;
connection slave;
sync_with_master;
select * from test.t1;
SELECT * FROM test.t1 ORDER BY id;
connection master;
#show binlog events;
......
##########################################
# 2006-02-07 By JBM: Added order by
#########################################
source include/master-slave.inc;
create table t1 (n int not null primary key);
......@@ -11,6 +14,6 @@ insert into t1 values (2),(3);
save_master_pos;
connection slave;
sync_with_master;
select * from t1;
select * from t1 ORDER BY n;
# End of 4.1 tests
#############################################################
# 2006-02-07 By JBM added order by
#############################################################
# test to see if replication can continue when master sporadically fails on
# COM_BINLOG_DUMP and additionally limits the number of events per dump
......@@ -18,7 +21,7 @@ flush logs;
truncate table t1;
insert into t1 values (10),(NULL),(NULL),(NULL),(NULL),(NULL);
sync_slave_with_master;
select * from t1;
select * from t1 ORDER BY n;
connection master;
drop table t1,t2;
sync_slave_with_master;
......
#########################################################
# 2006-02-07 By JBM according to 16552 MyISAM should be used
# As work around for NDB using temp tables.
##########################################################
-- source include/master-slave.inc
# Clean up old slave's binlogs.
......@@ -55,12 +60,12 @@ create table t2(f int);
insert into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
connection con1;
create temporary table t3(f int);
create temporary table t3(f int)ENGINE=MyISAM;
insert into t3 select * from t1 where f<6;
sleep 1;
connection con2;
create temporary table t3(f int);
create temporary table t3(f int)ENGINE=MyISAM;
sleep 1;
connection con1;
......@@ -79,7 +84,7 @@ connection con2;
insert into t2 select count(*) from t3;
drop temporary table t3;
select * from t2;
select * from t2 ORDER BY f;
# Commented out 8/30/2005 to make compatable with both sbr and rbr
#--replace_result $VERSION VERSION
......@@ -98,13 +103,13 @@ insert into t1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
SET TIMESTAMP=1040323945;
SET @@session.pseudo_thread_id=1;
create temporary table t3(f int);
create temporary table t3(f int)ENGINE=MyISAM;
SET TIMESTAMP=1040323952;
SET @@session.pseudo_thread_id=1;
insert into t3 select * from t1 where f<6;
SET TIMESTAMP=1040324145;
SET @@session.pseudo_thread_id=2;
create temporary table t3(f int);
create temporary table t3(f int)ENGINE=MyISAM;
SET TIMESTAMP=1040324186;
SET @@session.pseudo_thread_id=1;
insert into t2 select count(*) from t3;
......@@ -121,13 +126,13 @@ SET TIMESTAMP=1040324224;
SET @@session.pseudo_thread_id=2;
drop temporary table t3;
select * from t2;
select * from t2 ORDER BY f;
drop table t1,t2;
# Create last a temporary table that is not dropped at end to ensure that we
# don't get any memory leaks for this
create temporary table t3 (f int);
create temporary table t3 (f int)ENGINE=MyISAM;
sync_with_master;
# The server will now close done
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment