List:Commits« Previous MessageNext Message »
From:Jonathan Miller Date:August 17 2007 3:24pm
Subject:bk commit into 5.1 tree (jmiller:1.2608)
View as plain text  
Below is the list of changes that have just been committed into a local
5.1 repository of ndbdev. When ndbdev does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet@stripped, 2007-08-17 17:23:57+02:00, jmiller@stripped +10 -0
  .del-rpl_ndb_extraColmaster.:
    Delete: mysql-test/r/rpl_ndb_extraColmaster.
  Many files:
    WL#3915  master's cols > slave
    new results
    Updated tests for extra col on Master
  rpl_ndb_extraColmaster.test, rpl_ndb_extraColmaster.result:
    Updated tests for extra col on Master, renamed to match current rpl ndb tests
  rpl_row_extraColmaster_ndb.result:
    so I can delete it
  .del-rpl_row_extraColmaster_ndb.test:
    Delete: mysql-test/t/rpl_row_extraColmaster_ndb.test
  rpl_ndb_extraColmaster.test:
    bk cp t/rpl_extraColmaster_innodb.test t/rpl_ndb_extraColmaster.test
  .del-rpl_row_extraColmaster_ndb.result:
    Delete: mysql-test/r/rpl_row_extraColmaster_ndb.result
  rpl_ndb_extraColmaster.result:
    bk cp r/rpl_extraColmaster_innodb.result r/rpl_ndb_extraColmaster.result
  rpl_ndb_extraColmaster.:
    bk cp r/rpl_extraColmaster_innodb.result r/rpl_ndb_extraColmaster.
  rpl_ndb_extraColmaster.test:
    WL#3915  master's cols > slave
    Test of innodb. Test runs in both statement- and row-based replication.
  rpl_ndb_extraColmaster.results:
    bk cp r/rpl_extraColmaster_innodb.result r/rpl_ndb_extraColmaster.results
  .del-rpl_ndb_extraColmaster.results:
    Delete: mysql-test/r/rpl_ndb_extraColmaster.results
  Many files:
    WL#3915 : (NDB) master's cols > slave
    New result file from changed test.

  BitKeeper/deleted/.del-rpl_ndb_extraColmaster.@1.4, 2007-08-14 20:28:23+02:00, jmiller@stripped +0 -0
    Delete: mysql-test/r/rpl_ndb_extraColmaster.

  mysql-test/r/rpl_ndb_extraColmaster.@1.3, 2007-08-14 20:27:57+02:00, jmiller@stripped +0 -0
    bk cp r/rpl_extraColmaster_innodb.result r/rpl_ndb_extraColmaster.

  mysql-test/r/rpl_ndb_extraColmaster.@1.2, 2007-07-27 23:11:29-04:00, cbell@mysql_cab_desk. +470 -471
    WL#3915 : (NDB) master's cols > slave
    
    New result file from changed test.

  mysql-test/r/rpl_ndb_extraColmaster.@1.1, 2007-07-27 14:45:44-04:00, cbell@mysql_cab_desk. +545 -0
    WL#3915  master's cols > slave
    
    new results
    

  mysql-test/r/rpl_ndb_extraColmaster.@1.0, 2007-07-27 14:45:44-04:00, cbell@mysql_cab_desk. +0 -0

  BitKeeper/deleted/.del-rpl_ndb_extraColmaster.results@stripped, 2007-08-14 20:34:26+02:00, jmiller@stripped +0 -0
    Delete: mysql-test/r/rpl_ndb_extraColmaster.results

  mysql-test/r/rpl_ndb_extraColmaster.results@stripped, 2007-08-14 20:28:04+02:00, jmiller@stripped +0 -0
    bk cp r/rpl_extraColmaster_innodb.result r/rpl_ndb_extraColmaster.results

  mysql-test/r/rpl_ndb_extraColmaster.results@stripped, 2007-07-27 23:11:29-04:00, cbell@mysql_cab_desk. +470 -471
    WL#3915 : (NDB) master's cols > slave
    
    New result file from changed test.

  mysql-test/r/rpl_ndb_extraColmaster.results@stripped, 2007-07-27 14:45:44-04:00, cbell@mysql_cab_desk. +545 -0
    WL#3915  master's cols > slave
    
    new results
    

  mysql-test/r/rpl_ndb_extraColmaster.results@stripped, 2007-07-27 14:45:44-04:00, cbell@mysql_cab_desk. +0 -0

  BitKeeper/deleted/.del-rpl_row_extraColmaster_ndb.result@stripped, 2007-08-15 21:29:46+02:00, jmiller@stripped +0 -0
    Delete: mysql-test/r/rpl_row_extraColmaster_ndb.result

  mysql-test/r/rpl_row_extraColmaster_ndb.result@stripped, 2007-08-15 21:29:43+02:00, jmiller@stripped +621 -270
    so I can delete it

  BitKeeper/deleted/.del-rpl_row_extraColmaster_ndb.test@stripped, 2007-08-15 21:28:51+02:00, jmiller@stripped +0 -0
    Delete: mysql-test/t/rpl_row_extraColmaster_ndb.test

  mysql-test/extra/rpl_tests/rpl_extraMaster_Col.test@stripped, 2007-08-17 17:20:36+02:00, jmiller@stripped +569 -37
    Updated tests for extra col on Master

  mysql-test/r/rpl_extraColmaster_innodb.result@stripped, 2007-08-17 17:21:38+02:00, jmiller@stripped +1855 -527
    Updated tests for extra col on Master

  mysql-test/r/rpl_extraColmaster_myisam.result@stripped, 2007-08-17 17:21:38+02:00, jmiller@stripped +1233 -527
    Updated tests for extra col on Master

  mysql-test/r/rpl_ndb_extraColmaster.result@stripped, 2007-08-17 17:22:25+02:00, jmiller@stripped +606 -525
    Updated tests for extra col on Master, renamed to match current rpl ndb tests

  mysql-test/r/rpl_ndb_extraColmaster.result@stripped, 2007-08-14 20:34:31+02:00, jmiller@stripped +0 -0
    bk cp r/rpl_extraColmaster_innodb.result r/rpl_ndb_extraColmaster.result

  mysql-test/r/rpl_ndb_extraColmaster.result@stripped, 2007-07-27 23:11:29-04:00, cbell@mysql_cab_desk. +470 -471
    WL#3915 : (NDB) master's cols > slave
    
    New result file from changed test.

  mysql-test/r/rpl_ndb_extraColmaster.result@stripped, 2007-07-27 14:45:44-04:00, cbell@mysql_cab_desk. +545 -0
    WL#3915  master's cols > slave
    
    new results
    

  mysql-test/r/rpl_ndb_extraColmaster.result@stripped, 2007-07-27 14:45:44-04:00, cbell@mysql_cab_desk. +0 -0

  mysql-test/t/rpl_extraColmaster_innodb.test@stripped, 2007-08-17 17:21:19+02:00, jmiller@stripped +2 -0
    Updated tests for extra col on Master

  mysql-test/t/rpl_ndb_extraColmaster.test@stripped, 2007-08-17 17:22:41+02:00, jmiller@stripped +4 -7
    Updated tests for extra col on Master, renamed to match current rpl ndb tests

  mysql-test/t/rpl_ndb_extraColmaster.test@stripped, 2007-08-14 20:26:14+02:00, jmiller@stripped +0 -0
    bk cp t/rpl_extraColmaster_innodb.test t/rpl_ndb_extraColmaster.test

  mysql-test/t/rpl_ndb_extraColmaster.test@stripped, 2007-07-27 14:45:42-04:00, cbell@mysql_cab_desk. +15 -0
    WL#3915  master's cols > slave
    
    Test of innodb. Test runs in both statement- and row-based replication.
    

  mysql-test/t/rpl_ndb_extraColmaster.test@stripped, 2007-07-27 14:45:42-04:00, cbell@mysql_cab_desk. +0 -0

# This is a BitKeeper patch.  What follows are the unified diffs for the
# set of deltas contained in the patch.  The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User:	jmiller
# Host:	ndb08.mysql.com
# Root:	/data1/mysql-5.1-telco-6.2-new

--- 1.2/mysql-test/extra/rpl_tests/rpl_extraMaster_Col.test	2007-08-17 17:24:08 +02:00
+++ 1.3/mysql-test/extra/rpl_tests/rpl_extraMaster_Col.test	2007-08-17 17:24:08 +02:00
@@ -1,16 +1,22 @@
 #############################################################
+# Author: Chuck
+#############################################################
 # Purpose: To test having extra columns on the master WL#3915
 # engine inspecific sourced part
 #############################################################
-
+# Change Author: Jeb
+# Change: Cleanup and extend testing
+#############################################################
 # TODO: partition specific
 # -- source include/have_partition.inc
+# Note: Will be done in different test due to NDB using this
+#       test case.
+############################################################
 
 ########### Clean up ################
 --disable_warnings
 --disable_query_log
-DROP TABLE IF EXISTS  t1,t2,t3,t4,t31;
-
+DROP TABLE IF EXISTS  t1,t2,t3,t4,t10,t11,t12,t13,t14,t15,t31;
 --enable_query_log
 --enable_warnings
 
@@ -70,41 +76,86 @@
 #VARCHAR(M)    
 #
 
-
+let $binformat = `SHOW VARIABLES LIKE '%binlog_format%'`;
+--echo
+--echo ***********************************************************
+--echo ***********************************************************
+--echo ***************** Start of Testing ************************
+--echo ***********************************************************
+--echo ***********************************************************
+--echo * This test format == $binformat and engine == $engine_type
+--echo ***********************************************************
+--echo ***********************************************************
+--echo
+--echo ***** Testing more columns on the Master *****
+--echo
 connection master;
-    eval CREATE TABLE t1 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
+eval CREATE TABLE t1 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
                       /* extra */
-                       f5 FLOAT DEFAULT '2.00', 
-                       f6 CHAR(4) DEFAULT 'TEST',
-		       f7 INT DEFAULT '0',
-		       f8 TEXT,
-		       f9 LONGBLOB,
-           f10 BIT(63),
-		       f11 VARBINARY(64))
-                      ENGINE=$engine_type;
-
-#connection slave;
-   sync_slave_with_master;
-   alter table t1 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11;
-
+                      f5 FLOAT DEFAULT '2.00', 
+                      f6 CHAR(4) DEFAULT 'TEST',
+                      f7 INT DEFAULT '0',
+                      f8 TEXT,
+                      f9 LONGBLOB,
+                      f10 BIT(63),
+                      f11 VARBINARY(64))ENGINE=$engine_type;
+--echo
+--echo * Alter Table on Slave and drop columns f5 through f11 *
+--echo
+sync_slave_with_master;
+alter table t1 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11;
+
+--echo
+--echo * Insert data in Master then update and delete some rows*
+--echo
 connection master;
+let $j= 50;
+--disable_query_log
+while ($j)
+{
+  eval INSERT INTO t1 VALUES ($j, $j, $j, 'second', 2.0, 'kaks', 2, 
+                              'got stolen from the paradise', 
+                              'very fat blob', b'01010101010101', 
+                              0x123456);
+  dec $j;
+}
+let $j= 30;
+while ($j)
+{
+ eval update t1 set f4= 'next' where f1=$j; 
+ dec $j;
+ dec $j;
+ eval delete from t1 where f1=$j;
+ dec $j;
+}
+--enable_query_log
 
-   INSERT into t1 values (1, 1, 1, 'first', 1.0, 'yksi', 1, 'lounge of happiness', 'very fat blob', b'01010101010101', 0x123456);
-   INSERT into t1 values (2, 2, 2, 'second', 2.0, 'kaks', 2, 'got stolen from the paradise', 'very fat blob', b'01010101010101', 0x123456), (3, 3, 3, 'third', 3.0, 'kolm', 3, 'got stolen from the paradise', 'very fat blob', b'01010101010101', 0x123456);
-   update t1 set f4= 'next' where f1=1;
-   delete from t1 where f1=1;
-
-   select * from t1 order by f3;
-
+--echo * Select count and 20 rows from Master *
+--echo
+SELECT COUNT(*) FROM t1;
+--echo
+SELECT * FROM t1 ORDER BY f3 LIMIT 20;
 
 #connection slave;
-   sync_slave_with_master;
+sync_slave_with_master;
+--echo
+--echo * Select count and 20 rows from Slave *
+--echo
+SELECT COUNT(*) FROM t1;
+--echo
+SELECT * FROM t1 ORDER BY f3 LIMIT 20;
+
+--echo
+--echo * Show Slave Status *
+--echo
 --replace_column 1 # 4 # 7 # 8 # 9 # 22 # 23 # 33 #
 --query_vertical show slave status;
-   select * from t1 order by f3;
-
+--echo
 
 ### Altering table def scenario
+--echo
+--echo ***** Testing Altering table def scenario *****
+--echo
 
 connection master;
 
@@ -119,7 +170,7 @@
 		       f11 BINARY(20) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
 		       f12 SET('a', 'b', 'c') default 'b')
                        ENGINE=$engine_type;
-
+--echo
    eval CREATE TABLE t3 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
                       /* extra */
                        f5 DOUBLE DEFAULT '2.00', 
@@ -130,7 +181,7 @@
 		       f12 SET('a', 'b', 'c') default 'b')
                        ENGINE=$engine_type;
 
-
+--echo
 # no ENUM and SET
     eval CREATE TABLE t4 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
                       /* extra */
@@ -143,7 +194,7 @@
 		       f11 CHAR(255))
                        ENGINE=$engine_type;
 
-
+--echo
     eval CREATE TABLE t31 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
                        
                        /* extra */
@@ -180,7 +231,9 @@
 		       f34 VARBINARY(1025),
 		       f35 VARCHAR(257)       
                        ) ENGINE=$engine_type;
-
+--echo
+--echo ** Alter tables on slave and drop columns **
+--echo
 #connection slave;
     sync_slave_with_master;
     alter table t2 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11, drop
@@ -195,8 +248,8 @@
        drop f26, drop f27, drop f28, drop f29, drop f30, drop f31, drop f32,
        drop f33, drop f34, drop f35;
                  
-
-
+--echo
+--echo ** Insert Data into Master **
 connection master;
    INSERT into t2 set f1=1, f2=1, f3=1, f4='first', f8='f8: medium size blob', f10='f10:
 some var char';
@@ -345,7 +398,10 @@
        /*f34 VARBINARY(1025),*/      '3333 minus 3',
        /*f35 VARCHAR(257),*/         NULL
        );
-   
+--echo 
+--echo ** Sync slave with master ** 
+--echo ** Do selects from tables **
+--echo  
 #connection slave;
    sync_slave_with_master;
 
@@ -356,18 +412,27 @@
    select * from t31 order by f1;
    
 connection master;
-
+--echo
+--echo ** Do updates master **
+--echo
    update t31 set f5=555555555555555 where f3=6;
    update t31 set f2=2 where f3=2;
    update t31 set f1=NULL where f3=1;
    update t31 set f3=NULL, f27=NULL, f35='f35 new value' where f3=3;
 
+--echo
+--echo ** Delete from Master **
+--echo
+
    delete from t1;
    delete from t2;
    delete from t3;
    delete from t4;
    delete from t31;
 
+--echo
+--echo ** Check slave status **
+--echo
 #connection slave;
    sync_slave_with_master;
    select * from t31;
@@ -383,11 +448,478 @@
 --disable_query_log
   DROP TABLE t1,t2,t3,t4,t31;
 
+######################################################
 #connection slave;
   sync_slave_with_master;
 --enable_query_log
 --enable_warnings
+--echo
+--echo ****************************************
+--echo * columns in master at middle of table *
+--echo * Expect: Proper error message         *
+--echo ****************************************
+--echo
+--echo ** Stop and Reset Slave **
+--echo
+STOP SLAVE;
+RESET SLAVE;
+--echo
+--echo ** create table slave side **
+eval CREATE TABLE t10 (a INT PRIMARY KEY, b BLOB, c CHAR(5)
+                       ) ENGINE=$engine_type;
+
+--echo
+--echo ** Connect to master and create table **
+--echo
+--connection master
+eval CREATE TABLE t10 (a INT KEY, b BLOB, f DOUBLE DEFAULT '233',
+                      c CHAR(5), e INT DEFAULT '1')ENGINE=$engine_type;
+RESET MASTER;
+
+--echo
+--echo *** Start Slave ***
+connection slave;
+START SLAVE;
+
+--echo
+--echo *** Master Data Insert ***
+connection master;
+set @b1 = 'b1b1b1b1';
+set @b1 = concat(@b1,@b1);
+INSERT INTO t10 () VALUES(1,@b1,DEFAULT,'Kyle',DEFAULT),
+                         (2,@b1,DEFAULT,'JOE',DEFAULT),
+                         (3,@b1,DEFAULT,'QA',DEFAULT);
+
+--echo
+--echo ********************************************
+--echo *** Expect slave to fail with Error 1523 ***
+--echo ********************************************
+--echo
+connection slave;
+wait_for_slave_to_stop;
+--replace_result $MASTER_MYPORT MASTER_PORT
+--replace_column 1 # 7 # 8 # 9 # 22 # 23 # 33 #
+--query_vertical SHOW SLAVE STATUS
+SET GLOBAL SQL_SLAVE_SKIP_COUNTER=2;
+START SLAVE;
+
+--echo
+--echo *** Drop t10  ***
+connection master;
+DROP TABLE t10;
+sync_slave_with_master;
+
+############################################
+############## Continued ###################
+############################################
+--echo
+--echo *********************************************
+--echo * More columns in master at middle of table *
+--echo * Expect: Proper error message              *
+--echo *********************************************
+--echo
+--echo  *** Create t11 on slave  ***
+STOP SLAVE;
+RESET SLAVE;
+
+eval CREATE TABLE t11 (a INT PRIMARY KEY, b BLOB, c VARCHAR(254)
+                       ) ENGINE=$engine_type;
+
+--echo
+--echo *** Create t11 on Master ***
+connection master;
+eval CREATE TABLE t11 (a INT KEY, b BLOB, f TEXT,
+                      c CHAR(5) DEFAULT 'test', e INT DEFAULT '1')ENGINE=$engine_type;
+
+RESET MASTER;
+
+--echo
+--echo *** Start Slave ***
+connection slave;
+START SLAVE;
+
+--echo
+--echo *** Master Data Insert ***
+connection master;
+set @b1 = 'b1b1b1b1';
+set @b1 = concat(@b1,@b1);
+INSERT INTO t11 () VALUES(1,@b1,'Testing is fun','Kyle',DEFAULT),
+                         (2,@b1,'Testing is cool','JOE',DEFAULT),
+                         (3,@b1,DEFAULT,'QA',DEFAULT);
+
+--echo
+--echo ********************************************
+--echo *** Expect slave to fail with Error 1523 ***
+--echo ********************************************
+--echo
+connection slave;
+wait_for_slave_to_stop;
+--replace_result $MASTER_MYPORT MASTER_PORT
+--replace_column 1 # 7 # 8 # 9 # 22 # 23 # 33 #
+--query_vertical SHOW SLAVE STATUS
+SET GLOBAL SQL_SLAVE_SKIP_COUNTER=2;
+START SLAVE;
+
+--echo
+--echo *** Drop t11  ***
+connection master;
+DROP TABLE t11;
+sync_slave_with_master;
+
+############################################
+############## Continued ###################
+############################################
+--echo
+--echo *********************************************
+--echo * More columns in master at middle of table *
+--echo * Expect: This one should pass blob-text    *
+--echo *********************************************
+--echo
+--echo  *** Create t12 on slave  ***
+STOP SLAVE;
+RESET SLAVE;
+eval CREATE TABLE t12 (a INT PRIMARY KEY, b BLOB, c BLOB
+                       ) ENGINE=$engine_type;
+
+--echo
+--echo *** Create t12 on Master ***
+connection master;
+eval CREATE TABLE t12 (a INT KEY, b BLOB, f TEXT,
+                      c CHAR(5) DEFAULT 'test', e INT DEFAULT '1')ENGINE=$engine_type;
+
+RESET MASTER;
+
+--echo
+--echo *** Start Slave ***
+connection slave;
+START SLAVE;
+
+--echo
+--echo *** Master Data Insert ***
+connection master;
+set @b1 = 'b1b1b1b1';
+set @b1 = concat(@b1,@b1);
+INSERT INTO t12 () VALUES(1,@b1,'Kyle',DEFAULT,DEFAULT),
+                         (2,@b1,'JOE',DEFAULT,DEFAULT),
+                         (3,@b1,'QA',DEFAULT,DEFAULT);
+--echo
+SELECT * FROM t12 ORDER BY a;
+
+--echo
+--echo *** Select on Slave ***
+sync_slave_with_master;
+SELECT * FROM t12 ORDER BY a;
+
+--echo
+--echo *** Drop t12  ***
+connection master;
+DROP TABLE t12;
+sync_slave_with_master;
+
+############################################
+############## Continued ###################
+############################################
+--echo
+--echo ****************************************************
+--echo * - Alter Master adding columns at middle of table *
+--echo *   Expect: columns added                          *
+--echo ****************************************************
+--echo
+--echo
+--echo *** Create t14 on slave  ***
+STOP SLAVE;
+RESET SLAVE;
+eval CREATE TABLE t14 (c1 INT PRIMARY KEY, c4 BLOB, c5 CHAR(5)
+                       ) ENGINE=$engine_type;
+
+--echo
+--echo *** Create t14 on Master ***
+connection master;
+eval CREATE TABLE t14 (c1 INT KEY, c4 BLOB, c5 CHAR(5),
+                      c6 INT DEFAULT '1',
+                      c7 TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP
+                      )ENGINE=$engine_type;
+
+RESET MASTER;
+
+--echo
+--echo *** Start Slave ***
+connection slave;
+START SLAVE;
+
+--echo
+--echo *** Master Data Insert ***
+connection master;
+ALTER TABLE t14 ADD COLUMN c2 DECIMAL(8,2) AFTER c1;
+ALTER TABLE t14 ADD COLUMN c3 TEXT AFTER c2;
+--echo
+set @b1 = 'b1b1b1b1';
+set @b1 = concat(@b1,@b1);
+INSERT INTO t14 () VALUES(1,1.00,'Replication Testing Extra Col',@b1,'Kyle',DEFAULT,DEFAULT),
+                        (2,2.00,'This Test Should work',@b1,'JOE',DEFAULT,DEFAULT),
+                        (3,3.00,'If is does not, I will open a bug',@b1,'QA',DEFAULT,DEFAULT);
+--echo
+--replace_column 7 CURRENT_TIMESTAMP
+SELECT * FROM t14 ORDER BY c1;
+
+--echo
+--echo *** Select on Slave ****
+sync_slave_with_master;
+SELECT * FROM t14 ORDER BY c1;
+
+####################################################
+--echo
+--echo ****************************************************
+--echo * - Alter Master Dropping columns from the middle. *
+--echo *   Expect: columns dropped                        *
+--echo ****************************************************
+--echo
+--echo *** connect to master and drop columns ***
+connection master;
+ALTER TABLE t14 DROP COLUMN c2;
+ALTER TABLE t14 DROP COLUMN c7;
+--echo
+--echo *** Select from Master ***
+SELECT * FROM t14 ORDER BY c1;
+--echo
+
+--echo ************
+--echo * Bug30415 *
+--echo ************
+# Uncomment below once fixed
+
+#--echo *** Select from Slave ***
+#sync_slave_with_master;
+#SELECT * FROM t14 ORDER BY c1;
+
+# Bug30415
+# Remove below once fixed
+#***************************
+connection slave;
+wait_for_slave_to_stop;
+--replace_result $MASTER_MYPORT MASTER_PORT
+--replace_column 1 # 7 # 8 # 9 # 22 # 23 # 33 #
+--query_vertical SHOW SLAVE STATUS
+#***************************
+
+STOP SLAVE;
+RESET SLAVE;
+
+--echo
+--echo *** Drop t14  ***
+DROP TABLE t14;
+
+connection master;
+DROP TABLE t14;
+RESET MASTER;
+
+connection slave;
+START SLAVE;
+
+#################################################
+--echo
+--echo *************************************************
+--echo * - Alter Master adding columns at end of table *
+--echo *   Expect: Error 1054                          *
+--echo *************************************************
+--echo
+--echo *** Create t15 on slave  ***
+STOP SLAVE;
+RESET SLAVE;
+eval CREATE TABLE t15 (c1 INT PRIMARY KEY, c4 BLOB, c5 CHAR(5)
+                       ) ENGINE=$engine_type;
+
+--echo
+--echo *** Create t15 on Master ***
+connection master;
+eval CREATE TABLE t15 (c1 INT KEY, c4 BLOB, c5 CHAR(5),
+                      c6 INT DEFAULT '1',
+                      c7 TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP
+                      )ENGINE=$engine_type;
+
+RESET MASTER;
+
+--echo
+--echo *** Start Slave ***
+connection slave;
+START SLAVE;
+
+--echo
+--echo *** Master Data Insert ***
+connection master;
+ALTER TABLE t15 ADD COLUMN c2 DECIMAL(8,2) AFTER c7;
+set @b1 = 'b1b1b1b1';
+set @b1 = concat(@b1,@b1);
+INSERT INTO t15 () VALUES(1,@b1,'Kyle',DEFAULT,DEFAULT,3.00),
+                        (2,@b1,'JOE',DEFAULT,DEFAULT,3.00),
+                        (3,@b1,'QA',DEFAULT,DEFAULT,3.00);
+--replace_column 5 CURRENT_TIMESTAMP
+SELECT * FROM t15 ORDER BY c1;
+
+--echo
+--echo ********************************************
+--echo *** Expect slave to fail with Error 1054 ***
+--echo ********************************************
+--echo
+connection slave;
+wait_for_slave_to_stop;
+--replace_result $MASTER_MYPORT MASTER_PORT
+--replace_column 1 # 7 # 8 # 9 # 22 # 23 # 33 #
+--query_vertical SHOW SLAVE STATUS
+STOP SLAVE;
+RESET SLAVE;
+
+--echo
+--echo *** Drop t15  ***
+DROP TABLE t15;
+
+connection master;
+DROP TABLE t15;
+RESET MASTER;
+
+connection slave;
+START SLAVE;
+
+####################################################
+--echo
+--echo ************************************************
+--echo * - Create index on Master column not on slave *
+--echo *   Expect:Warning                             *
+--echo ************************************************
+--echo
+--echo *** Create t16 on slave  ***
+STOP SLAVE;
+RESET SLAVE;
+eval CREATE TABLE t16 (c1 INT PRIMARY KEY, c4 BLOB, c5 CHAR(5)
+                       ) ENGINE=$engine_type;
+
+--echo
+--echo *** Create t16 on Master ***
+connection master;
+eval CREATE TABLE t16 (c1 INT KEY, c4 BLOB, c5 CHAR(5),
+                      c6 INT DEFAULT '1',
+                      c7 TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP
+                      )ENGINE=$engine_type;
+
+RESET MASTER;
+
+--echo
+--echo *** Start Slave ***
+connection slave;
+START SLAVE;
+
+--echo
+--echo *** Master Create Index and Data Insert ***
+connection master;
+CREATE INDEX part_of_c6 ON t16 (c6);
+set @b1 = 'b1b1b1b1';
+set @b1 = concat(@b1,@b1);
+INSERT INTO t16 () VALUES(1,@b1,'Kyle',DEFAULT,DEFAULT),
+                        (2,@b1,'JOE',2,DEFAULT),
+                        (3,@b1,'QA',3,DEFAULT);
+--replace_column 5 CURRENT_TIMESTAMP
+SELECT * FROM t16 ORDER BY c1;
+
+# Uncomment the below when bug 30434 is patched
+
+#--echo *** Select on Slave ****
+#sync_slave_with_master;
+#SELECT * FROM t16 ORDER BY c1;
+#
+#--echo *** Drop t16  ***
+#connection master;
+#DROP TABLE t16;
+#sync_slave_with_master;
+
+# Remove the below when bug 30434 is patched
+#*******************************************
+--echo
+--echo *****************
+--echo *** BUG 30434 ***
+--echo *****************
+--echo
+connection slave;
+wait_for_slave_to_stop;
+--replace_result $MASTER_MYPORT MASTER_PORT
+--replace_column 1 # 7 # 8 # 9 # 22 # 23 # 33 #
+--query_vertical SHOW SLAVE STATUS
+STOP SLAVE;
+RESET SLAVE;
+
+--echo
+--echo *** Drop t16  ***
+DROP TABLE t16;
+
+connection master;
+DROP TABLE t16;
+RESET MASTER;
+
+connection slave;
+START SLAVE;
+#*******************************************
+
+####################################################
+--echo
+--echo *****************************************************
+--echo * - Delete rows using column on Master not on slave *
+--echo *   Expect: Rows Deleted                            *
+--echo *****************************************************
+--echo
+--echo *** Create t17 on slave  ***
+STOP SLAVE;
+RESET SLAVE;
+eval CREATE TABLE t17 (c1 INT PRIMARY KEY, c4 BLOB, c5 CHAR(5)
+                       ) ENGINE=$engine_type;
+
+--echo
+--echo *** Create t17 on Master ***
+connection master;
+eval CREATE TABLE t17 (c1 INT KEY, c4 BLOB, c5 CHAR(5),
+                      c6 INT DEFAULT '1',
+                      c7 TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP
+                      )ENGINE=$engine_type;
+
+RESET MASTER;
+
+--echo
+--echo *** Start Slave ***
+connection slave;
+START SLAVE;
+
+--echo
+--echo *** Master Data Insert ***
+connection master;
+set @b1 = 'b1b1b1b1';
+set @b1 = concat(@b1,@b1);
+INSERT INTO t17 () VALUES(1,@b1,'Kyle',DEFAULT,DEFAULT),
+                        (2,@b1,'JOE',2,DEFAULT),
+                        (3,@b1,'QA',3,DEFAULT);
+--replace_column 5 CURRENT_TIMESTAMP
+SELECT * FROM t17 ORDER BY c1;
+
+--echo
+--echo ** Select * from Slave **
+sync_slave_with_master;
+SELECT * FROM t17 ORDER BY c1;
+
+--echo
+--echo ** Delete from master **
+connection master;
+DELETE FROM t17 WHERE c6 = 3;
+--replace_column 5 CURRENT_TIMESTAMP
+SELECT * FROM t17 ORDER BY c1;
+
+--echo 
+--echo ** Check slave **
+sync_slave_with_master;
+SELECT * FROM t17 ORDER BY c1;
+
+
+connection master;
+DROP TABLE t17;
+sync_slave_with_master;
+--echo
 
-# END of the tests
+# END of 5.1 tests case
 
 

Binary files /tmp/bk_rpl_extraColmaster_innodb.result-1.2_c2Vm89 and /tmp/bk_rpl_extraColmaster_innodb.result-1.3_jMoADB differ

Binary files /tmp/bk_rpl_extraColmaster_myisam.result-1.2_LRKDFu and /tmp/bk_rpl_extraColmaster_myisam.result-1.3_2XBpcW differ
--- New file ---
+++ BitKeeper/deleted/.del-rpl_ndb_extraColmaster.results	07/07/27 14:45:44
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 binlog_format=row;
CREATE TABLE t1 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 FLOAT DEFAULT '2.00', 
f6 CHAR(4) DEFAULT 'TEST',
f7 INT DEFAULT '0',
f8 TEXT,
f9 LONGBLOB,
f10 BIT(63),
f11 VARBINARY(64))
ENGINE='InnoDB';
alter table t1 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11;
INSERT into t1 values (1, 1, 1, 'first', 1.0, 'yksi', 1, 'lounge of happiness', 'very fat blob', b'01010101010101', 0x123456);
INSERT into t1 values (2, 2, 2, 'second', 2.0, 'kaks', 2, 'got stolen from the paradise', 'very fat blob', b'01010101010101', 0x123456), (3, 3, 3, 'third', 3.0, 'kolm', 3, 'got stolen from the paradise', 'very fat blob', b'01010101010101', 0x123456);
update t1 set f4= 'next' where f1=1;
delete from t1 where f1=1;
select * from t1 order by f3;
f1	f2	f3	f4	f5	f6	f7	f8	f9	f10	f11
2	2	2	second	2	kaks	2	got stolen from the paradise	very fat blob	
3	3	3	third	3	kolm	3	got stolen from the paradise	very fat blob	
show slave status;;
Slave_IO_State	#
Master_Host	127.0.0.1
Master_User	root
Master_Port	#
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	#
Relay_Log_File	#
Relay_Log_Pos	#
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	Yes
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	0
Last_Error	
Skip_Counter	0
Exec_Master_Log_Pos	#
Relay_Log_Space	#
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	#
Master_SSL_Verify_Server_Cert	No
select * from t1 order by f3;
f1	f2	f3	f4
2	2	2	second
3	3	3	third
CREATE TABLE t2 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 DOUBLE DEFAULT '2.00', 
f6 ENUM('a', 'b', 'c') default 'a',
f7 DECIMAL(17,9) default '1000.00',
f8 MEDIUMBLOB,
f9 NUMERIC(6,4) default '2000.00',
f10 VARCHAR(1024),
f11 BINARY(20) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
f12 SET('a', 'b', 'c') default 'b')
ENGINE='InnoDB';
Warnings:
Warning	1264	Out of range value for column 'f9' at row 1
CREATE TABLE t3 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 DOUBLE DEFAULT '2.00', 
f6 ENUM('a', 'b', 'c') default 'a',
f8 MEDIUMBLOB,
f10 VARCHAR(1024),
f11 BINARY(20) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
f12 SET('a', 'b', 'c') default 'b')
ENGINE='InnoDB';
CREATE TABLE t4 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 DOUBLE DEFAULT '2.00', 
f6 DECIMAL(17,9) default '1000.00',
f7 MEDIUMBLOB,
f8 NUMERIC(6,4) default '2000.00',
f9 VARCHAR(1024),
f10 BINARY(20) not null default '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
f11 CHAR(255))
ENGINE='InnoDB';
Warnings:
Warning	1264	Out of range value for column 'f8' at row 1
CREATE TABLE t31 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5  BIGINT,
f6  BLOB,
f7  DATE,
f8  DATETIME,
f9  FLOAT,
f10 INT,
f11 LONGBLOB,
f12 LONGTEXT,
f13 MEDIUMBLOB,
f14 MEDIUMINT,
f15 MEDIUMTEXT,
f16 REAL,
f17 SMALLINT,
f18 TEXT,
f19 TIME,
f20 TIMESTAMP,
f21 TINYBLOB,
f22 TINYINT,
f23 TINYTEXT,
f24 YEAR,
f25 BINARY(255),
f26 BIT(64),
f27 CHAR(255),
f28 DECIMAL(30,7),
f29 DOUBLE,
f30 ENUM ('a','b', 'c') default 'a',
f31 FLOAT,
f32 NUMERIC(17,9),
f33 SET ('a', 'b', 'c') default 'b',
f34 VARBINARY(1025),
f35 VARCHAR(257)       
) ENGINE='InnoDB';
alter table t2 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11, drop
f12;
alter table t3 drop f5, drop f6, drop f8, drop f10, drop f11, drop f12;
alter table t4 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11;
alter table t31 
drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11,
drop f12, drop f13, drop f14, drop f15, drop f16, drop f17, drop f18,
drop f19, drop f20, drop f21, drop f22, drop f23, drop f24, drop f25,
drop f26, drop f27, drop f28, drop f29, drop f30, drop f31, drop f32,
drop f33, drop f34, drop f35;
INSERT into t2 set f1=1, f2=1, f3=1, f4='first', f8='f8: medium size blob', f10='f10:
some var char';
INSERT into t2 values (2, 2, 2, 'second',
2.0, 'b', 2000.0002, 'f8: medium size blob', 2000, 'f10: some var char',
'01234567', 'c'),
(3, 3, 3, 'third',
3.0, 'b', 3000.0003, 'f8: medium size blob', 3000, 'f10: some var char',
'01234567', 'c');
Warnings:
Warning	1264	Out of range value for column 'f9' at row 1
Warning	1264	Out of range value for column 'f9' at row 2
INSERT into t3 set f1=1, f2=1, f3=1, f4='first', f10='f10: some var char';
INSERT into t4 set f1=1, f2=1, f3=1, f4='first', f7='f7: medium size blob', f10='f10:
binary data';
INSERT into t31 set f1=1, f2=1, f3=1, f4='first';
INSERT into t31 set f1=1, f2=1, f3=2, f4='second',
f9=2.2,  f10='seven samurai', f28=222.222, f35='222';
Warnings:
Warning	1366	Incorrect integer value: 'seven samurai' for column 'f10' at row 1
INSERT into t31 values (1, 1, 3, 'third',
/* f5  BIGINT,  */            333333333333333333333333,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011', 
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         'three times three'
      );
Warnings:
Warning	1264	Out of range value for column 'f5' at row 1
Warning	1264	Out of range value for column 'f24' at row 1
INSERT into t31 values (1, 1, 4, 'fourth',
/* f5  BIGINT,  */            333333333333333333333333,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011',
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         'three times three'
       ),
(1, 1, 5, 'fifth',
/* f5  BIGINT,  */            333333333333333333333333,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011',
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         'three times three'
       ),
(1, 1, 6, 'sixth',
/* f5  BIGINT,  */            NULL,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011',
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         NULL
);
Warnings:
Warning	1264	Out of range value for column 'f5' at row 1
Warning	1264	Out of range value for column 'f24' at row 1
Warning	1264	Out of range value for column 'f5' at row 2
Warning	1264	Out of range value for column 'f24' at row 2
Warning	1264	Out of range value for column 'f24' at row 3
select * from t1 order by f3;
f1	f2	f3	f4
2	2	2	second
3	3	3	third
select * from t2 order by f1;
f1	f2	f3	f4
1	1	1	first
2	2	2	second
3	3	3	third
select * from t3 order by f1;
f1	f2	f3	f4
1	1	1	first
select * from t4 order by f1;
f1	f2	f3	f4
1	1	1	first
select * from t31 order by f1;
f1	f2	f3	f4
1	1	1	first
1	1	2	second
1	1	3	third
1	1	4	fourth
1	1	5	fifth
1	1	6	sixth
update t31 set f5=555555555555555 where f3=6;
update t31 set f2=2 where f3=2;
update t31 set f1=NULL where f3=1;
update t31 set f3=NULL, f27=NULL, f35='f35 new value' where f3=3;
Warnings:
Warning	1048	Column 'f3' cannot be null
delete from t1;
delete from t2;
delete from t3;
delete from t4;
delete from t31;
select * from t31;
f1	f2	f3	f4
show slave status;;
Slave_IO_State	#
Master_Host	127.0.0.1
Master_User	root
Master_Port	#
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	#
Relay_Log_File	#
Relay_Log_Pos	#
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	Yes
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	0
Last_Error	
Skip_Counter	0
Exec_Master_Log_Pos	#
Relay_Log_Space	#
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	#
Master_SSL_Verify_Server_Cert	No
set binlog_format=statement;
CREATE TABLE t1 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 FLOAT DEFAULT '2.00', 
f6 CHAR(4) DEFAULT 'TEST',
f7 INT DEFAULT '0',
f8 TEXT,
f9 LONGBLOB,
f10 BIT(63),
f11 VARBINARY(64))
ENGINE='InnoDB';
alter table t1 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11;
INSERT into t1 values (1, 1, 1, 'first', 1.0, 'yksi', 1, 'lounge of happiness', 'very fat blob', b'01010101010101', 0x123456);
INSERT into t1 values (2, 2, 2, 'second', 2.0, 'kaks', 2, 'got stolen from the paradise', 'very fat blob', b'01010101010101', 0x123456), (3, 3, 3, 'third', 3.0, 'kolm', 3, 'got stolen from the paradise', 'very fat blob', b'01010101010101', 0x123456);
update t1 set f4= 'next' where f1=1;
delete from t1 where f1=1;
select * from t1 order by f3;
f1	f2	f3	f4	f5	f6	f7	f8	f9	f10	f11
2	2	2	second	2	kaks	2	got stolen from the paradise	very fat blob	
3	3	3	third	3	kolm	3	got stolen from the paradise	very fat blob	
show slave status;;
Slave_IO_State	#
Master_Host	127.0.0.1
Master_User	root
Master_Port	#
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	#
Relay_Log_File	#
Relay_Log_Pos	#
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	Yes
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	0
Last_Error	
Skip_Counter	0
Exec_Master_Log_Pos	#
Relay_Log_Space	#
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	#
Master_SSL_Verify_Server_Cert	No
select * from t1 order by f3;
f1	f2	f3	f4
2	2	2	second
3	3	3	third
CREATE TABLE t2 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 DOUBLE DEFAULT '2.00', 
f6 ENUM('a', 'b', 'c') default 'a',
f7 DECIMAL(17,9) default '1000.00',
f8 MEDIUMBLOB,
f9 NUMERIC(6,4) default '2000.00',
f10 VARCHAR(1024),
f11 BINARY(20) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
f12 SET('a', 'b', 'c') default 'b')
ENGINE='InnoDB';
Warnings:
Warning	1264	Out of range value for column 'f9' at row 1
CREATE TABLE t3 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 DOUBLE DEFAULT '2.00', 
f6 ENUM('a', 'b', 'c') default 'a',
f8 MEDIUMBLOB,
f10 VARCHAR(1024),
f11 BINARY(20) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
f12 SET('a', 'b', 'c') default 'b')
ENGINE='InnoDB';
CREATE TABLE t4 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 DOUBLE DEFAULT '2.00', 
f6 DECIMAL(17,9) default '1000.00',
f7 MEDIUMBLOB,
f8 NUMERIC(6,4) default '2000.00',
f9 VARCHAR(1024),
f10 BINARY(20) not null default '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
f11 CHAR(255))
ENGINE='InnoDB';
Warnings:
Warning	1264	Out of range value for column 'f8' at row 1
CREATE TABLE t31 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5  BIGINT,
f6  BLOB,
f7  DATE,
f8  DATETIME,
f9  FLOAT,
f10 INT,
f11 LONGBLOB,
f12 LONGTEXT,
f13 MEDIUMBLOB,
f14 MEDIUMINT,
f15 MEDIUMTEXT,
f16 REAL,
f17 SMALLINT,
f18 TEXT,
f19 TIME,
f20 TIMESTAMP,
f21 TINYBLOB,
f22 TINYINT,
f23 TINYTEXT,
f24 YEAR,
f25 BINARY(255),
f26 BIT(64),
f27 CHAR(255),
f28 DECIMAL(30,7),
f29 DOUBLE,
f30 ENUM ('a','b', 'c') default 'a',
f31 FLOAT,
f32 NUMERIC(17,9),
f33 SET ('a', 'b', 'c') default 'b',
f34 VARBINARY(1025),
f35 VARCHAR(257)       
) ENGINE='InnoDB';
alter table t2 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11, drop
f12;
alter table t3 drop f5, drop f6, drop f8, drop f10, drop f11, drop f12;
alter table t4 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11;
alter table t31 
drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11,
drop f12, drop f13, drop f14, drop f15, drop f16, drop f17, drop f18,
drop f19, drop f20, drop f21, drop f22, drop f23, drop f24, drop f25,
drop f26, drop f27, drop f28, drop f29, drop f30, drop f31, drop f32,
drop f33, drop f34, drop f35;
INSERT into t2 set f1=1, f2=1, f3=1, f4='first', f8='f8: medium size blob', f10='f10:
some var char';
INSERT into t2 values (2, 2, 2, 'second',
2.0, 'b', 2000.0002, 'f8: medium size blob', 2000, 'f10: some var char',
'01234567', 'c'),
(3, 3, 3, 'third',
3.0, 'b', 3000.0003, 'f8: medium size blob', 3000, 'f10: some var char',
'01234567', 'c');
Warnings:
Warning	1264	Out of range value for column 'f9' at row 1
Warning	1264	Out of range value for column 'f9' at row 2
INSERT into t3 set f1=1, f2=1, f3=1, f4='first', f10='f10: some var char';
INSERT into t4 set f1=1, f2=1, f3=1, f4='first', f7='f7: medium size blob', f10='f10:
binary data';
INSERT into t31 set f1=1, f2=1, f3=1, f4='first';
INSERT into t31 set f1=1, f2=1, f3=2, f4='second',
f9=2.2,  f10='seven samurai', f28=222.222, f35='222';
Warnings:
Warning	1366	Incorrect integer value: 'seven samurai' for column 'f10' at row 1
INSERT into t31 values (1, 1, 3, 'third',
/* f5  BIGINT,  */            333333333333333333333333,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011', 
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         'three times three'
      );
Warnings:
Warning	1264	Out of range value for column 'f5' at row 1
Warning	1264	Out of range value for column 'f24' at row 1
INSERT into t31 values (1, 1, 4, 'fourth',
/* f5  BIGINT,  */            333333333333333333333333,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011',
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         'three times three'
       ),
(1, 1, 5, 'fifth',
/* f5  BIGINT,  */            333333333333333333333333,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011',
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         'three times three'
       ),
(1, 1, 6, 'sixth',
/* f5  BIGINT,  */            NULL,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011',
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         NULL
);
Warnings:
Warning	1264	Out of range value for column 'f5' at row 1
Warning	1264	Out of range value for column 'f24' at row 1
Warning	1264	Out of range value for column 'f5' at row 2
Warning	1264	Out of range value for column 'f24' at row 2
Warning	1264	Out of range value for column 'f24' at row 3
select * from t1 order by f3;
f1	f2	f3	f4
2	2	2	second
3	3	3	third
select * from t2 order by f1;
f1	f2	f3	f4
1	1	1	first
2	2	2	second
3	3	3	third
select * from t3 order by f1;
f1	f2	f3	f4
1	1	1	first
select * from t4 order by f1;
f1	f2	f3	f4
1	1	1	first
select * from t31 order by f1;
f1	f2	f3	f4
1	1	1	first
1	1	2	second
1	1	3	third
1	1	4	fourth
1	1	5	fifth
1	1	6	sixth
update t31 set f5=555555555555555 where f3=6;
update t31 set f2=2 where f3=2;
update t31 set f1=NULL where f3=1;
update t31 set f3=NULL, f27=NULL, f35='f35 new value' where f3=3;
Warnings:
Warning	1048	Column 'f3' cannot be null
delete from t1;
delete from t2;
delete from t3;
delete from t4;
delete from t31;
select * from t31;
f1	f2	f3	f4
show slave status;;
Slave_IO_State	#
Master_Host	127.0.0.1
Master_User	root
Master_Port	#
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	#
Relay_Log_File	#
Relay_Log_Pos	#
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	Yes
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	0
Last_Error	
Skip_Counter	0
Exec_Master_Log_Pos	#
Relay_Log_Space	#
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	#
Master_SSL_Verify_Server_Cert	No

--- New file ---
+++ mysql-test/r/rpl_ndb_extraColmaster.result	07/07/27 14:45:44
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;

***********************************************************
***********************************************************
***************** Start of Testing ************************
***********************************************************
***********************************************************
* This test format == binlog_format	ROW and engine == 'NDB'
***********************************************************
***********************************************************

***** Testing more columns on the Master *****

CREATE TABLE t1 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 FLOAT DEFAULT '2.00', 
f6 CHAR(4) DEFAULT 'TEST',
f7 INT DEFAULT '0',
f8 TEXT,
f9 LONGBLOB,
f10 BIT(63),
f11 VARBINARY(64))ENGINE='NDB';

* Alter Table on Slave and drop columns f5 through f11 *

alter table t1 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11;

* Insert data in Master then update and delete some rows*

* Select count and 20 rows from Master *

SELECT COUNT(*) FROM t1;
COUNT(*)
40

SELECT * FROM t1 ORDER BY f3 LIMIT 20;
f1	f2	f3	f4	f5	f6	f7	f8	f9	f10	f11
2	2	2	second	2	kaks	2	got stolen from the paradise	very fat blob	
3	3	3	next	2	kaks	2	got stolen from the paradise	very fat blob	
5	5	5	second	2	kaks	2	got stolen from the paradise	very fat blob	
6	6	6	next	2	kaks	2	got stolen from the paradise	very fat blob	
8	8	8	second	2	kaks	2	got stolen from the paradise	very fat blob	
9	9	9	next	2	kaks	2	got stolen from the paradise	very fat blob	
11	11	11	second	2	kaks	2	got stolen from the paradise	very fat blob	
12	12	12	next	2	kaks	2	got stolen from the paradise	very fat blob	
14	14	14	second	2	kaks	2	got stolen from the paradise	very fat blob	
15	15	15	next	2	kaks	2	got stolen from the paradise	very fat blob	
17	17	17	second	2	kaks	2	got stolen from the paradise	very fat blob	
18	18	18	next	2	kaks	2	got stolen from the paradise	very fat blob	
20	20	20	second	2	kaks	2	got stolen from the paradise	very fat blob	
21	21	21	next	2	kaks	2	got stolen from the paradise	very fat blob	
23	23	23	second	2	kaks	2	got stolen from the paradise	very fat blob	
24	24	24	next	2	kaks	2	got stolen from the paradise	very fat blob	
26	26	26	second	2	kaks	2	got stolen from the paradise	very fat blob	
27	27	27	next	2	kaks	2	got stolen from the paradise	very fat blob	
29	29	29	second	2	kaks	2	got stolen from the paradise	very fat blob	
30	30	30	next	2	kaks	2	got stolen from the paradise	very fat blob	

* Select count and 20 rows from Slave *

SELECT COUNT(*) FROM t1;
COUNT(*)
40

SELECT * FROM t1 ORDER BY f3 LIMIT 20;
f1	f2	f3	f4
2	2	2	second
3	3	3	next
5	5	5	second
6	6	6	next
8	8	8	second
9	9	9	next
11	11	11	second
12	12	12	next
14	14	14	second
15	15	15	next
17	17	17	second
18	18	18	next
20	20	20	second
21	21	21	next
23	23	23	second
24	24	24	next
26	26	26	second
27	27	27	next
29	29	29	second
30	30	30	next

* Show Slave Status *

show slave status;;
Slave_IO_State	#
Master_Host	127.0.0.1
Master_User	root
Master_Port	#
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	#
Relay_Log_File	#
Relay_Log_Pos	#
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	Yes
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	0
Last_Error	
Skip_Counter	0
Exec_Master_Log_Pos	#
Relay_Log_Space	#
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	#
Master_SSL_Verify_Server_Cert	No


***** Testing Altering table def scenario *****

CREATE TABLE t2 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 DOUBLE DEFAULT '2.00', 
f6 ENUM('a', 'b', 'c') default 'a',
f7 DECIMAL(17,9) default '1000.00',
f8 MEDIUMBLOB,
f9 NUMERIC(6,4) default '2000.00',
f10 VARCHAR(1024),
f11 BINARY(20) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
f12 SET('a', 'b', 'c') default 'b')
ENGINE='NDB';
Warnings:
Warning	1264	Out of range value for column 'f9' at row 1

CREATE TABLE t3 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 DOUBLE DEFAULT '2.00', 
f6 ENUM('a', 'b', 'c') default 'a',
f8 MEDIUMBLOB,
f10 VARCHAR(1024),
f11 BINARY(20) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
f12 SET('a', 'b', 'c') default 'b')
ENGINE='NDB';

CREATE TABLE t4 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 DOUBLE DEFAULT '2.00', 
f6 DECIMAL(17,9) default '1000.00',
f7 MEDIUMBLOB,
f8 NUMERIC(6,4) default '2000.00',
f9 VARCHAR(1024),
f10 BINARY(20) not null default '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
f11 CHAR(255))
ENGINE='NDB';
Warnings:
Warning	1264	Out of range value for column 'f8' at row 1

CREATE TABLE t31 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5  BIGINT,
f6  BLOB,
f7  DATE,
f8  DATETIME,
f9  FLOAT,
f10 INT,
f11 LONGBLOB,
f12 LONGTEXT,
f13 MEDIUMBLOB,
f14 MEDIUMINT,
f15 MEDIUMTEXT,
f16 REAL,
f17 SMALLINT,
f18 TEXT,
f19 TIME,
f20 TIMESTAMP,
f21 TINYBLOB,
f22 TINYINT,
f23 TINYTEXT,
f24 YEAR,
f25 BINARY(255),
f26 BIT(64),
f27 CHAR(255),
f28 DECIMAL(30,7),
f29 DOUBLE,
f30 ENUM ('a','b', 'c') default 'a',
f31 FLOAT,
f32 NUMERIC(17,9),
f33 SET ('a', 'b', 'c') default 'b',
f34 VARBINARY(1025),
f35 VARCHAR(257)       
) ENGINE='NDB';

** Alter tables on slave and drop columns **

alter table t2 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11, drop
f12;
alter table t3 drop f5, drop f6, drop f8, drop f10, drop f11, drop f12;
alter table t4 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11;
alter table t31 
drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11,
drop f12, drop f13, drop f14, drop f15, drop f16, drop f17, drop f18,
drop f19, drop f20, drop f21, drop f22, drop f23, drop f24, drop f25,
drop f26, drop f27, drop f28, drop f29, drop f30, drop f31, drop f32,
drop f33, drop f34, drop f35;

** Insert Data into Master **
INSERT into t2 set f1=1, f2=1, f3=1, f4='first', f8='f8: medium size blob', f10='f10:
some var char';
INSERT into t2 values (2, 2, 2, 'second',
2.0, 'b', 2000.0002, 'f8: medium size blob', 2000, 'f10: some var char',
'01234567', 'c'),
(3, 3, 3, 'third',
3.0, 'b', 3000.0003, 'f8: medium size blob', 3000, 'f10: some var char',
'01234567', 'c');
Warnings:
Warning	1264	Out of range value for column 'f9' at row 1
Warning	1264	Out of range value for column 'f9' at row 2
INSERT into t3 set f1=1, f2=1, f3=1, f4='first', f10='f10: some var char';
INSERT into t4 set f1=1, f2=1, f3=1, f4='first', f7='f7: medium size blob', f10='f10:
binary data';
INSERT into t31 set f1=1, f2=1, f3=1, f4='first';
INSERT into t31 set f1=1, f2=1, f3=2, f4='second',
f9=2.2,  f10='seven samurai', f28=222.222, f35='222';
Warnings:
Warning	1366	Incorrect integer value: 'seven samurai' for column 'f10' at row 1
INSERT into t31 values (1, 1, 3, 'third',
/* f5  BIGINT,  */            333333333333333333333333,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011', 
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         'three times three'
      );
Warnings:
Warning	1264	Out of range value for column 'f5' at row 1
Warning	1264	Out of range value for column 'f24' at row 1
INSERT into t31 values (1, 1, 4, 'fourth',
/* f5  BIGINT,  */            333333333333333333333333,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011',
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         'three times three'
       ),
(1, 1, 5, 'fifth',
/* f5  BIGINT,  */            333333333333333333333333,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011',
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         'three times three'
       ),
(1, 1, 6, 'sixth',
/* f5  BIGINT,  */            NULL,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011',
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         NULL
);
Warnings:
Warning	1264	Out of range value for column 'f5' at row 1
Warning	1264	Out of range value for column 'f24' at row 1
Warning	1264	Out of range value for column 'f5' at row 2
Warning	1264	Out of range value for column 'f24' at row 2
Warning	1264	Out of range value for column 'f24' at row 3

** Sync slave with master ** 
** Do selects from tables **

select * from t1 order by f3;
f1	f2	f3	f4
2	2	2	second
3	3	3	next
5	5	5	second
6	6	6	next
8	8	8	second
9	9	9	next
11	11	11	second
12	12	12	next
14	14	14	second
15	15	15	next
17	17	17	second
18	18	18	next
20	20	20	second
21	21	21	next
23	23	23	second
24	24	24	next
26	26	26	second
27	27	27	next
29	29	29	second
30	30	30	next
31	31	31	second
32	32	32	second
33	33	33	second
34	34	34	second
35	35	35	second
36	36	36	second
37	37	37	second
38	38	38	second
39	39	39	second
40	40	40	second
41	41	41	second
42	42	42	second
43	43	43	second
44	44	44	second
45	45	45	second
46	46	46	second
47	47	47	second
48	48	48	second
49	49	49	second
50	50	50	second
select * from t2 order by f1;
f1	f2	f3	f4
1	1	1	first
2	2	2	second
3	3	3	third
select * from t3 order by f1;
f1	f2	f3	f4
1	1	1	first
select * from t4 order by f1;
f1	f2	f3	f4
1	1	1	first
select * from t31 order by f1;
f1	f2	f3	f4
1	1	5	fifth
1	1	3	third
1	1	1	first
1	1	6	sixth
1	1	2	second
1	1	4	fourth

** Do updates master **

update t31 set f5=555555555555555 where f3=6;
update t31 set f2=2 where f3=2;
update t31 set f1=NULL where f3=1;
update t31 set f3=NULL, f27=NULL, f35='f35 new value' where f3=3;
Warnings:
Warning	1048	Column 'f3' cannot be null

** Delete from Master **

delete from t1;
delete from t2;
delete from t3;
delete from t4;
delete from t31;

** Check slave status **

select * from t31;
f1	f2	f3	f4
show slave status;;
Slave_IO_State	#
Master_Host	127.0.0.1
Master_User	root
Master_Port	#
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	#
Relay_Log_File	#
Relay_Log_Pos	#
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	Yes
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	0
Last_Error	
Skip_Counter	0
Exec_Master_Log_Pos	#
Relay_Log_Space	#
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	#
Master_SSL_Verify_Server_Cert	No

****************************************
* columns in master at middle of table *
* Expect: Proper error message         *
****************************************

** Stop and Reset Slave **

STOP SLAVE;
RESET SLAVE;

** create table slave side **
CREATE TABLE t10 (a INT PRIMARY KEY, b BLOB, c CHAR(5)
) ENGINE='NDB';

** Connect to master and create table **

CREATE TABLE t10 (a INT KEY, b BLOB, f DOUBLE DEFAULT '233',
c CHAR(5), e INT DEFAULT '1')ENGINE='NDB';
RESET MASTER;

*** Start Slave ***
START SLAVE;

*** Master Data Insert ***
set @b1 = 'b1b1b1b1';
set @b1 = concat(@b1,@b1);
INSERT INTO t10 () VALUES(1,@b1,DEFAULT,'Kyle',DEFAULT),
(2,@b1,DEFAULT,'JOE',DEFAULT),
(3,@b1,DEFAULT,'QA',DEFAULT);

********************************************
*** Expect slave to fail with Error 1523 ***
********************************************

SHOW SLAVE STATUS;
Slave_IO_State	#
Master_Host	127.0.0.1
Master_User	root
Master_Port	MASTER_PORT
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	#
Relay_Log_File	#
Relay_Log_Pos	#
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	No
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	1523
Last_Error	Column 2 type mismatch - received type 5, test.t10 has type 254
Skip_Counter	0
Exec_Master_Log_Pos	#
Relay_Log_Space	#
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	#
Master_SSL_Verify_Server_Cert	No
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=2;
START SLAVE;

*** Drop t10  ***
DROP TABLE t10;

*********************************************
* More columns in master at middle of table *
* Expect: Proper error message              *
*********************************************

*** Create t11 on slave  ***
STOP SLAVE;
RESET SLAVE;
CREATE TABLE t11 (a INT PRIMARY KEY, b BLOB, c VARCHAR(254)
) ENGINE='NDB';

*** Create t11 on Master ***
CREATE TABLE t11 (a INT KEY, b BLOB, f TEXT,
c CHAR(5) DEFAULT 'test', e INT DEFAULT '1')ENGINE='NDB';
RESET MASTER;

*** Start Slave ***
START SLAVE;

*** Master Data Insert ***
set @b1 = 'b1b1b1b1';
set @b1 = concat(@b1,@b1);
INSERT INTO t11 () VALUES(1,@b1,'Testing is fun','Kyle',DEFAULT),
(2,@b1,'Testing is cool','JOE',DEFAULT),
(3,@b1,DEFAULT,'QA',DEFAULT);

********************************************
*** Expect slave to fail with Error 1523 ***
********************************************

SHOW SLAVE STATUS;
Slave_IO_State	#
Master_Host	127.0.0.1
Master_User	root
Master_Port	MASTER_PORT
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	#
Relay_Log_File	#
Relay_Log_Pos	#
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	No
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	1523
Last_Error	Column 2 type mismatch - received type 252, test.t11 has type 15
Skip_Counter	0
Exec_Master_Log_Pos	#
Relay_Log_Space	#
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	#
Master_SSL_Verify_Server_Cert	No
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=2;
START SLAVE;

*** Drop t11  ***
DROP TABLE t11;

*********************************************
* More columns in master at middle of table *
* Expect: This one should pass blob-text    *
*********************************************

*** Create t12 on slave  ***
STOP SLAVE;
RESET SLAVE;
CREATE TABLE t12 (a INT PRIMARY KEY, b BLOB, c BLOB
) ENGINE='NDB';

*** Create t12 on Master ***
CREATE TABLE t12 (a INT KEY, b BLOB, f TEXT,
c CHAR(5) DEFAULT 'test', e INT DEFAULT '1')ENGINE='NDB';
RESET MASTER;

*** Start Slave ***
START SLAVE;

*** Master Data Insert ***
set @b1 = 'b1b1b1b1';
set @b1 = concat(@b1,@b1);
INSERT INTO t12 () VALUES(1,@b1,'Kyle',DEFAULT,DEFAULT),
(2,@b1,'JOE',DEFAULT,DEFAULT),
(3,@b1,'QA',DEFAULT,DEFAULT);

SELECT * FROM t12 ORDER BY a;
a	b	f	c	e
1	b1b1b1b1b1b1b1b1	Kyle	test	1
2	b1b1b1b1b1b1b1b1	JOE	test	1
3	b1b1b1b1b1b1b1b1	QA	test	1

*** Select on Slave ***
SELECT * FROM t12 ORDER BY a;
a	b	c
1	b1b1b1b1b1b1b1b1	Kyle
2	b1b1b1b1b1b1b1b1	JOE
3	b1b1b1b1b1b1b1b1	QA

*** Drop t12  ***
DROP TABLE t12;

****************************************************
* - Alter Master adding columns at middle of table *
*   Expect: columns added                          *
****************************************************


*** Create t14 on slave  ***
STOP SLAVE;
RESET SLAVE;
CREATE TABLE t14 (c1 INT PRIMARY KEY, c4 BLOB, c5 CHAR(5)
) ENGINE='NDB';

*** Create t14 on Master ***
CREATE TABLE t14 (c1 INT KEY, c4 BLOB, c5 CHAR(5),
c6 INT DEFAULT '1',
c7 TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP
)ENGINE='NDB';
RESET MASTER;

*** Start Slave ***
START SLAVE;

*** Master Data Insert ***
ALTER TABLE t14 ADD COLUMN c2 DECIMAL(8,2) AFTER c1;
ALTER TABLE t14 ADD COLUMN c3 TEXT AFTER c2;

set @b1 = 'b1b1b1b1';
set @b1 = concat(@b1,@b1);
INSERT INTO t14 () VALUES(1,1.00,'Replication Testing Extra Col',@b1,'Kyle',DEFAULT,DEFAULT),
(2,2.00,'This Test Should work',@b1,'JOE',DEFAULT,DEFAULT),
(3,3.00,'If is does not, I will open a bug',@b1,'QA',DEFAULT,DEFAULT);

SELECT * FROM t14 ORDER BY c1;
c1	c2	c3	c4	c5	c6	c7
1	1.00	Replication Testing Extra Col	b1b1b1b1b1b1b1b1	Kyle	1	CURRENT_TIMESTAMP
2	2.00	This Test Should work	b1b1b1b1b1b1b1b1	JOE	1	CURRENT_TIMESTAMP
3	3.00	If is does not, I will open a bug	b1b1b1b1b1b1b1b1	QA	1	CURRENT_TIMESTAMP

*** Select on Slave ****
SELECT * FROM t14 ORDER BY c1;
c1	c2	c3	c4	c5
1	1.00	Replication Testing Extra Col	b1b1b1b1b1b1b1b1	Kyle
2	2.00	This Test Should work	b1b1b1b1b1b1b1b1	JOE
3	3.00	If is does not, I will open a bug	b1b1b1b1b1b1b1b1	QA

****************************************************
* - Alter Master Dropping columns from the middle. *
*   Expect: columns dropped                        *
****************************************************

*** connect to master and drop columns ***
ALTER TABLE t14 DROP COLUMN c2;
ALTER TABLE t14 DROP COLUMN c7;

*** Select from Master ***
SELECT * FROM t14 ORDER BY c1;
c1	c3	c4	c5	c6
1	Replication Testing Extra Col	b1b1b1b1b1b1b1b1	Kyle	1
2	This Test Should work	b1b1b1b1b1b1b1b1	JOE	1
3	If is does not, I will open a bug	b1b1b1b1b1b1b1b1	QA	1

************
* Bug30415 *
************
SHOW SLAVE STATUS;
Slave_IO_State	#
Master_Host	127.0.0.1
Master_User	root
Master_Port	MASTER_PORT
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	#
Relay_Log_File	#
Relay_Log_Pos	#
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	No
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	1091
Last_Error	Error 'Can't DROP 'c7'; check that column/key exists' on query. Default database: 'test'. Query: 'ALTER TABLE t14 DROP COLUMN c7'
Skip_Counter	0
Exec_Master_Log_Pos	#
Relay_Log_Space	#
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	#
Master_SSL_Verify_Server_Cert	No
STOP SLAVE;
RESET SLAVE;

*** Drop t14  ***
DROP TABLE t14;
DROP TABLE t14;
RESET MASTER;
START SLAVE;

*************************************************
* - Alter Master adding columns at end of table *
*   Expect: Error 1054                          *
*************************************************

*** Create t15 on slave  ***
STOP SLAVE;
RESET SLAVE;
CREATE TABLE t15 (c1 INT PRIMARY KEY, c4 BLOB, c5 CHAR(5)
) ENGINE='NDB';

*** Create t15 on Master ***
CREATE TABLE t15 (c1 INT KEY, c4 BLOB, c5 CHAR(5),
c6 INT DEFAULT '1',
c7 TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP
)ENGINE='NDB';
RESET MASTER;

*** Start Slave ***
START SLAVE;

*** Master Data Insert ***
ALTER TABLE t15 ADD COLUMN c2 DECIMAL(8,2) AFTER c7;
set @b1 = 'b1b1b1b1';
set @b1 = concat(@b1,@b1);
INSERT INTO t15 () VALUES(1,@b1,'Kyle',DEFAULT,DEFAULT,3.00),
(2,@b1,'JOE',DEFAULT,DEFAULT,3.00),
(3,@b1,'QA',DEFAULT,DEFAULT,3.00);
SELECT * FROM t15 ORDER BY c1;
c1	c4	c5	c6	c7	c2
1	b1b1b1b1b1b1b1b1	Kyle	1	CURRENT_TIMESTAMP	3.00
2	b1b1b1b1b1b1b1b1	JOE	1	CURRENT_TIMESTAMP	3.00
3	b1b1b1b1b1b1b1b1	QA	1	CURRENT_TIMESTAMP	3.00

********************************************
*** Expect slave to fail with Error 1054 ***
********************************************

SHOW SLAVE STATUS;
Slave_IO_State	#
Master_Host	127.0.0.1
Master_User	root
Master_Port	MASTER_PORT
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	#
Relay_Log_File	#
Relay_Log_Pos	#
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	No
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	1054
Last_Error	Error 'Unknown column 'c7' in 't15'' on query. Default database: 'test'. Query: 'ALTER TABLE t15 ADD COLUMN c2 DECIMAL(8,2) AFTER c7'
Skip_Counter	0
Exec_Master_Log_Pos	#
Relay_Log_Space	#
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	#
Master_SSL_Verify_Server_Cert	No
STOP SLAVE;
RESET SLAVE;

*** Drop t15  ***
DROP TABLE t15;
DROP TABLE t15;
RESET MASTER;
START SLAVE;

************************************************
* - Create index on Master column not on slave *
*   Expect:Warning                             *
************************************************

*** Create t16 on slave  ***
STOP SLAVE;
RESET SLAVE;
CREATE TABLE t16 (c1 INT PRIMARY KEY, c4 BLOB, c5 CHAR(5)
) ENGINE='NDB';

*** Create t16 on Master ***
CREATE TABLE t16 (c1 INT KEY, c4 BLOB, c5 CHAR(5),
c6 INT DEFAULT '1',
c7 TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP
)ENGINE='NDB';
RESET MASTER;

*** Start Slave ***
START SLAVE;

*** Master Create Index and Data Insert ***
CREATE INDEX part_of_c6 ON t16 (c6);
set @b1 = 'b1b1b1b1';
set @b1 = concat(@b1,@b1);
INSERT INTO t16 () VALUES(1,@b1,'Kyle',DEFAULT,DEFAULT),
(2,@b1,'JOE',2,DEFAULT),
(3,@b1,'QA',3,DEFAULT);
SELECT * FROM t16 ORDER BY c1;
c1	c4	c5	c6	c7
1	b1b1b1b1b1b1b1b1	Kyle	1	CURRENT_TIMESTAMP
2	b1b1b1b1b1b1b1b1	JOE	2	CURRENT_TIMESTAMP
3	b1b1b1b1b1b1b1b1	QA	3	CURRENT_TIMESTAMP

*****************
*** BUG 30434 ***
*****************

SHOW SLAVE STATUS;
Slave_IO_State	#
Master_Host	127.0.0.1
Master_User	root
Master_Port	MASTER_PORT
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	#
Relay_Log_File	#
Relay_Log_Pos	#
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	No
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	1072
Last_Error	Error 'Key column 'c6' doesn't exist in table' on query. Default database: 'test'. Query: 'CREATE INDEX part_of_c6 ON t16 (c6)'
Skip_Counter	0
Exec_Master_Log_Pos	#
Relay_Log_Space	#
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	#
Master_SSL_Verify_Server_Cert	No
STOP SLAVE;
RESET SLAVE;

*** Drop t16  ***
DROP TABLE t16;
DROP TABLE t16;
RESET MASTER;
START SLAVE;

*****************************************************
* - Delete rows using column on Master not on slave *
*   Expect: Rows Deleted                            *
*****************************************************

*** Create t17 on slave  ***
STOP SLAVE;
RESET SLAVE;
CREATE TABLE t17 (c1 INT PRIMARY KEY, c4 BLOB, c5 CHAR(5)
) ENGINE='NDB';

*** Create t17 on Master ***
CREATE TABLE t17 (c1 INT KEY, c4 BLOB, c5 CHAR(5),
c6 INT DEFAULT '1',
c7 TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP
)ENGINE='NDB';
RESET MASTER;

*** Start Slave ***
START SLAVE;

*** Master Data Insert ***
set @b1 = 'b1b1b1b1';
set @b1 = concat(@b1,@b1);
INSERT INTO t17 () VALUES(1,@b1,'Kyle',DEFAULT,DEFAULT),
(2,@b1,'JOE',2,DEFAULT),
(3,@b1,'QA',3,DEFAULT);
SELECT * FROM t17 ORDER BY c1;
c1	c4	c5	c6	c7
1	b1b1b1b1b1b1b1b1	Kyle	1	CURRENT_TIMESTAMP
2	b1b1b1b1b1b1b1b1	JOE	2	CURRENT_TIMESTAMP
3	b1b1b1b1b1b1b1b1	QA	3	CURRENT_TIMESTAMP

** Select * from Slave **
SELECT * FROM t17 ORDER BY c1;
c1	c4	c5
1	b1b1b1b1b1b1b1b1	Kyle
2	b1b1b1b1b1b1b1b1	JOE
3	b1b1b1b1b1b1b1b1	QA

** Delete from master **
DELETE FROM t17 WHERE c6 = 3;
SELECT * FROM t17 ORDER BY c1;
c1	c4	c5	c6	c7
1	b1b1b1b1b1b1b1b1	Kyle	1	CURRENT_TIMESTAMP
2	b1b1b1b1b1b1b1b1	JOE	2	CURRENT_TIMESTAMP

** Check slave **
SELECT * FROM t17 ORDER BY c1;
c1	c4	c5
1	b1b1b1b1b1b1b1b1	Kyle
2	b1b1b1b1b1b1b1b1	JOE
DROP TABLE t17;


--- New file ---
+++ BitKeeper/deleted/.del-rpl_ndb_extraColmaster.	07/07/27 14:45:44
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 binlog_format=row;
CREATE TABLE t1 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 FLOAT DEFAULT '2.00', 
f6 CHAR(4) DEFAULT 'TEST',
f7 INT DEFAULT '0',
f8 TEXT,
f9 LONGBLOB,
f10 BIT(63),
f11 VARBINARY(64))
ENGINE='InnoDB';
alter table t1 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11;
INSERT into t1 values (1, 1, 1, 'first', 1.0, 'yksi', 1, 'lounge of happiness', 'very fat blob', b'01010101010101', 0x123456);
INSERT into t1 values (2, 2, 2, 'second', 2.0, 'kaks', 2, 'got stolen from the paradise', 'very fat blob', b'01010101010101', 0x123456), (3, 3, 3, 'third', 3.0, 'kolm', 3, 'got stolen from the paradise', 'very fat blob', b'01010101010101', 0x123456);
update t1 set f4= 'next' where f1=1;
delete from t1 where f1=1;
select * from t1 order by f3;
f1	f2	f3	f4	f5	f6	f7	f8	f9	f10	f11
2	2	2	second	2	kaks	2	got stolen from the paradise	very fat blob	
3	3	3	third	3	kolm	3	got stolen from the paradise	very fat blob	
show slave status;;
Slave_IO_State	#
Master_Host	127.0.0.1
Master_User	root
Master_Port	#
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	#
Relay_Log_File	#
Relay_Log_Pos	#
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	Yes
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	0
Last_Error	
Skip_Counter	0
Exec_Master_Log_Pos	#
Relay_Log_Space	#
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	#
Master_SSL_Verify_Server_Cert	No
select * from t1 order by f3;
f1	f2	f3	f4
2	2	2	second
3	3	3	third
CREATE TABLE t2 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 DOUBLE DEFAULT '2.00', 
f6 ENUM('a', 'b', 'c') default 'a',
f7 DECIMAL(17,9) default '1000.00',
f8 MEDIUMBLOB,
f9 NUMERIC(6,4) default '2000.00',
f10 VARCHAR(1024),
f11 BINARY(20) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
f12 SET('a', 'b', 'c') default 'b')
ENGINE='InnoDB';
Warnings:
Warning	1264	Out of range value for column 'f9' at row 1
CREATE TABLE t3 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 DOUBLE DEFAULT '2.00', 
f6 ENUM('a', 'b', 'c') default 'a',
f8 MEDIUMBLOB,
f10 VARCHAR(1024),
f11 BINARY(20) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
f12 SET('a', 'b', 'c') default 'b')
ENGINE='InnoDB';
CREATE TABLE t4 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 DOUBLE DEFAULT '2.00', 
f6 DECIMAL(17,9) default '1000.00',
f7 MEDIUMBLOB,
f8 NUMERIC(6,4) default '2000.00',
f9 VARCHAR(1024),
f10 BINARY(20) not null default '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
f11 CHAR(255))
ENGINE='InnoDB';
Warnings:
Warning	1264	Out of range value for column 'f8' at row 1
CREATE TABLE t31 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5  BIGINT,
f6  BLOB,
f7  DATE,
f8  DATETIME,
f9  FLOAT,
f10 INT,
f11 LONGBLOB,
f12 LONGTEXT,
f13 MEDIUMBLOB,
f14 MEDIUMINT,
f15 MEDIUMTEXT,
f16 REAL,
f17 SMALLINT,
f18 TEXT,
f19 TIME,
f20 TIMESTAMP,
f21 TINYBLOB,
f22 TINYINT,
f23 TINYTEXT,
f24 YEAR,
f25 BINARY(255),
f26 BIT(64),
f27 CHAR(255),
f28 DECIMAL(30,7),
f29 DOUBLE,
f30 ENUM ('a','b', 'c') default 'a',
f31 FLOAT,
f32 NUMERIC(17,9),
f33 SET ('a', 'b', 'c') default 'b',
f34 VARBINARY(1025),
f35 VARCHAR(257)       
) ENGINE='InnoDB';
alter table t2 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11, drop
f12;
alter table t3 drop f5, drop f6, drop f8, drop f10, drop f11, drop f12;
alter table t4 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11;
alter table t31 
drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11,
drop f12, drop f13, drop f14, drop f15, drop f16, drop f17, drop f18,
drop f19, drop f20, drop f21, drop f22, drop f23, drop f24, drop f25,
drop f26, drop f27, drop f28, drop f29, drop f30, drop f31, drop f32,
drop f33, drop f34, drop f35;
INSERT into t2 set f1=1, f2=1, f3=1, f4='first', f8='f8: medium size blob', f10='f10:
some var char';
INSERT into t2 values (2, 2, 2, 'second',
2.0, 'b', 2000.0002, 'f8: medium size blob', 2000, 'f10: some var char',
'01234567', 'c'),
(3, 3, 3, 'third',
3.0, 'b', 3000.0003, 'f8: medium size blob', 3000, 'f10: some var char',
'01234567', 'c');
Warnings:
Warning	1264	Out of range value for column 'f9' at row 1
Warning	1264	Out of range value for column 'f9' at row 2
INSERT into t3 set f1=1, f2=1, f3=1, f4='first', f10='f10: some var char';
INSERT into t4 set f1=1, f2=1, f3=1, f4='first', f7='f7: medium size blob', f10='f10:
binary data';
INSERT into t31 set f1=1, f2=1, f3=1, f4='first';
INSERT into t31 set f1=1, f2=1, f3=2, f4='second',
f9=2.2,  f10='seven samurai', f28=222.222, f35='222';
Warnings:
Warning	1366	Incorrect integer value: 'seven samurai' for column 'f10' at row 1
INSERT into t31 values (1, 1, 3, 'third',
/* f5  BIGINT,  */            333333333333333333333333,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011', 
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         'three times three'
      );
Warnings:
Warning	1264	Out of range value for column 'f5' at row 1
Warning	1264	Out of range value for column 'f24' at row 1
INSERT into t31 values (1, 1, 4, 'fourth',
/* f5  BIGINT,  */            333333333333333333333333,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011',
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         'three times three'
       ),
(1, 1, 5, 'fifth',
/* f5  BIGINT,  */            333333333333333333333333,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011',
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         'three times three'
       ),
(1, 1, 6, 'sixth',
/* f5  BIGINT,  */            NULL,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011',
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         NULL
);
Warnings:
Warning	1264	Out of range value for column 'f5' at row 1
Warning	1264	Out of range value for column 'f24' at row 1
Warning	1264	Out of range value for column 'f5' at row 2
Warning	1264	Out of range value for column 'f24' at row 2
Warning	1264	Out of range value for column 'f24' at row 3
select * from t1 order by f3;
f1	f2	f3	f4
2	2	2	second
3	3	3	third
select * from t2 order by f1;
f1	f2	f3	f4
1	1	1	first
2	2	2	second
3	3	3	third
select * from t3 order by f1;
f1	f2	f3	f4
1	1	1	first
select * from t4 order by f1;
f1	f2	f3	f4
1	1	1	first
select * from t31 order by f1;
f1	f2	f3	f4
1	1	1	first
1	1	2	second
1	1	3	third
1	1	4	fourth
1	1	5	fifth
1	1	6	sixth
update t31 set f5=555555555555555 where f3=6;
update t31 set f2=2 where f3=2;
update t31 set f1=NULL where f3=1;
update t31 set f3=NULL, f27=NULL, f35='f35 new value' where f3=3;
Warnings:
Warning	1048	Column 'f3' cannot be null
delete from t1;
delete from t2;
delete from t3;
delete from t4;
delete from t31;
select * from t31;
f1	f2	f3	f4
show slave status;;
Slave_IO_State	#
Master_Host	127.0.0.1
Master_User	root
Master_Port	#
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	#
Relay_Log_File	#
Relay_Log_Pos	#
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	Yes
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	0
Last_Error	
Skip_Counter	0
Exec_Master_Log_Pos	#
Relay_Log_Space	#
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	#
Master_SSL_Verify_Server_Cert	No
set binlog_format=statement;
CREATE TABLE t1 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 FLOAT DEFAULT '2.00', 
f6 CHAR(4) DEFAULT 'TEST',
f7 INT DEFAULT '0',
f8 TEXT,
f9 LONGBLOB,
f10 BIT(63),
f11 VARBINARY(64))
ENGINE='InnoDB';
alter table t1 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11;
INSERT into t1 values (1, 1, 1, 'first', 1.0, 'yksi', 1, 'lounge of happiness', 'very fat blob', b'01010101010101', 0x123456);
INSERT into t1 values (2, 2, 2, 'second', 2.0, 'kaks', 2, 'got stolen from the paradise', 'very fat blob', b'01010101010101', 0x123456), (3, 3, 3, 'third', 3.0, 'kolm', 3, 'got stolen from the paradise', 'very fat blob', b'01010101010101', 0x123456);
update t1 set f4= 'next' where f1=1;
delete from t1 where f1=1;
select * from t1 order by f3;
f1	f2	f3	f4	f5	f6	f7	f8	f9	f10	f11
2	2	2	second	2	kaks	2	got stolen from the paradise	very fat blob	
3	3	3	third	3	kolm	3	got stolen from the paradise	very fat blob	
show slave status;;
Slave_IO_State	#
Master_Host	127.0.0.1
Master_User	root
Master_Port	#
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	#
Relay_Log_File	#
Relay_Log_Pos	#
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	Yes
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	0
Last_Error	
Skip_Counter	0
Exec_Master_Log_Pos	#
Relay_Log_Space	#
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	#
Master_SSL_Verify_Server_Cert	No
select * from t1 order by f3;
f1	f2	f3	f4
2	2	2	second
3	3	3	third
CREATE TABLE t2 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 DOUBLE DEFAULT '2.00', 
f6 ENUM('a', 'b', 'c') default 'a',
f7 DECIMAL(17,9) default '1000.00',
f8 MEDIUMBLOB,
f9 NUMERIC(6,4) default '2000.00',
f10 VARCHAR(1024),
f11 BINARY(20) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
f12 SET('a', 'b', 'c') default 'b')
ENGINE='InnoDB';
Warnings:
Warning	1264	Out of range value for column 'f9' at row 1
CREATE TABLE t3 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 DOUBLE DEFAULT '2.00', 
f6 ENUM('a', 'b', 'c') default 'a',
f8 MEDIUMBLOB,
f10 VARCHAR(1024),
f11 BINARY(20) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
f12 SET('a', 'b', 'c') default 'b')
ENGINE='InnoDB';
CREATE TABLE t4 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5 DOUBLE DEFAULT '2.00', 
f6 DECIMAL(17,9) default '1000.00',
f7 MEDIUMBLOB,
f8 NUMERIC(6,4) default '2000.00',
f9 VARCHAR(1024),
f10 BINARY(20) not null default '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
f11 CHAR(255))
ENGINE='InnoDB';
Warnings:
Warning	1264	Out of range value for column 'f8' at row 1
CREATE TABLE t31 (f1 INT, f2 INT, f3 INT PRIMARY KEY, f4 CHAR(20),
/* extra */
f5  BIGINT,
f6  BLOB,
f7  DATE,
f8  DATETIME,
f9  FLOAT,
f10 INT,
f11 LONGBLOB,
f12 LONGTEXT,
f13 MEDIUMBLOB,
f14 MEDIUMINT,
f15 MEDIUMTEXT,
f16 REAL,
f17 SMALLINT,
f18 TEXT,
f19 TIME,
f20 TIMESTAMP,
f21 TINYBLOB,
f22 TINYINT,
f23 TINYTEXT,
f24 YEAR,
f25 BINARY(255),
f26 BIT(64),
f27 CHAR(255),
f28 DECIMAL(30,7),
f29 DOUBLE,
f30 ENUM ('a','b', 'c') default 'a',
f31 FLOAT,
f32 NUMERIC(17,9),
f33 SET ('a', 'b', 'c') default 'b',
f34 VARBINARY(1025),
f35 VARCHAR(257)       
) ENGINE='InnoDB';
alter table t2 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11, drop
f12;
alter table t3 drop f5, drop f6, drop f8, drop f10, drop f11, drop f12;
alter table t4 drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11;
alter table t31 
drop f5, drop f6, drop f7, drop f8, drop f9, drop f10, drop f11,
drop f12, drop f13, drop f14, drop f15, drop f16, drop f17, drop f18,
drop f19, drop f20, drop f21, drop f22, drop f23, drop f24, drop f25,
drop f26, drop f27, drop f28, drop f29, drop f30, drop f31, drop f32,
drop f33, drop f34, drop f35;
INSERT into t2 set f1=1, f2=1, f3=1, f4='first', f8='f8: medium size blob', f10='f10:
some var char';
INSERT into t2 values (2, 2, 2, 'second',
2.0, 'b', 2000.0002, 'f8: medium size blob', 2000, 'f10: some var char',
'01234567', 'c'),
(3, 3, 3, 'third',
3.0, 'b', 3000.0003, 'f8: medium size blob', 3000, 'f10: some var char',
'01234567', 'c');
Warnings:
Warning	1264	Out of range value for column 'f9' at row 1
Warning	1264	Out of range value for column 'f9' at row 2
INSERT into t3 set f1=1, f2=1, f3=1, f4='first', f10='f10: some var char';
INSERT into t4 set f1=1, f2=1, f3=1, f4='first', f7='f7: medium size blob', f10='f10:
binary data';
INSERT into t31 set f1=1, f2=1, f3=1, f4='first';
INSERT into t31 set f1=1, f2=1, f3=2, f4='second',
f9=2.2,  f10='seven samurai', f28=222.222, f35='222';
Warnings:
Warning	1366	Incorrect integer value: 'seven samurai' for column 'f10' at row 1
INSERT into t31 values (1, 1, 3, 'third',
/* f5  BIGINT,  */            333333333333333333333333,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011', 
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         'three times three'
      );
Warnings:
Warning	1264	Out of range value for column 'f5' at row 1
Warning	1264	Out of range value for column 'f24' at row 1
INSERT into t31 values (1, 1, 4, 'fourth',
/* f5  BIGINT,  */            333333333333333333333333,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011',
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         'three times three'
       ),
(1, 1, 5, 'fifth',
/* f5  BIGINT,  */            333333333333333333333333,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011',
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         'three times three'
       ),
(1, 1, 6, 'sixth',
/* f5  BIGINT,  */            NULL,
/* f6  BLOB,  */              '3333333333333333333333',
/* f7  DATE,  */              '2007-07-18',
/* f8  DATETIME,  */          "2007-07-18",
/* f9  FLOAT,  */             3.33333333,
/* f10 INT,  */               333333333,
/* f11 LONGBLOB,  */          '3333333333333333333',
/* f12 LONGTEXT,  */          '3333333333333333333',
/* f13 MEDIUMBLOB,  */        '3333333333333333333',
/* f14 MEDIUMINT,  */         33,
/* f15 MEDIUMTEXT,  */        3.3,
/* f16 REAL,  */              3.3,
/* f17 SMALLINT,  */          3,
/* f18 TEXT,  */              '33',
/* f19 TIME,  */              '2:59:58.999',
/* f20 TIMESTAMP,  */         20000303000000,
/* f21 TINYBLOB,  */          '3333',
/* f22 TINYINT,  */           3,
/* f23 TINYTEXT,  */          '3',
/* f24 YEAR,  */              3000,
/* f25 BINARY(255),  */       'three_33333',
/* f26 BIT(64),  */           b'011',
/* f27 CHAR(255),  */         'three',
/* f28 DECIMAL(30,7),  */     3.333,
/* f29 DOUBLE,  */            3.333333333333333333333333333,
/* f30 ENUM ('a','b','c')*/   'c',
/* f31 FLOAT,  */             3.0,
/* f32 NUMERIC(17,9),  */     3.3333,
/* f33 SET ('a','b','c'),*/   'c',
/*f34 VARBINARY(1025),*/      '3333 minus 3',
/*f35 VARCHAR(257),*/         NULL
);
Warnings:
Warning	1264	Out of range value for column 'f5' at row 1
Warning	1264	Out of range value for column 'f24' at row 1
Warning	1264	Out of range value for column 'f5' at row 2
Warning	1264	Out of range value for column 'f24' at row 2
Warning	1264	Out of range value for column 'f24' at row 3
select * from t1 order by f3;
f1	f2	f3	f4
2	2	2	second
3	3	3	third
select * from t2 order by f1;
f1	f2	f3	f4
1	1	1	first
2	2	2	second
3	3	3	third
select * from t3 order by f1;
f1	f2	f3	f4
1	1	1	first
select * from t4 order by f1;
f1	f2	f3	f4
1	1	1	first
select * from t31 order by f1;
f1	f2	f3	f4
1	1	1	first
1	1	2	second
1	1	3	third
1	1	4	fourth
1	1	5	fifth
1	1	6	sixth
update t31 set f5=555555555555555 where f3=6;
update t31 set f2=2 where f3=2;
update t31 set f1=NULL where f3=1;
update t31 set f3=NULL, f27=NULL, f35='f35 new value' where f3=3;
Warnings:
Warning	1048	Column 'f3' cannot be null
delete from t1;
delete from t2;
delete from t3;
delete from t4;
delete from t31;
select * from t31;
f1	f2	f3	f4
show slave status;;
Slave_IO_State	#
Master_Host	127.0.0.1
Master_User	root
Master_Port	#
Connect_Retry	1
Master_Log_File	master-bin.000001
Read_Master_Log_Pos	#
Relay_Log_File	#
Relay_Log_Pos	#
Relay_Master_Log_File	master-bin.000001
Slave_IO_Running	Yes
Slave_SQL_Running	Yes
Replicate_Do_DB	
Replicate_Ignore_DB	
Replicate_Do_Table	
Replicate_Ignore_Table	
Replicate_Wild_Do_Table	
Replicate_Wild_Ignore_Table	
Last_Errno	0
Last_Error	
Skip_Counter	0
Exec_Master_Log_Pos	#
Relay_Log_Space	#
Until_Condition	None
Until_Log_File	
Until_Log_Pos	0
Master_SSL_Allowed	No
Master_SSL_CA_File	
Master_SSL_CA_Path	
Master_SSL_Cert	
Master_SSL_Cipher	
Master_SSL_Key	
Seconds_Behind_Master	#
Master_SSL_Verify_Server_Cert	No


Binary files /tmp/bk_.del-rpl_row_extraColmaster_ndb.result-1.2_EzDuiP and /tmp/bk_.del-rpl_row_extraColmaster_ndb.result-1.4_JwBARg differ

--- 1.1/mysql-test/t/rpl_extraColmaster_innodb.test	2007-08-17 17:24:08 +02:00
+++ 1.2/mysql-test/t/rpl_extraColmaster_innodb.test	2007-08-17 17:24:08 +02:00
@@ -12,4 +12,6 @@
 set binlog_format=statement;
 -- source extra/rpl_tests/rpl_extraMaster_Col.test
 
+set binlog_format=mixed;
+-- source extra/rpl_tests/rpl_extraMaster_Col.test
 
--- New file ---
+++ mysql-test/t/rpl_ndb_extraColmaster.test	07/07/27 14:45:42
#############################################################
# Purpose: To test having extra columns on the master WL#3915
#############################################################
-- source include/have_ndb.inc
-- source include/ndb_master-slave.inc
-- source include/have_binlog_format_row.inc

let $engine_type = 'NDB';

-- source extra/rpl_tests/rpl_extraMaster_Col.test



Thread
bk commit into 5.1 tree (jmiller:1.2608)Jonathan Miller17 Aug