List:Commits« Previous MessageNext Message »
From:cbell Date:July 27 2007 1:33am
Subject:bk commit into 5.1 tree (cbell:1.2565)
View as plain text  
Below is the list of changes that have just been committed into a local
5.1 repository of cbell. When cbell 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-07-26 21:32:52-04:00, cbell@mysql_cab_desk. +18 -0
  WL#3915 : (NDB) master's cols > slave
  
  Slave starts accepting and handling rows of master's tables which have more columns.
  The most important part of implementation is how to caclulate the amount of bytes to
  skip for unknown by slave column.
  
  To solve that issue this WL adopts results of WL#3228 which introduces an addon to
  table_map event that carries the necessary part of information about sizes of data of columns.

  mysql-test/extra/rpl_tests/rpl_extraMaster_Col.test@stripped, 2007-07-26 21:31:54-04:00, cbell@mysql_cab_desk. +393 -0
    WL#3915  master's cols > slave
    
    basic tests checking altering and skipping extra fields by slave.
    The fields can be of any possible types.
    

  mysql-test/extra/rpl_tests/rpl_extraMaster_Col.test@stripped, 2007-07-26 21:31:54-04:00, cbell@mysql_cab_desk. +0 -0

  mysql-test/extra/rpl_tests/rpl_row_tabledefs.test@stripped, 2007-07-26 21:31:41-04:00, cbell@mysql_cab_desk. +0 -63
    WL#3915  master's cols > slave
    
    Changed test to remove checks for error#1523 (more master cols than
    slave). This portion of the test is no longer needed.

  mysql-test/r/rpl_extraColmaster_innodb.result@stripped, 2007-07-26 21:31:52-04:00, cbell@mysql_cab_desk. +545 -0
    WL#3915  master's cols > slave
    
    new results
    

  mysql-test/r/rpl_extraColmaster_innodb.result@stripped, 2007-07-26 21:31:52-04:00, cbell@mysql_cab_desk. +0 -0

  mysql-test/r/rpl_extraColmaster_myisam.result@stripped, 2007-07-26 21:31:52-04:00, cbell@mysql_cab_desk. +545 -0
    WL#3915  master's cols > slave
    
    new results
    

  mysql-test/r/rpl_extraColmaster_myisam.result@stripped, 2007-07-26 21:31:52-04:00, cbell@mysql_cab_desk. +0 -0

  mysql-test/r/rpl_row_extraColmaster_ndb.result@stripped, 2007-07-26 21:31:53-04:00, cbell@mysql_cab_desk. +274 -0
    WL#3915  master's cols > slave
    
    new results
    

  mysql-test/r/rpl_row_extraColmaster_ndb.result@stripped, 2007-07-26 21:31:53-04:00, cbell@mysql_cab_desk. +0 -0

  mysql-test/r/rpl_row_tabledefs_2myisam.result@stripped, 2007-07-26 21:31:42-04:00, cbell@mysql_cab_desk. +0 -192
    WL#3915  master's cols > slave
    
    Corrected results from removal of checks for error#1523 (more master 
    cols than slave). This portion of the test is no longer needed.

  mysql-test/r/rpl_row_tabledefs_3innodb.result@stripped, 2007-07-26 21:31:43-04:00, cbell@mysql_cab_desk. +0 -192
    WL#3915  master's cols > slave
    
    Corrected results from removal of checks for error#1523 (more master 
    cols than slave). This portion of the test is no longer needed.

  mysql-test/r/rpl_stm_extraColmaster_ndb.result@stripped, 2007-07-26 21:31:54-04:00, cbell@mysql_cab_desk. +274 -0
    WL#3915  master's cols > slave
    
    new results
    

  mysql-test/r/rpl_stm_extraColmaster_ndb.result@stripped, 2007-07-26 21:31:54-04:00, cbell@mysql_cab_desk. +0 -0

  mysql-test/t/disabled.def@stripped, 2007-07-26 21:31:43-04:00, cbell@mysql_cab_desk. +1 -0
    WL#3915  master's cols > slave
    
    Disabled the rpl_stm_extraColmaster_ndb test because statement-based
    replication is not supported in NDB at this time. It can be enabled
    when statement-based replication for NDB is released.

  mysql-test/t/rpl_extraColmaster_innodb-master.opt@stripped, 2007-07-26 21:31:47-04:00, cbell@mysql_cab_desk. +1 -0
    WL#3915  master's cols > slave
    
    option for innodb
    

  mysql-test/t/rpl_extraColmaster_innodb-master.opt@stripped, 2007-07-26 21:31:47-04:00, cbell@mysql_cab_desk. +0 -0

  mysql-test/t/rpl_extraColmaster_innodb-slave.opt@stripped, 2007-07-26 21:31:48-04:00, cbell@mysql_cab_desk. +1 -0
    WL#3915  master's cols > slave
    
    option for innodb
    

  mysql-test/t/rpl_extraColmaster_innodb-slave.opt@stripped, 2007-07-26 21:31:48-04:00, cbell@mysql_cab_desk. +0 -0

  mysql-test/t/rpl_extraColmaster_innodb.test@stripped, 2007-07-26 21:31:48-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_extraColmaster_innodb.test@stripped, 2007-07-26 21:31:48-04:00, cbell@mysql_cab_desk. +0 -0

  mysql-test/t/rpl_extraColmaster_myisam.test@stripped, 2007-07-26 21:31:49-04:00, cbell@mysql_cab_desk. +13 -0
    WL#3915  master's cols > slave
    
    Test of myisam. Test runs in both statement- and row-based replication.
    
    

  mysql-test/t/rpl_extraColmaster_myisam.test@stripped, 2007-07-26 21:31:49-04:00, cbell@mysql_cab_desk. +0 -0

  mysql-test/t/rpl_row_extraColmaster_ndb.test@stripped, 2007-07-26 21:31:50-04:00, cbell@mysql_cab_desk. +12 -0
    WL#3915  master's cols > slave
    
    basic tests checking altering and skipping extra fields by slave.
    The fields can be of any possible types.
    

  mysql-test/t/rpl_row_extraColmaster_ndb.test@stripped, 2007-07-26 21:31:50-04:00, cbell@mysql_cab_desk. +0 -0

  mysql-test/t/rpl_stm_extraColmaster_ndb.test@stripped, 2007-07-26 21:31:51-04:00, cbell@mysql_cab_desk. +13 -0
    WL#3915  master's cols > slave
    
    Test of innodb. Test runs in statement-based replication.
    

  mysql-test/t/rpl_stm_extraColmaster_ndb.test@stripped, 2007-07-26 21:31:51-04:00, cbell@mysql_cab_desk. +0 -0

  sql/log_event.cc@stripped, 2007-07-26 21:31:45-04:00, cbell@mysql_cab_desk. +6 -13
    WL#3915  master's cols > slave
    
    copying extra (slave's) fields returns early if master's table version is wider;
    removing assert in the way of master > slave cols.

  sql/rpl_record.cc@stripped, 2007-07-26 21:31:45-04:00, cbell@mysql_cab_desk. +24 -1
    WL#3915  master's cols > slave
    
    adding a snippet that shift exectution curson donw the row skipping unknown by slave
    fields' data.

  sql/rpl_utility.cc@stripped, 2007-07-26 21:31:46-04:00, cbell@mysql_cab_desk. +0 -15
    WL#3915  master's cols > slave
    
    Remove warning message for master's cols > slave.

# 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:	cbell
# Host:	mysql_cab_desk.
# Root:	C:/source/c++/mysql-5.1_WL_3915_ndb

--- 1.280/sql/log_event.cc	2007-07-26 21:33:11 -04:00
+++ 1.281/sql/log_event.cc	2007-07-26 21:33:11 -04:00
@@ -7052,6 +7052,7 @@
                          my_size_t master_reclength,
                          my_ptrdiff_t master_fields)
 {
+  DBUG_ENTER("copy_extra_record_fields(table, master_reclen, master_fields)");
   DBUG_PRINT("info", ("Copying to 0x%lx "
                       "from field %lu at offset %lu "
                       "to field %d at offset %lu",
@@ -7062,6 +7063,10 @@
     Copying the extra fields of the slave that does not exist on
     master into record[0] (which are basically the default values).
   */
+
+  if (table->s->fields < (uint) master_fields)
+    DBUG_RETURN(0);
+
   DBUG_ASSERT(master_reclength <= table->s->reclength);
   if (master_reclength < table->s->reclength)
     bmove_align(table->record[0] + master_reclength,
@@ -7119,7 +7124,7 @@
       }
     }
   }
-  return 0;                                     // All OK
+  DBUG_RETURN(0);                                     // All OK
 }
 
 #define DBUG_PRINT_BITSET(N,FRM,BS)                \
@@ -7708,12 +7713,6 @@
 {
   int error;
   DBUG_ASSERT(row_start && row_end);
-  /*
-    This assertion actually checks that there is at least as many
-    columns on the slave as on the master.
-  */
-  DBUG_ASSERT(table->s->fields >= m_width);
-
   error= unpack_row(rli, table, m_width, row_start, &m_cols, row_end,
                     &m_master_reclength, table->read_set, DELETE_ROWS_EVENT);
   /*
@@ -7882,12 +7881,6 @@
 {
   int error;
   DBUG_ASSERT(row_start && row_end);
-  /*
-    This assertion actually checks that there is at least as many
-    columns on the slave as on the master.
-  */
-  DBUG_ASSERT(table->s->fields >= m_width);
-
   /*
     We need to perform some juggling below since unpack_row() always
     unpacks into table->record[0]. For more information, see the
--- New file ---
+++ mysql-test/extra/rpl_tests/rpl_extraMaster_Col.test	07/07/26 21:31:54
#############################################################
# Purpose: To test having extra columns on the master WL#3915
# engine inspecific sourced part
#############################################################

# TODO: partition specific
# -- source include/have_partition.inc

########### Clean up ################
--disable_warnings
--disable_query_log
DROP TABLE IF EXISTS  t1,t2,t3,t4,t31;

--enable_query_log
--enable_warnings

#
# Setup differently defined tables on master and slave
#

# Def on master: t (f_1 type_m_1,... f_s type_m_s, f_s1, f_m)
# Def on slave:  t (f_1 type_s_1,... f_s type_s_s)
# where type_mi,type_si (0 < i-1 <s1) pairs are compatible types (WL#3228)
# Arbitrary paramaters of the test are:
# 1. the tables type
# 2. the types of the extra master's column f_s1,..., f_m
# 3. the numbers of common columns `s' 
# 4. and  extra columns `m' are par
#
# optionally
#
# 5. vary the common columns type within compatible ranges.

#
# constant size column type:

#BIGINT       
#BLOB         
#DATE         
#DATETIME     
#FLOAT        
#INT, INTEGER 
#LONGBLOB      
#LONGTEXT     
#MEDIUMBLOB   
#MEDIUMINT    
#MEDIUMTEXT   
#REAL         
#SMALLINT     
#TEXT         
#TIME         
#TIMESTAMP    
#TINYBLOB     
#TINYINT      
#TINYTEXT     
#YEAR         

# variable size column types:

#BINARY(M)    
#BIT(M)        
#CHAR(M)      
#DECIMAL(M,D) 
#DOUBLE[P]    
#ENUM         
#FLOAT(p)     
#NUMERIC(M,D) 
#SET           
#VARBINARY(M) 
#VARCHAR(M)    
#


connection master;
    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;

connection master;

   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;


#connection slave;
   sync_slave_with_master;
--replace_column 1 # 7 # 8 # 9 # 22 # 23 # 33 #
--query_vertical show slave status;
   select * from t1 order by f3;


### Altering table def scenario

connection master;

   eval 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=$engine_type;

   eval 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=$engine_type;


# no ENUM and SET
    eval 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=$engine_type;


    eval 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=$engine_type;

#connection slave;
    sync_slave_with_master;
    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;
                 


connection 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');
   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';
   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'
      );
   
   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
       );
   
#connection slave;
   sync_slave_with_master;

   select * from t1 order by f3;
   select * from t2 order by f1;
   select * from t3 order by f1;
   select * from t4 order by f1;
   select * from t31 order by f1;
   
connection 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;

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

#connection slave;
   sync_slave_with_master;
   select * from t31;

--replace_result $MASTER_MYPORT MASTER_PORT
--replace_column 1 # 7 # 8 # 9 # 22 # 23 # 33 #
--query_vertical show slave status;

#### Clean Up ####

connection master;
--disable_warnings
--disable_query_log
  DROP TABLE t1,t2,t3,t4,t31;

#connection slave;
  sync_slave_with_master;
--enable_query_log
--enable_warnings

# END of the tests



--- New file ---
+++ mysql-test/r/rpl_extraColmaster_innodb.result	07/07/26 21:31:52
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	9306
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	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	9306
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	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_extraColmaster_myisam.result	07/07/26 21:31:52
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='MyISAM';
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	9306
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='MyISAM';
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='MyISAM';
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='MyISAM';
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='MyISAM';
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	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='MyISAM';
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	9306
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='MyISAM';
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='MyISAM';
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='MyISAM';
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='MyISAM';
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	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_row_extraColmaster_ndb.result	07/07/26 21:31:53
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;
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 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	9306
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='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 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	5	fifth
1	1	3	third
1	1	1	first
1	1	6	sixth
1	1	2	second
1	1	4	fourth
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	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_stm_extraColmaster_ndb.result	07/07/26 21:31:54
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;
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 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	9306
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='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 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	5	fifth
1	1	3	third
1	1	1	first
1	1	6	sixth
1	1	2	second
1	1	4	fourth
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	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/t/rpl_extraColmaster_innodb-master.opt	07/07/26 21:31:47
--innodb

--- New file ---
+++ mysql-test/t/rpl_extraColmaster_innodb-slave.opt	07/07/26 21:31:48
 --innodb

--- New file ---
+++ mysql-test/t/rpl_extraColmaster_innodb.test	07/07/26 21:31:48
#############################################################
# Purpose: To test having extra columns on the master WL#3915
#############################################################
-- source include/master-slave.inc
-- source include/have_innodb.inc

let $engine_type = 'InnoDB';

set binlog_format=row;
-- source extra/rpl_tests/rpl_extraMaster_Col.test

set binlog_format=statement;
-- source extra/rpl_tests/rpl_extraMaster_Col.test



--- New file ---
+++ mysql-test/t/rpl_extraColmaster_myisam.test	07/07/26 21:31:49
#############################################################
# Purpose: To test having extra columns on the master WL#3915
#############################################################
-- source include/master-slave.inc

let $engine_type = 'MyISAM';

set binlog_format=row;
-- source extra/rpl_tests/rpl_extraMaster_Col.test

set binlog_format=statement;
-- source extra/rpl_tests/rpl_extraMaster_Col.test


--- New file ---
+++ mysql-test/t/rpl_row_extraColmaster_ndb.test	07/07/26 21:31:50
###########################################
# Purpose: Wrapper for rpl_extraMaster_Col.test
#          Using NDB
########################################### 
-- 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


--- New file ---
+++ mysql-test/t/rpl_stm_extraColmaster_ndb.test	07/07/26 21:31:51
###########################################
# Purpose: Wrapper for rpl_extraMaster_Col.test
#          Using NDB
########################################### 
-- source include/have_ndb.inc
-- source include/ndb_master-slave.inc
-- source include/have_binlog_format_statement.inc

let $engine_type = 'NDB';

-- source extra/rpl_tests/rpl_extraMaster_Col.test




--- 1.257/mysql-test/t/disabled.def	2007-07-26 21:33:11 -04:00
+++ 1.258/mysql-test/t/disabled.def	2007-07-26 21:33:11 -04:00
@@ -32,6 +32,7 @@
 rpl_row_blob_innodb      : BUG#18980 2006-04-10 kent    Test fails randomly
 synchronization          : Bug#24529  	Test 'synchronization' fails on Mac pushbuild; Also on Linux 64 bit.
 rpl_ndb_ctype_ucs2_def   : BUG#27404 util thd mysql_parse sig11 when mysqld default multibyte charset
+rpl_stm_extraColmaster_ndb : WL#3915 : Statement-based replication not supported in ndb. Enable test when supported.
 
 # the below testcase have been reworked to avoid the bug, test contains comment, keep bug open
 #ndb_binlog_ddl_multi     : BUG#18976 2006-04-10 kent    CRBR: multiple binlog, second binlog may miss schema log events

--- 1.7/mysql-test/extra/rpl_tests/rpl_row_tabledefs.test	2007-07-26 21:33:11 -04:00
+++ 1.8/mysql-test/extra/rpl_tests/rpl_row_tabledefs.test	2007-07-26 21:33:11 -04:00
@@ -120,69 +120,6 @@
 SET GLOBAL SQL_SLAVE_SKIP_COUNTER=2;
 START SLAVE;
 
-connection master;
-INSERT INTO t9 VALUES (2);
-sync_slave_with_master;
-# Now slave is guaranteed to be running
-connection master;
-INSERT INTO t2 VALUES (2,4);
-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;
-
-connection master;
-INSERT INTO t9 VALUES (4);
-sync_slave_with_master;
-# Now slave is guaranteed to be running
-connection master;
-INSERT INTO t4 VALUES (4);
-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;
-
-connection master;
-INSERT INTO t9 VALUES (5);
-sync_slave_with_master;
-# Now slave is guaranteed to be running
-connection master;
-INSERT INTO t5 VALUES (5,10,25);
-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;
-
-connection master;
-INSERT INTO t9 VALUES (6);
-sync_slave_with_master;
-# Now slave is guaranteed to be running
-connection master;
-INSERT INTO t6 VALUES (6,12,36);
-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;
-
-connection master;
-INSERT INTO t9 VALUES (6);
-sync_slave_with_master;
---replace_result $MASTER_MYPORT MASTER_PORT
---replace_column 1 # 7 # 8 # 9 # 22 # 23 # 33 #
---query_vertical SHOW SLAVE STATUS
-
 # Testing some tables extra field that can be null and cannot be null
 # (but have default values)
 

--- 1.12/mysql-test/r/rpl_row_tabledefs_2myisam.result	2007-07-26 21:33:11 -04:00
+++ 1.13/mysql-test/r/rpl_row_tabledefs_2myisam.result	2007-07-26 21:33:11 -04:00
@@ -140,198 +140,6 @@
 Master_SSL_Verify_Server_Cert	No
 SET GLOBAL SQL_SLAVE_SKIP_COUNTER=2;
 START SLAVE;
-INSERT INTO t9 VALUES (2);
-INSERT INTO t2 VALUES (2,4);
-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	Table width mismatch - received 2 columns, test.t2 has 1 columns
-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;
-INSERT INTO t9 VALUES (4);
-INSERT INTO t4 VALUES (4);
-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 0 type mismatch - received type 3, test.t4 has type 4
-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;
-INSERT INTO t9 VALUES (5);
-INSERT INTO t5 VALUES (5,10,25);
-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 1 type mismatch - received type 3, test.t5 has type 4
-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;
-INSERT INTO t9 VALUES (6);
-INSERT INTO t6 VALUES (6,12,36);
-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 3, test.t6 has type 4
-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;
-INSERT INTO t9 VALUES (6);
-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	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
 INSERT INTO t7 VALUES (1),(2),(3);
 INSERT INTO t8 VALUES (1),(2),(3);
 SELECT * FROM t7 ORDER BY a;

--- 1.9/mysql-test/r/rpl_row_tabledefs_3innodb.result	2007-07-26 21:33:11 -04:00
+++ 1.10/mysql-test/r/rpl_row_tabledefs_3innodb.result	2007-07-26 21:33:11 -04:00
@@ -140,198 +140,6 @@
 Master_SSL_Verify_Server_Cert	No
 SET GLOBAL SQL_SLAVE_SKIP_COUNTER=2;
 START SLAVE;
-INSERT INTO t9 VALUES (2);
-INSERT INTO t2 VALUES (2,4);
-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	Table width mismatch - received 2 columns, test.t2 has 1 columns
-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;
-INSERT INTO t9 VALUES (4);
-INSERT INTO t4 VALUES (4);
-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 0 type mismatch - received type 3, test.t4 has type 4
-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;
-INSERT INTO t9 VALUES (5);
-INSERT INTO t5 VALUES (5,10,25);
-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 1 type mismatch - received type 3, test.t5 has type 4
-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;
-INSERT INTO t9 VALUES (6);
-INSERT INTO t6 VALUES (6,12,36);
-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 3, test.t6 has type 4
-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;
-INSERT INTO t9 VALUES (6);
-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	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
 INSERT INTO t7 VALUES (1),(2),(3);
 INSERT INTO t8 VALUES (1),(2),(3);
 SELECT * FROM t7 ORDER BY a;

--- 1.6/sql/rpl_utility.cc	2007-07-26 21:33:11 -04:00
+++ 1.7/sql/rpl_utility.cc	2007-07-26 21:33:11 -04:00
@@ -135,21 +135,6 @@
   TABLE_SHARE const *const tsh= table->s;
 
   /*
-    To get proper error reporting for all columns of the table, we
-    both check the width and iterate over all columns.
-  */
-  if (tsh->fields < size())
-  {
-    DBUG_ASSERT(tsh->db.str && tsh->table_name.str);
-    error= 1;
-    slave_print_msg(ERROR_LEVEL, rli, ER_BINLOG_ROW_WRONG_TABLE_DEF,
-                    "Table width mismatch - "
-                    "received %u columns, %s.%s has %u columns",
-                    (uint) size(), tsh->db.str, tsh->table_name.str,
-                    tsh->fields);
-  }
-
-  /*
     We now check for column type and size compatibility.
   */
   for (uint col= 0 ; col < cols_to_check ; ++col)

--- 1.3/sql/rpl_record.cc	2007-07-26 21:33:11 -04:00
+++ 1.4/sql/rpl_record.cc	2007-07-26 21:33:11 -04:00
@@ -144,7 +144,8 @@
    @param rli     Relay log info
    @param table   Table to unpack into
    @param colcnt  Number of columns to read from record
-   @param row     Packed row data
+   @param row_data
+                  Packed row data
    @param cols    Pointer to columns data to fill in
    @param row_end Pointer to variable that will hold the value of the
                   one-after-end position for the row
@@ -237,6 +238,28 @@
       null_mask <<= 1;
     }
     i++;
+  }
+
+  /*
+    throw away master's extra fields
+  */
+  uint max_cols= min(tabledef->size(), cols->n_bits);
+  for (; i < max_cols; i++)
+  {
+    if (bitmap_is_set(cols, i))
+    {
+      if ((null_mask & 0xFF) == 0)
+      {
+        DBUG_ASSERT(null_ptr < row_data + master_null_byte_count);
+        null_mask= 1U;
+        null_bits= *null_ptr++;
+      }
+      DBUG_ASSERT(null_mask & 0xFF); // One of the 8 LSB should be set
+
+      if (!((null_bits & null_mask) && tabledef->maybe_null(i)))
+        pack_ptr+= tabledef->calc_field_size(i, (uchar *) pack_ptr);
+      null_mask <<= 1;
+    }
   }
 
   /*

Thread
bk commit into 5.1 tree (cbell:1.2565)cbell27 Jul