stop slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
reset master;
reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
set @@global.slave_exec_mode= 'IDEMPOTENT';
CREATE TABLE mysql.ndb_apply_status
( server_id INT UNSIGNED NOT NULL,
epoch BIGINT UNSIGNED NOT NULL,
log_name VARCHAR(255) BINARY NOT NULL,
start_pos BIGINT UNSIGNED NOT NULL,
end_pos BIGINT UNSIGNED NOT NULL,
PRIMARY KEY USING HASH (server_id)) ENGINE=INNODB;
--- Doing pre test cleanup --- 
DROP TABLE IF EXISTS t1;
--- Start test 1 Basic testing ---
--- Create Table Section ---
CREATE TABLE t1 (id MEDIUMINT NOT NULL, b1 BIT(8), vc VARCHAR(255), 
bc CHAR(255), d DECIMAL(10,4) DEFAULT 0, 
f FLOAT DEFAULT 0, total BIGINT UNSIGNED, 
y YEAR, t DATE,PRIMARY KEY(id));
--- Show table on master ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` varchar(255) DEFAULT NULL,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
--- Show table on slave ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` varchar(255) DEFAULT NULL,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
--- Perform basic operation on master ---
--- and ensure replicated correctly ---
"--- Insert into t1 --" as "";
--- Select from t1 on master --- 
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Select from t1 on slave ---
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Update t1 on master --
UPDATE t1 SET b1 = 0, t="2006-02-22" WHERE id = 412;
--- Check the update on master --- 
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Check Update on slave ---
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Remove a record from t1 on master ---
DELETE FROM t1 WHERE id = 42;
--- Show current count on master for t1 ---
SELECT COUNT(*) FROM t1;
COUNT(*)
4
--- Show current count on slave for t1 --- 
SELECT COUNT(*) FROM t1;
COUNT(*)
4
DELETE FROM t1;
--- Check that simple Alter statements are replicated correctly --
ALTER TABLE t1 DROP PRIMARY KEY, ADD PRIMARY KEY(id, total);
ALTER TABLE t1 MODIFY vc TEXT;
--- Show the new improved table on the master ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` text,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned NOT NULL DEFAULT '0',
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL,
  PRIMARY KEY (`id`,`total`)
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
--- Make sure that our tables on slave are still same engine ---
--- and that the alter statements replicated correctly ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` text,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned NOT NULL DEFAULT '0',
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL,
  PRIMARY KEY (`id`,`total`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
--- Perform basic operation on master ---
--- and ensure replicated correctly --- 
"--- Insert into t1 --" as "";
--- Select from t1 on master --- 
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Select from t1 on slave ---
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Update t1 on master --
UPDATE t1 SET b1 = 0, t="2006-02-22" WHERE id = 412;
--- Check the update on master --- 
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Check Update on slave ---
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Remove a record from t1 on master ---
DELETE FROM t1 WHERE id = 42;
--- Show current count on master for t1 ---
SELECT COUNT(*) FROM t1;
COUNT(*)
4
--- Show current count on slave for t1 --- 
SELECT COUNT(*) FROM t1;
COUNT(*)
4
DELETE FROM t1;
--- End test 1 Basic testing ---
--- Do Cleanup --
DROP TABLE IF EXISTS t1;
--- Start test 2 partition RANGE testing --
--- Do setup --
CREATE TABLE t1 (id MEDIUMINT NOT NULL, b1 BIT(8), vc VARCHAR(255), 
bc CHAR(255), d DECIMAL(10,4) DEFAULT 0, 
f FLOAT DEFAULT 0, total BIGINT UNSIGNED, 
y YEAR, t DATE)
PARTITION BY RANGE (YEAR(t)) 
(PARTITION p0 VALUES LESS THAN (1901), 
PARTITION p1 VALUES LESS THAN (1946),  
PARTITION p2 VALUES LESS THAN (1966), 
PARTITION p3 VALUES LESS THAN (1986), 
PARTITION p4 VALUES LESS THAN (2005), 
PARTITION p5 VALUES LESS THAN MAXVALUE);
--- Show table on master ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` varchar(255) DEFAULT NULL,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
/*!50100 PARTITION BY RANGE (YEAR(t))
(PARTITION p0 VALUES LESS THAN (1901) ENGINE = ndbcluster,
 PARTITION p1 VALUES LESS THAN (1946) ENGINE = ndbcluster,
 PARTITION p2 VALUES LESS THAN (1966) ENGINE = ndbcluster,
 PARTITION p3 VALUES LESS THAN (1986) ENGINE = ndbcluster,
 PARTITION p4 VALUES LESS THAN (2005) ENGINE = ndbcluster,
 PARTITION p5 VALUES LESS THAN MAXVALUE ENGINE = ndbcluster) */
--- Show table on slave --
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` varchar(255) DEFAULT NULL,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
/*!50100 PARTITION BY RANGE (YEAR(t))
(PARTITION p0 VALUES LESS THAN (1901) ENGINE = InnoDB,
 PARTITION p1 VALUES LESS THAN (1946) ENGINE = InnoDB,
 PARTITION p2 VALUES LESS THAN (1966) ENGINE = InnoDB,
 PARTITION p3 VALUES LESS THAN (1986) ENGINE = InnoDB,
 PARTITION p4 VALUES LESS THAN (2005) ENGINE = InnoDB,
 PARTITION p5 VALUES LESS THAN MAXVALUE ENGINE = InnoDB) */
--- Perform basic operation on master ---
--- and ensure replicated correctly ---
"--- Insert into t1 --" as "";
--- Select from t1 on master --- 
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Select from t1 on slave ---
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Update t1 on master --
UPDATE t1 SET b1 = 0, t="2006-02-22" WHERE id = 412;
--- Check the update on master --- 
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Check Update on slave ---
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Remove a record from t1 on master ---
DELETE FROM t1 WHERE id = 42;
--- Show current count on master for t1 ---
SELECT COUNT(*) FROM t1;
COUNT(*)
4
--- Show current count on slave for t1 --- 
SELECT COUNT(*) FROM t1;
COUNT(*)
4
DELETE FROM t1;
--- Check that simple Alter statements are replicated correctly ---
ALTER TABLE t1 ADD PRIMARY KEY(t,id);
ALTER TABLE t1 MODIFY vc TEXT;
--- Show the new improved table on the master ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` text,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date NOT NULL DEFAULT '0000-00-00',
  PRIMARY KEY (`t`,`id`)
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
/*!50100 PARTITION BY RANGE (YEAR(t))
(PARTITION p0 VALUES LESS THAN (1901) ENGINE = ndbcluster,
 PARTITION p1 VALUES LESS THAN (1946) ENGINE = ndbcluster,
 PARTITION p2 VALUES LESS THAN (1966) ENGINE = ndbcluster,
 PARTITION p3 VALUES LESS THAN (1986) ENGINE = ndbcluster,
 PARTITION p4 VALUES LESS THAN (2005) ENGINE = ndbcluster,
 PARTITION p5 VALUES LESS THAN MAXVALUE ENGINE = ndbcluster) */
--- Make sure that our tables on slave are still same engine ---
--- and that the alter statements replicated correctly ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` text,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date NOT NULL DEFAULT '0000-00-00',
  PRIMARY KEY (`t`,`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
/*!50100 PARTITION BY RANGE (YEAR(t))
(PARTITION p0 VALUES LESS THAN (1901) ENGINE = InnoDB,
 PARTITION p1 VALUES LESS THAN (1946) ENGINE = InnoDB,
 PARTITION p2 VALUES LESS THAN (1966) ENGINE = InnoDB,
 PARTITION p3 VALUES LESS THAN (1986) ENGINE = InnoDB,
 PARTITION p4 VALUES LESS THAN (2005) ENGINE = InnoDB,
 PARTITION p5 VALUES LESS THAN MAXVALUE ENGINE = InnoDB) */
--- Perform basic operation on master ---
--- and ensure replicated correctly ---
"--- Insert into t1 --" as "";
--- Select from t1 on master --- 
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Select from t1 on slave ---
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Update t1 on master --
UPDATE t1 SET b1 = 0, t="2006-02-22" WHERE id = 412;
--- Check the update on master --- 
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Check Update on slave ---
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Remove a record from t1 on master ---
DELETE FROM t1 WHERE id = 42;
--- Show current count on master for t1 ---
SELECT COUNT(*) FROM t1;
COUNT(*)
4
--- Show current count on slave for t1 --- 
SELECT COUNT(*) FROM t1;
COUNT(*)
4
DELETE FROM t1;
--- End test 2 partition RANGE testing ---
--- Do Cleanup ---
DROP TABLE IF EXISTS t1;
--- Start test 3 partition LIST testing ---
--- Do setup ---
CREATE TABLE t1 (id MEDIUMINT NOT NULL, b1 BIT(8), vc VARCHAR(255), 
bc CHAR(255), d DECIMAL(10,4) DEFAULT 0, 
f FLOAT DEFAULT 0, total BIGINT UNSIGNED, 
y YEAR, t DATE)
PARTITION BY LIST(id) 
(PARTITION p0 VALUES IN (2, 4), 
PARTITION p1 VALUES IN (42, 142));
--- Test 3 Alter to add partition ---
ALTER TABLE t1 ADD PARTITION (PARTITION p2 VALUES IN (412));
--- Show table on master ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` varchar(255) DEFAULT NULL,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
/*!50100 PARTITION BY LIST (id)
(PARTITION p0 VALUES IN (2,4) ENGINE = ndbcluster,
 PARTITION p1 VALUES IN (42,142) ENGINE = ndbcluster,
 PARTITION p2 VALUES IN (412) ENGINE = ndbcluster) */
--- Show table on slave ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` varchar(255) DEFAULT NULL,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
/*!50100 PARTITION BY LIST (id)
(PARTITION p0 VALUES IN (2,4) ENGINE = InnoDB,
 PARTITION p1 VALUES IN (42,142) ENGINE = InnoDB,
 PARTITION p2 VALUES IN (412) ENGINE = InnoDB) */
--- Perform basic operation on master ---
--- and ensure replicated correctly ---
"--- Insert into t1 --" as "";
--- Select from t1 on master --- 
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Select from t1 on slave ---
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Update t1 on master --
UPDATE t1 SET b1 = 0, t="2006-02-22" WHERE id = 412;
--- Check the update on master --- 
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Check Update on slave ---
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Remove a record from t1 on master ---
DELETE FROM t1 WHERE id = 42;
--- Show current count on master for t1 ---
SELECT COUNT(*) FROM t1;
COUNT(*)
4
--- Show current count on slave for t1 --- 
SELECT COUNT(*) FROM t1;
COUNT(*)
4
DELETE FROM t1;
--- Check that simple Alter statements are replicated correctly ---
ALTER TABLE t1 ADD PRIMARY KEY(id);
ALTER TABLE t1 MODIFY vc TEXT;
--- Show the new improved table on the master ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` text,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
/*!50100 PARTITION BY LIST (id)
(PARTITION p0 VALUES IN (2,4) ENGINE = ndbcluster,
 PARTITION p1 VALUES IN (42,142) ENGINE = ndbcluster,
 PARTITION p2 VALUES IN (412) ENGINE = ndbcluster) */
--- Make sure that our tables on slave are still same engine ---
--- and that the alter statements replicated correctly ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` text,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
/*!50100 PARTITION BY LIST (id)
(PARTITION p0 VALUES IN (2,4) ENGINE = InnoDB,
 PARTITION p1 VALUES IN (42,142) ENGINE = InnoDB,
 PARTITION p2 VALUES IN (412) ENGINE = InnoDB) */
--- Perform basic operation on master ---
--- and ensure replicated correctly ---
"--- Insert into t1 --" as "";
--- Select from t1 on master --- 
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Select from t1 on slave ---
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Update t1 on master --
UPDATE t1 SET b1 = 0, t="2006-02-22" WHERE id = 412;
--- Check the update on master --- 
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Check Update on slave ---
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Remove a record from t1 on master ---
DELETE FROM t1 WHERE id = 42;
--- Show current count on master for t1 ---
SELECT COUNT(*) FROM t1;
COUNT(*)
4
--- Show current count on slave for t1 --- 
SELECT COUNT(*) FROM t1;
COUNT(*)
4
DELETE FROM t1;
--- End test 3 partition LIST testing ---
--- Do Cleanup --
DROP TABLE IF EXISTS t1;
--- Start test 4 partition HASH testing ---
--- Do setup ---
CREATE TABLE t1 (id MEDIUMINT NOT NULL, b1 BIT(8), vc VARCHAR(255), 
bc CHAR(255), d DECIMAL(10,4) DEFAULT 0, 
f FLOAT DEFAULT 0, total BIGINT UNSIGNED, 
y YEAR, t DATE)
PARTITION BY HASH( YEAR(t) ) 
PARTITIONS 4;
--- show that tables have been created correctly ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` varchar(255) DEFAULT NULL,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
/*!50100 PARTITION BY HASH ( YEAR(t))
PARTITIONS 4 */
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` varchar(255) DEFAULT NULL,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
/*!50100 PARTITION BY HASH ( YEAR(t))
PARTITIONS 4 */
--- Perform basic operation on master ---
--- and ensure replicated correctly ---
"--- Insert into t1 --" as "";
--- Select from t1 on master --- 
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Select from t1 on slave ---
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Update t1 on master --
UPDATE t1 SET b1 = 0, t="2006-02-22" WHERE id = 412;
--- Check the update on master --- 
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Check Update on slave ---
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Remove a record from t1 on master ---
DELETE FROM t1 WHERE id = 42;
--- Show current count on master for t1 ---
SELECT COUNT(*) FROM t1;
COUNT(*)
4
--- Show current count on slave for t1 --- 
SELECT COUNT(*) FROM t1;
COUNT(*)
4
DELETE FROM t1;
--- Check that simple Alter statements are replicated correctly ---
ALTER TABLE t1 ADD PRIMARY KEY(t,id);
ALTER TABLE t1 MODIFY vc TEXT;
--- Show the new improved table on the master ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` text,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date NOT NULL DEFAULT '0000-00-00',
  PRIMARY KEY (`t`,`id`)
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
/*!50100 PARTITION BY HASH ( YEAR(t))
PARTITIONS 4 */
--- Make sure that our tables on slave are still same engine ---
--- and that the alter statements replicated correctly ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` text,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date NOT NULL DEFAULT '0000-00-00',
  PRIMARY KEY (`t`,`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
/*!50100 PARTITION BY HASH ( YEAR(t))
PARTITIONS 4 */
--- Perform basic operation on master ---
--- and ensure replicated correctly ---
"--- Insert into t1 --" as "";
--- Select from t1 on master --- 
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Select from t1 on slave ---
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Update t1 on master --
UPDATE t1 SET b1 = 0, t="2006-02-22" WHERE id = 412;
--- Check the update on master --- 
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Check Update on slave ---
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Remove a record from t1 on master ---
DELETE FROM t1 WHERE id = 42;
--- Show current count on master for t1 ---
SELECT COUNT(*) FROM t1;
COUNT(*)
4
--- Show current count on slave for t1 --- 
SELECT COUNT(*) FROM t1;
COUNT(*)
4
DELETE FROM t1;
--- End test 4 partition HASH testing ---
--- Do Cleanup --
DROP TABLE IF EXISTS t1;
--- Start test 5 partition by key testing ---
--- Create Table Section ---
CREATE TABLE t1 (id MEDIUMINT NOT NULL, b1 BIT(8), vc VARCHAR(255), 
bc CHAR(255), d DECIMAL(10,4) DEFAULT 0, 
f FLOAT DEFAULT 0, total BIGINT UNSIGNED, 
y YEAR, t DATE,PRIMARY KEY(id))
PARTITION BY KEY() 
PARTITIONS 4;
--- Show that tables on master are ndbcluster tables ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` varchar(255) DEFAULT NULL,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
/*!50100 PARTITION BY KEY ()
PARTITIONS 4 */
--- Show that tables on slave ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` varchar(255) DEFAULT NULL,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned DEFAULT NULL,
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
/*!50100 PARTITION BY KEY ()
PARTITIONS 4 */
--- Perform basic operation on master ---
--- and ensure replicated correctly ---
"--- Insert into t1 --" as "";
--- Select from t1 on master --- 
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Select from t1 on slave ---
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Update t1 on master --
UPDATE t1 SET b1 = 0, t="2006-02-22" WHERE id = 412;
--- Check the update on master --- 
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Check Update on slave ---
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Remove a record from t1 on master ---
DELETE FROM t1 WHERE id = 42;
--- Show current count on master for t1 ---
SELECT COUNT(*) FROM t1;
COUNT(*)
4
--- Show current count on slave for t1 --- 
SELECT COUNT(*) FROM t1;
COUNT(*)
4
DELETE FROM t1;
--- Check that simple Alter statements are replicated correctly ---
ALTER TABLE t1 DROP PRIMARY KEY, ADD PRIMARY KEY(id, total);
--- Show the new improved table on the master ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` varchar(255) DEFAULT NULL,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned NOT NULL DEFAULT '0',
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL,
  PRIMARY KEY (`id`,`total`)
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
/*!50100 PARTITION BY KEY ()
PARTITIONS 4 */
--- Make sure that our tables on slave are still right type ---
--- and that the alter statements replicated correctly ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` varchar(255) DEFAULT NULL,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned NOT NULL DEFAULT '0',
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL,
  PRIMARY KEY (`id`,`total`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
/*!50100 PARTITION BY KEY ()
PARTITIONS 4 */
--- Perform basic operation on master ---
--- and ensure replicated correctly ---
"--- Insert into t1 --" as "";
--- Select from t1 on master --- 
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Select from t1 on slave ---
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Update t1 on master --
UPDATE t1 SET b1 = 0, t="2006-02-22" WHERE id = 412;
--- Check the update on master --- 
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Check Update on slave ---
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Remove a record from t1 on master ---
DELETE FROM t1 WHERE id = 42;
--- Show current count on master for t1 ---
SELECT COUNT(*) FROM t1;
COUNT(*)
4
--- Show current count on slave for t1 --- 
SELECT COUNT(*) FROM t1;
COUNT(*)
4
DELETE FROM t1;
--- Check that simple Alter statements are replicated correctly ---
ALTER TABLE t1 MODIFY vc TEXT;
--- Show the new improved table on the master ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` text,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned NOT NULL DEFAULT '0',
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL,
  PRIMARY KEY (`id`,`total`)
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
/*!50100 PARTITION BY KEY ()
PARTITIONS 4 */
--- Make sure that our tables on slave are still same engine ---
--- and that the alter statements replicated correctly ---
SHOW CREATE TABLE t1;
Table	Create Table
t1	CREATE TABLE `t1` (
  `id` mediumint(9) NOT NULL,
  `b1` bit(8) DEFAULT NULL,
  `vc` text,
  `bc` char(255) DEFAULT NULL,
  `d` decimal(10,4) DEFAULT '0.0000',
  `f` float DEFAULT '0',
  `total` bigint(20) unsigned NOT NULL DEFAULT '0',
  `y` year(4) DEFAULT NULL,
  `t` date DEFAULT NULL,
  PRIMARY KEY (`id`,`total`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
/*!50100 PARTITION BY KEY ()
PARTITIONS 4 */
--- Perform basic operation on master ---
--- and ensure replicated correctly ---
"--- Insert into t1 --" as "";
--- Select from t1 on master --- 
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Select from t1 on slave ---
select id,hex(b1),vc,bc,d,f,total,y,t from t1 order by id;
id	hex(b1)	vc	bc	d	f	total	y	t
2	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1965-11-14
4	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1985-11-14
42	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1905-11-14
142	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	1995-11-14
412	1	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2005-11-14
--- Update t1 on master --
UPDATE t1 SET b1 = 0, t="2006-02-22" WHERE id = 412;
--- Check the update on master --- 
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Check Update on slave ---
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id	hex(b1)	vc	bc	d	f	total	y	t
412	0	Testing MySQL databases is a cool 	Must make it bug free for the customer	654321.4321	15.21	0	1965	2006-02-22
--- Remove a record from t1 on master ---
DELETE FROM t1 WHERE id = 42;
--- Show current count on master for t1 ---
SELECT COUNT(*) FROM t1;
COUNT(*)
4
--- Show current count on slave for t1 --- 
SELECT COUNT(*) FROM t1;
COUNT(*)
4
DELETE FROM t1;
--- End test 5 key partition testing ---
--- Do Cleanup ---
DROP TABLE IF EXISTS t1;
drop table mysql.ndb_apply_status;
