Below is the list of changes that have just been committed into a local
5.1 repository of mats. When mats 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-02-20 21:36:47+01:00, mats@romeo.(none) +17 -0
Merge romeo.(none):/home/bkroot/mysql-5.1-new-rpl
into romeo.(none):/home/bk/b22583-mysql-5.1-new-rpl
MERGE: 1.2303.190.1
mysql-test/extra/rpl_tests/rpl_deadlock.test@stripped, 2007-02-20 21:34:34+01:00,
mats@romeo.(none) +2 -4
Manual merge
MERGE: 1.13.2.1
mysql-test/extra/rpl_tests/rpl_log.test@stripped, 2007-02-20 21:16:48+01:00,
mats@romeo.(none) +0 -0
Auto merged
MERGE: 1.39.2.1
mysql-test/r/rpl_000015.result@stripped, 2007-02-20 21:16:48+01:00, mats@romeo.(none) +0 -0
Auto merged
MERGE: 1.36.2.1
mysql-test/r/rpl_change_master.result@stripped, 2007-02-20 21:16:48+01:00, mats@romeo.(none)
+0 -0
Auto merged
MERGE: 1.18.2.1
mysql-test/r/rpl_deadlock_innodb.result@stripped, 2007-02-20 21:34:34+01:00,
mats@romeo.(none) +2 -4
Manual merge
MERGE: 1.11.2.1
mysql-test/r/rpl_row_basic_11bugs.result@stripped, 2007-02-20 21:16:48+01:00,
mats@romeo.(none) +0 -0
Auto merged
MERGE: 1.11.1.1
mysql-test/r/rpl_row_create_table.result@stripped, 2007-02-20 21:34:34+01:00,
mats@romeo.(none) +1 -2
Manual merge
MERGE: 1.7.1.1
mysql-test/r/rpl_row_delayed_ins.result@stripped, 2007-02-20 21:23:08+01:00,
mats@romeo.(none) +1 -7
Manual merge
MERGE: 1.4.1.1
mysql-test/r/rpl_row_max_relay_size.result@stripped, 2007-02-20 21:16:48+01:00,
mats@romeo.(none) +0 -0
Auto merged
MERGE: 1.4.1.1
mysql-test/r/rpl_switch_stm_row_mixed.result@stripped, 2007-02-20 21:16:49+01:00,
mats@romeo.(none) +0 -0
Auto merged
MERGE: 1.15.1.1
mysql-test/t/rpl_row_basic_11bugs.test@stripped, 2007-02-20 21:16:50+01:00,
mats@romeo.(none) +0 -0
Auto merged
MERGE: 1.10.1.1
mysql-test/t/rpl_row_create_table.test@stripped, 2007-02-20 21:34:34+01:00, mats@romeo.(none)
+1 -2
Manual merge
MERGE: 1.7.1.1
mysql-test/t/rpl_switch_stm_row_mixed.test@stripped, 2007-02-20 21:16:50+01:00,
mats@romeo.(none) +0 -0
Auto merged
MERGE: 1.12.1.1
mysql-test/t/user_var-binlog.test@stripped, 2007-02-20 21:16:50+01:00, mats@romeo.(none) +0
-0
Auto merged
MERGE: 1.7.1.1
sql/log_event.cc@stripped, 2007-02-20 21:34:34+01:00, mats@romeo.(none) +4 -12
Manual merge
MERGE: 1.246.5.1
sql/log_event.h@stripped, 2007-02-20 21:16:52+01:00, mats@romeo.(none) +0 -0
Auto merged
MERGE: 1.136.2.1
sql/sql_class.cc@stripped, 2007-02-20 21:16:53+01:00, mats@romeo.(none) +0 -0
Auto merged
MERGE: 1.293.6.1
# 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: mats
# Host: romeo.(none)
# Root: /home/bk/b22583-mysql-5.1-new-rpl/RESYNC
--- 1.263/sql/log_event.cc 2007-02-20 21:37:07 +01:00
+++ 1.264/sql/log_event.cc 2007-02-20 21:37:07 +01:00
@@ -1014,7 +1014,8 @@
ev = new Execute_load_query_log_event(buf, event_len, description_event);
break;
default:
- DBUG_PRINT("error",("Unknown evernt code: %d",(int) buf[EVENT_TYPE_OFFSET]));
+ DBUG_PRINT("error",("Unknown event code: %d",
+ (int) buf[EVENT_TYPE_OFFSET]));
ev= NULL;
break;
}
@@ -5556,18 +5557,18 @@
SYNOPSIS
unpack_row()
- rli Relay log info
- table Table to unpack into
- colcnt Number of columns to read from record
- row Packed row data
- cols Pointer to columns data to fill in
- row_end Pointer to variable that will hold the value of the
- one-after-end position for the row
+ rli Relay log info
+ table Table to unpack into
+ colcnt Number of columns to read from record
+ row_data Packed row data
+ cols Pointer to columns data to fill in
+ row_end Pointer to variable that will hold the value of the
+ one-after-end position for the row
master_reclength
- Pointer to variable that will be set to the length of the
- record on the master side
- rw_set Pointer to bitmap that holds either the read_set or the
- write_set of the table
+ Pointer to variable that will be set to the length of the
+ record on the master side
+ rw_set Pointer to bitmap that holds either the read_set or the
+ write_set of the table
DESCRIPTION
@@ -5595,8 +5596,8 @@
static int
unpack_row(RELAY_LOG_INFO *rli,
TABLE *table, uint const colcnt,
- char const *row, MY_BITMAP const *cols,
- char const **row_end, ulong *master_reclength,
+ char const *const row_data, MY_BITMAP const *cols,
+ char const **const row_end, ulong *const master_reclength,
MY_BITMAP* const rw_set, Log_event_type const event_type)
{
byte *const record= table->record[0];
@@ -5605,58 +5606,67 @@
DBUG_PRINT("enter", ("row: 0x%lx table->record[0]: 0x%lx", (long) row, (long)
record));
my_size_t master_null_bytes= table->s->null_bytes;
- if (colcnt != table->s->fields)
- {
- Field **fptr= &table->field[colcnt-1];
- do
- master_null_bytes= (*fptr)->last_null_byte();
- while (master_null_bytes == Field::LAST_NULL_BYTE_UNDEF &&
- fptr-- > table->field);
+ char const *null_ptr= row_data;
+ char const *pack_ptr= row_data + master_null_byte_count;
- /*
- If master_null_bytes is LAST_NULL_BYTE_UNDEF (0) at this time,
- there were no nullable fields nor BIT fields at all in the
- columns that are common to the master and the slave. In that
- case, there is only one null byte holding the X bit.
+ bitmap_clear_all(rw_set);
- OBSERVE! There might still be nullable columns following the
- common columns, so table->s->null_bytes might be greater than 1.
- */
- if (master_null_bytes == Field::LAST_NULL_BYTE_UNDEF)
- master_null_bytes= 1;
- }
-
- DBUG_ASSERT(master_null_bytes <= table->s->null_bytes);
- memcpy(record, row, master_null_bytes); // [1]
- int error= 0;
-
- bitmap_set_all(rw_set);
+ memcpy(record, table->s->default_values, table->s->null_bytes);
Field **const begin_ptr = table->field;
Field **field_ptr;
- char const *ptr= row + master_null_bytes;
Field **const end_ptr= begin_ptr + colcnt;
+
+ DBUG_ASSERT(null_ptr < row_data + master_null_byte_count);
+
+ // Mask to mask out the correct bit among the null bits
+ unsigned int null_mask= 1U;
+ // The "current" null bits
+ unsigned int null_bits= *null_ptr++;
for (field_ptr= begin_ptr ; field_ptr < end_ptr ; ++field_ptr)
{
Field *const f= *field_ptr;
if (bitmap_is_set(cols, field_ptr - begin_ptr))
{
- DBUG_ASSERT((const char *)table->record[0] <= f->ptr);
- DBUG_ASSERT(f->ptr < ((const char *)table->record[0] +
table->s->reclength +
- (f->pack_length_in_rec() == 0)));
-
- DBUG_PRINT("info", ("unpacking column '%s' to 0x%lx", f->field_name,
- (long) f->ptr));
- ptr= f->unpack(f->ptr, ptr);
+ 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
+
/* Field...::unpack() cannot return 0 */
- DBUG_ASSERT(ptr != NULL);
+ DBUG_ASSERT(pack_ptr != NULL);
+
+ if ((null_bits & null_mask) && f->maybe_null())
+ f->set_null(offset);
+ else
+ {
+ f->set_notnull(offset);
+
+ /*
+ We only unpack the field if it was non-null
+ */
+ f->move_field_offset(offset);
+ pack_ptr= f->unpack(f->ptr, pack_ptr);
+ f->move_field_offset(-offset);
+ }
+
+ bitmap_set_bit(rw_set, field_ptr - begin_ptr);
+ null_mask <<= 1;
}
- else
- bitmap_clear_bit(rw_set, field_ptr - begin_ptr);
}
- *row_end = ptr;
+ /*
+ We should now have read all the null bytes, otherwise something is
+ really wrong.
+ */
+ DBUG_ASSERT(null_ptr == row_data + master_null_byte_count);
+
+ *row_end = pack_ptr;
if (master_reclength)
{
if (*field_ptr)
@@ -5681,9 +5691,8 @@
uint32 const mask= NOT_NULL_FLAG | NO_DEFAULT_VALUE_FLAG;
Field *const f= *field_ptr;
- DBUG_PRINT("info", ("processing column '%s' @ 0x%lx", f->field_name,
- (long) f->ptr));
- if (event_type == WRITE_ROWS_EVENT && (f->flags & mask) == mask)
+ if (event_type == WRITE_ROWS_EVENT &&
+ ((*field_ptr)->flags & mask) == mask)
{
slave_print_msg(ERROR_LEVEL, rli, ER_NO_DEFAULT_FOR_FIELD,
"Field `%s` of table `%s`.`%s` "
@@ -6883,6 +6892,8 @@
DBUG_ASSERT(table->in_use != NULL);
+ DBUG_DUMP("record[0]", table->record[0], table->s->reclength);
+
if ((table->file->ha_table_flags() & HA_PRIMARY_KEY_REQUIRED_FOR_POSITION)
&&
table->s->primary_key < MAX_KEY)
{
@@ -7017,16 +7028,18 @@
/* Continue until we find the right record or have made a full loop */
do
{
+ error= table->file->rnd_next(table->record[1]);
+
/*
- We need to set the null bytes to ensure that the filler bit
- are all set when returning. There are storage engines that
- just set the necessary bits on the bytes and don't set the
- filler bits correctly.
+ Patching the returned record since some storage engines do
+ not set the filler bits correctly.
*/
my_ptrdiff_t const pos=
table->s->null_bytes > 0 ? table->s->null_bytes - 1 : 0;
- table->record[1][pos]= 0xFF;
- error= table->file->rnd_next(table->record[1]);
+ table->record[1][pos]|= 256U - (1U << table->s->last_null_bit_pos);
+
+ DBUG_DUMP("record[0]", table->record[0], table->s->reclength);
+ DBUG_DUMP("record[1]", table->record[1], table->s->reclength);
switch (error)
{
--- 1.146/sql/log_event.h 2007-02-20 21:37:07 +01:00
+++ 1.147/sql/log_event.h 2007-02-20 21:37:07 +01:00
@@ -467,10 +467,23 @@
XID_EVENT= 16,
BEGIN_LOAD_QUERY_EVENT= 17,
EXECUTE_LOAD_QUERY_EVENT= 18,
+
TABLE_MAP_EVENT = 19,
- WRITE_ROWS_EVENT = 20,
- UPDATE_ROWS_EVENT = 21,
- DELETE_ROWS_EVENT = 22,
+
+ /*
+ These event numbers were used for 5.1.0 to 5.1.15 and are
+ therefore obsolete.
+ */
+ PRE_GA_WRITE_ROWS_EVENT = 20,
+ PRE_GA_UPDATE_ROWS_EVENT = 21,
+ PRE_GA_DELETE_ROWS_EVENT = 22,
+
+ /*
+ These event numbers are used from 5.1.16 and forward
+ */
+ WRITE_ROWS_EVENT = 23,
+ UPDATE_ROWS_EVENT = 24,
+ DELETE_ROWS_EVENT = 25,
/*
Add new events here - right above this comment!
--- 1.306/sql/sql_class.cc 2007-02-20 21:37:07 +01:00
+++ 1.307/sql/sql_class.cc 2007-02-20 21:37:07 +01:00
@@ -2493,30 +2493,113 @@
}
-my_size_t THD::pack_row(TABLE *table, MY_BITMAP const* cols, byte *row_data,
- const byte *record) const
+/*
+ Pack a record of data for a table into a format suitable for
+ transfer via the binary log.
+
+ SYNOPSIS
+ THD::pack_row()
+ table Table describing the format of the record
+ cols Bitmap with a set bit for each column that should be
+ stored in the row
+ row_data Pointer to memory where row will be written
+ record Pointer to record that should be packed. It is assumed
+ that the pointer refers to either record[0] or
+ record[1], but no such check is made since the code does
+ not rely on that.
+
+ DESCRIPTION
+
+ The format for a row in transfer with N fields is the following:
+
+ ceil(N/8) null bytes:
+ One null bit for every column *regardless of whether it can be
+ null or not*. This simplifies the decoding. Observe that the
+ number of null bits is equal to the number of set bits in the
+ 'cols' bitmap. The number of null bytes is the smallest number
+ of bytes necessary to store the null bits.
+
+ Padding bits are 1.
+
+ N packets:
+ Each field is stored in packed format.
+
+
+ RETURN VALUE
+
+ The number of bytes written at 'row_data'.
+ */
+my_size_t
+THD::pack_row(TABLE *table, MY_BITMAP const* cols,
+ byte *const row_data, const byte *record) const
{
Field **p_field= table->field, *field;
- int n_null_bytes= table->s->null_bytes;
- byte *ptr;
- uint i;
+ int const null_byte_count= (bitmap_bits_set(cols) + 7) / 8;
+ byte *pack_ptr = row_data + null_byte_count;
+ byte *null_ptr = row_data;
my_ptrdiff_t const rec_offset= record - table->record[0];
my_ptrdiff_t const def_offset= table->s->default_values - table->record[0];
- memcpy(row_data, record, n_null_bytes);
- ptr= row_data+n_null_bytes;
- for (i= 0 ; (field= *p_field) ; i++, p_field++)
+ /*
+ We write the null bits and the packed records using one pass
+ through all the fields. The null bytes are written little-endian,
+ i.e., the first fields are in the first byte.
+ */
+ unsigned int null_bits= (1U << 8) - 1;
+ // Mask to mask out the correct but among the null bits
+ unsigned int null_mask= 1U;
+ for ( ; (field= *p_field) ; p_field++)
{
- if (bitmap_is_set(cols,i))
+ DBUG_PRINT("debug", ("null_mask=%d; null_ptr=%p; row_data=%p; null_byte_count=%d",
+ null_mask, null_ptr, row_data, null_byte_count));
+ if (bitmap_is_set(cols, p_field - table->field))
{
- my_ptrdiff_t const offset=
- field->is_null(rec_offset) ? def_offset : rec_offset;
- field->move_field_offset(offset);
- ptr= (byte*)field->pack((char *) ptr, field->ptr);
- field->move_field_offset(-offset);
+ my_ptrdiff_t offset;
+ if (field->is_null(rec_offset))
+ {
+ offset= def_offset;
+ null_bits |= null_mask;
+ }
+ else
+ {
+ offset= rec_offset;
+ null_bits &= ~null_mask;
+
+ /*
+ We only store the data of the field if it is non-null
+ */
+ field->move_field_offset(offset);
+ pack_ptr= (byte*)field->pack((char *) pack_ptr, field->ptr);
+ field->move_field_offset(-offset);
+ }
+
+ null_mask <<= 1;
+ if ((null_mask & 0xFF) == 0)
+ {
+ DBUG_ASSERT(null_ptr < row_data + null_byte_count);
+ null_mask = 1U;
+ *null_ptr++ = null_bits;
+ null_bits= (1U << 8) - 1;
+ }
}
}
- return (static_cast<my_size_t>(ptr - row_data));
+
+ /*
+ Write the last (partial) byte, if there is one
+ */
+ if ((null_mask & 0xFF) > 1)
+ {
+ DBUG_ASSERT(null_ptr < row_data + null_byte_count);
+ *null_ptr++ = null_bits;
+ }
+
+ /*
+ The null pointer should now point to the first byte of the
+ packed data. If it doesn't, something is very wrong.
+ */
+ DBUG_ASSERT(null_ptr == row_data + null_byte_count);
+
+ return static_cast<my_size_t>(pack_ptr - row_data);
}
--- 1.20/mysql-test/r/rpl_change_master.result 2007-02-20 21:37:07 +01:00
+++ 1.21/mysql-test/r/rpl_change_master.result 2007-02-20 21:37:07 +01:00
@@ -13,11 +13,11 @@
stop slave;
show slave status;
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 # # # master-bin.000001 No No 0 0 187 # None 0 No #
+# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 # # # master-bin.000001 No No 0 0 190 # None 0 No #
change master to master_user='root';
show slave status;
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 # # # master-bin.000001 No No 0 0 187 # None 0 No #
+# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 # # # master-bin.000001 No No 0 0 190 # None 0 No #
start slave;
select * from t1;
n
--- 1.16/mysql-test/r/rpl_deadlock_innodb.result 2007-02-20 21:37:07 +01:00
+++ 1.17/mysql-test/r/rpl_deadlock_innodb.result 2007-02-20 21:37:07 +01:00
@@ -80,7 +80,7 @@
Seconds_Behind_Master #
stop slave;
delete from t3;
-change master to master_log_pos=544;
+change master to master_log_pos=547;
begin;
select * from t2 for update;
a
@@ -136,7 +136,7 @@
set global max_relay_log_size=0;
stop slave;
delete from t3;
-change master to master_log_pos=544;
+change master to master_log_pos=547;
begin;
select * from t2 for update;
a
--- 1.17/mysql-test/r/rpl_switch_stm_row_mixed.result 2007-02-20 21:37:07 +01:00
+++ 1.18/mysql-test/r/rpl_switch_stm_row_mixed.result 2007-02-20 21:37:07 +01:00
@@ -404,7 +404,7 @@
LOCK TABLES t12 WRITE;
INSERT INTO t12 VALUES(UUID());
UNLOCK TABLES;
-show binlog events from 102;
+show binlog events from 105;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query 1 # drop database if exists mysqltest1
master-bin.000001 # Query 1 # create database mysqltest1
@@ -714,7 +714,7 @@
master-bin.000001 # Query 1 # use `mysqltest1`; CREATE TABLE t12 (data LONG)
master-bin.000001 # Table_map 1 # table_id: # (mysqltest1.t12)
master-bin.000001 # Write_rows 1 # table_id: # flags: STMT_END_F
-show binlog events from 102;
+show binlog events from 105;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query 1 # drop database if exists mysqltest1
master-bin.000001 # Query 1 # create database mysqltest1
--- 1.18/mysql-test/extra/rpl_tests/rpl_deadlock.test 2007-02-20 21:37:07 +01:00
+++ 1.19/mysql-test/extra/rpl_tests/rpl_deadlock.test 2007-02-20 21:37:07 +01:00
@@ -82,7 +82,7 @@
stop slave;
delete from t3;
-change master to master_log_pos=544; # the BEGIN log event
+change master to master_log_pos=547; # the BEGIN log event
begin;
select * from t2 for update; # hold lock
start slave;
@@ -107,7 +107,7 @@
# This is really copy-paste of 2) of above
stop slave;
delete from t3;
-change master to master_log_pos=544;
+change master to master_log_pos=547;
begin;
select * from t2 for update;
start slave;
--- 1.14/mysql-test/t/rpl_switch_stm_row_mixed.test 2007-02-20 21:37:07 +01:00
+++ 1.15/mysql-test/t/rpl_switch_stm_row_mixed.test 2007-02-20 21:37:07 +01:00
@@ -519,7 +519,7 @@
--replace_column 2 # 5 #
--replace_regex /table_id: [0-9]+/table_id: #/
-show binlog events from 102;
+show binlog events from 105;
sync_slave_with_master;
# as we're using UUID we don't SELECT but use "diff" like in rpl_row_UUID
@@ -536,7 +536,7 @@
connection master;
--replace_column 2 # 5 #
--replace_regex /table_id: [0-9]+/table_id: #/
-show binlog events from 102;
+show binlog events from 105;
# Now test that mysqlbinlog works fine on a binlog generated by the
# mixed mode
--- 1.8/mysql-test/t/user_var-binlog.test 2007-02-20 21:37:07 +01:00
+++ 1.9/mysql-test/t/user_var-binlog.test 2007-02-20 21:37:07 +01:00
@@ -15,7 +15,7 @@
insert into t1 values (@var1),(@var2);
--replace_column 2 # 5 #
--replace_regex /table_id: [0-9]+/table_id: #/
-show binlog events from 102;
+show binlog events from 105;
# more important than SHOW BINLOG EVENTS, mysqlbinlog (where we
# absolutely need variables names to be quoted and strings to be
# escaped).
--- 1.8/mysql-test/r/rpl_row_create_table.result 2007-02-20 21:37:07 +01:00
+++ 1.9/mysql-test/r/rpl_row_create_table.result 2007-02-20 21:37:07 +01:00
@@ -8,27 +8,27 @@
CREATE TABLE t2 (a INT, b INT) ENGINE=Merge;
CREATE TABLE t3 (a INT, b INT) CHARSET=utf8;
CREATE TABLE t4 (a INT, b INT) ENGINE=Merge CHARSET=utf8;
-SHOW BINLOG EVENTS FROM 212;
+SHOW BINLOG EVENTS FROM 215;
Log_name #
-Pos 212
+Pos 215
Event_type Query
Server_id #
End_log_pos #
Info use `test`; CREATE TABLE t1 (a INT, b INT)
Log_name #
-Pos 305
+Pos 308
Event_type Query
Server_id #
End_log_pos #
Info use `test`; CREATE TABLE t2 (a INT, b INT) ENGINE=Merge
Log_name #
-Pos 411
+Pos 414
Event_type Query
Server_id #
End_log_pos #
Info use `test`; CREATE TABLE t3 (a INT, b INT) CHARSET=utf8
Log_name #
-Pos 517
+Pos 520
Event_type Query
Server_id #
End_log_pos #
@@ -127,7 +127,7 @@
NULL 6 12
CREATE TABLE t7 (UNIQUE(b)) SELECT a,b FROM tt3;
ERROR 23000: Duplicate entry '2' for key 'b'
-SHOW BINLOG EVENTS FROM 1118;
+SHOW BINLOG EVENTS FROM 959;
Log_name Pos Event_type Server_id End_log_pos Info
CREATE TABLE t7 (a INT, b INT UNIQUE);
INSERT INTO t7 SELECT a,b FROM tt3;
@@ -137,11 +137,11 @@
1 2
2 4
3 6
-SHOW BINLOG EVENTS FROM 1118;
+SHOW BINLOG EVENTS FROM 1097;
Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 1118 Query 1 1218 use `test`; CREATE TABLE t7 (a INT, b INT UNIQUE)
-master-bin.000001 1218 Table_map 1 1258 table_id: # (test.t7)
-master-bin.000001 1258 Write_rows 1 1314 table_id: # flags: STMT_END_F
+master-bin.000001 1097 Query 1 1197 use `test`; CREATE TABLE t7 (a INT, b INT UNIQUE)
+master-bin.000001 1197 Table_map 1 1237 table_id: # (test.t7)
+master-bin.000001 1237 Write_rows 1 1293 table_id: # flags: STMT_END_F
SELECT * FROM t7 ORDER BY a,b;
a b
1 2
@@ -154,10 +154,10 @@
ROLLBACK;
Warnings:
Warning 1196 Some non-transactional changed tables couldn't be rolled back
-SHOW BINLOG EVENTS FROM 1314;
+SHOW BINLOG EVENTS FROM 1293;
Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 1314 Table_map 1 1354 table_id: # (test.t7)
-master-bin.000001 1354 Write_rows 1 1410 table_id: # flags: STMT_END_F
+master-bin.000001 1293 Table_map 1 1333 table_id: # (test.t7)
+master-bin.000001 1333 Write_rows 1 1389 table_id: # flags: STMT_END_F
SELECT * FROM t7 ORDER BY a,b;
a b
1 2
@@ -192,10 +192,10 @@
`a` int(11) DEFAULT NULL,
`b` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
-SHOW BINLOG EVENTS FROM 1410;
+SHOW BINLOG EVENTS FROM 1389;
Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 1410 Query 1 1496 use `test`; CREATE TABLE t8 LIKE t4
-master-bin.000001 1496 Query 1 1635 use `test`; CREATE TABLE `t9` (
+master-bin.000001 1389 Query 1 1475 use `test`; CREATE TABLE t8 LIKE t4
+master-bin.000001 1475 Query 1 1614 use `test`; CREATE TABLE `t9` (
`a` int(11) DEFAULT NULL,
`b` int(11) DEFAULT NULL
)
--- 1.5/mysql-test/r/rpl_row_delayed_ins.result 2007-02-20 21:37:07 +01:00
+++ 1.6/mysql-test/r/rpl_row_delayed_ins.result 2007-02-20 21:37:07 +01:00
@@ -5,9 +5,7 @@
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
create table t1(a int not null primary key) engine=myisam;
-insert delayed into t1 values (1);
-insert delayed into t1 values (2);
-insert delayed into t1 values (3);
+insert delayed into t1 values (1),(2),(3);
flush tables;
SELECT * FROM t1 ORDER BY a;
a
@@ -16,15 +14,13 @@
3
show binlog events;
Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 4 Format_desc 1 102 Server ver: VERSION, Binlog ver: 4
-master-bin.000001 102 Query 1 222 use `test`; create table t1(a int not null primary key)
engine=myisam
-master-bin.000001 222 Table_map 1 261 table_id: # (test.t1)
-master-bin.000001 261 Write_rows 1 295 table_id: # flags: STMT_END_F
-master-bin.000001 295 Table_map 1 334 table_id: # (test.t1)
-master-bin.000001 334 Write_rows 1 368 table_id: # flags: STMT_END_F
-master-bin.000001 368 Table_map 1 407 table_id: # (test.t1)
-master-bin.000001 407 Write_rows 1 441 table_id: # flags: STMT_END_F
-master-bin.000001 441 Query 1 516 use `test`; flush tables
+master-bin.000001 4 Format_desc 1 105 Server ver: VERSION, Binlog ver: 4
+master-bin.000001 105 Query 1 225 use `test`; create table t1(a int not null primary key)
engine=myisam
+master-bin.000001 225 Table_map 1 264 table_id: # (test.t1)
+master-bin.000001 264 Write_rows 1 298 table_id: # flags: STMT_END_F
+master-bin.000001 298 Table_map 1 337 table_id: # (test.t1)
+master-bin.000001 337 Write_rows 1 376 table_id: # flags: STMT_END_F
+master-bin.000001 376 Query 1 451 use `test`; flush tables
SELECT * FROM t1 ORDER BY a;
a
1
--- 1.5/mysql-test/r/rpl_row_max_relay_size.result 2007-02-20 21:37:07 +01:00
+++ 1.6/mysql-test/r/rpl_row_max_relay_size.result 2007-02-20 21:37:07 +01:00
@@ -30,7 +30,7 @@
Master_Port MASTER_PORT
Connect_Retry 1
Master_Log_File master-bin.000001
-Read_Master_Log_Pos 58664
+Read_Master_Log_Pos 58667
Relay_Log_File #
Relay_Log_Pos #
Relay_Master_Log_File master-bin.000001
@@ -45,7 +45,7 @@
Last_Errno 0
Last_Error
Skip_Counter 0
-Exec_Master_Log_Pos 58664
+Exec_Master_Log_Pos 58667
Relay_Log_Space #
Until_Condition None
Until_Log_File
@@ -73,7 +73,7 @@
Master_Port MASTER_PORT
Connect_Retry 1
Master_Log_File master-bin.000001
-Read_Master_Log_Pos 58664
+Read_Master_Log_Pos 58667
Relay_Log_File #
Relay_Log_Pos #
Relay_Master_Log_File master-bin.000001
@@ -88,7 +88,7 @@
Last_Errno 0
Last_Error
Skip_Counter 0
-Exec_Master_Log_Pos 58664
+Exec_Master_Log_Pos 58667
Relay_Log_Space #
Until_Condition None
Until_Log_File
@@ -116,7 +116,7 @@
Master_Port MASTER_PORT
Connect_Retry 1
Master_Log_File master-bin.000001
-Read_Master_Log_Pos 58664
+Read_Master_Log_Pos 58667
Relay_Log_File #
Relay_Log_Pos #
Relay_Master_Log_File master-bin.000001
@@ -131,7 +131,7 @@
Last_Errno 0
Last_Error
Skip_Counter 0
-Exec_Master_Log_Pos 58664
+Exec_Master_Log_Pos 58667
Relay_Log_Space #
Until_Condition None
Until_Log_File
@@ -197,7 +197,7 @@
Master_Port MASTER_PORT
Connect_Retry 1
Master_Log_File master-bin.000001
-Read_Master_Log_Pos 58750
+Read_Master_Log_Pos 58753
Relay_Log_File #
Relay_Log_Pos #
Relay_Master_Log_File master-bin.000001
@@ -212,7 +212,7 @@
Last_Errno 0
Last_Error
Skip_Counter 0
-Exec_Master_Log_Pos 58750
+Exec_Master_Log_Pos 58753
Relay_Log_Space #
Until_Condition None
Until_Log_File
@@ -236,7 +236,7 @@
Master_Port MASTER_PORT
Connect_Retry 1
Master_Log_File master-bin.000001
-Read_Master_Log_Pos 58826
+Read_Master_Log_Pos 58829
Relay_Log_File #
Relay_Log_Pos #
Relay_Master_Log_File master-bin.000001
@@ -251,7 +251,7 @@
Last_Errno 0
Last_Error
Skip_Counter 0
-Exec_Master_Log_Pos 58826
+Exec_Master_Log_Pos 58829
Relay_Log_Space #
Until_Condition None
Until_Log_File
@@ -266,7 +266,7 @@
flush logs;
show master status;
File master-bin.000002
-Position 102
+Position 105
Binlog_Do_DB <Binlog_Ignore_DB>
Binlog_Ignore_DB
set global max_binlog_size= @my_max_binlog_size;
--- 1.8/mysql-test/t/rpl_row_create_table.test 2007-02-20 21:37:07 +01:00
+++ 1.9/mysql-test/t/rpl_row_create_table.test 2007-02-20 21:37:07 +01:00
@@ -36,7 +36,7 @@
CREATE TABLE t4 (a INT, b INT) ENGINE=Merge CHARSET=utf8;
--replace_column 1 # 4 # 5 #
--replace_regex /\/\* xid=.* \*\//\/* XID *\// /table_id: [0-9]+/table_id: #/
---query_vertical SHOW BINLOG EVENTS FROM 212
+--query_vertical SHOW BINLOG EVENTS FROM 215
--echo **** On Master ****
--query_vertical SHOW CREATE TABLE t1
--query_vertical SHOW CREATE TABLE t2
@@ -71,7 +71,7 @@
CREATE TABLE t7 (UNIQUE(b)) SELECT a,b FROM tt3;
# Shouldn't be written to the binary log
--replace_regex /\/\* xid=.* \*\//\/* XID *\// /table_id: [0-9]+/table_id: #/
-SHOW BINLOG EVENTS FROM 1118;
+SHOW BINLOG EVENTS FROM 959;
# Test that INSERT-SELECT works the same way as for SBR.
CREATE TABLE t7 (a INT, b INT UNIQUE);
@@ -80,7 +80,7 @@
SELECT * FROM t7 ORDER BY a,b;
# Should be written to the binary log
--replace_regex /\/\* xid=.* \*\//\/* XID *\// /table_id: [0-9]+/table_id: #/
-SHOW BINLOG EVENTS FROM 1118;
+SHOW BINLOG EVENTS FROM 1097;
sync_slave_with_master;
SELECT * FROM t7 ORDER BY a,b;
@@ -91,7 +91,7 @@
INSERT INTO t7 SELECT a,b FROM tt4;
ROLLBACK;
--replace_regex /\/\* xid=.* \*\//\/* XID *\// /table_id: [0-9]+/table_id: #/
-SHOW BINLOG EVENTS FROM 1314;
+SHOW BINLOG EVENTS FROM 1293;
SELECT * FROM t7 ORDER BY a,b;
sync_slave_with_master;
SELECT * FROM t7 ORDER BY a,b;
@@ -106,7 +106,7 @@
--query_vertical SHOW CREATE TABLE t8
--query_vertical SHOW CREATE TABLE t9
--replace_regex /\/\* xid=.* \*\//\/* XID *\// /table_id: [0-9]+/table_id: #/
-SHOW BINLOG EVENTS FROM 1410;
+SHOW BINLOG EVENTS FROM 1389;
sync_slave_with_master;
--echo **** On Slave ****
--query_vertical SHOW CREATE TABLE t8
--- 1.12/mysql-test/r/rpl_row_basic_11bugs.result 2007-02-20 21:37:07 +01:00
+++ 1.13/mysql-test/r/rpl_row_basic_11bugs.result 2007-02-20 21:37:07 +01:00
@@ -24,11 +24,11 @@
Tables_in_test_ignore
t2
INSERT INTO t2 VALUES (3,3), (4,4);
-SHOW BINLOG EVENTS FROM 102;
+SHOW BINLOG EVENTS FROM 105;
Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 102 Query 1 195 use `test`; CREATE TABLE t1 (a INT, b INT)
-master-bin.000001 195 Table_map 1 235 table_id: # (test.t1)
-master-bin.000001 235 Write_rows 1 282 table_id: # flags: STMT_END_F
+master-bin.000001 105 Query 1 198 use `test`; CREATE TABLE t1 (a INT, b INT)
+master-bin.000001 198 Table_map 1 238 table_id: # (test.t1)
+master-bin.000001 238 Write_rows 1 285 table_id: # flags: STMT_END_F
**** On Slave ****
SHOW DATABASES;
Database
@@ -54,10 +54,10 @@
UPDATE t1 SET a=99 WHERE a = 0;
SHOW BINLOG EVENTS;
Log_name Pos Event_type Server_id End_log_pos Info
-master-bin.000001 4 Format_desc 1 102 Server ver: SERVER_VERSION, Binlog ver: 4
-master-bin.000001 102 Query 1 188 use `test`; CREATE TABLE t1 (a INT)
-master-bin.000001 188 Table_map 1 227 table_id: # (test.t1)
-master-bin.000001 227 Write_rows 1 266 table_id: # flags: STMT_END_F
+master-bin.000001 4 Format_desc 1 105 Server ver: SERVER_VERSION, Binlog ver: 4
+master-bin.000001 105 Query 1 191 use `test`; CREATE TABLE t1 (a INT)
+master-bin.000001 191 Table_map 1 230 table_id: # (test.t1)
+master-bin.000001 230 Write_rows 1 269 table_id: # flags: STMT_END_F
DROP TABLE t1;
================ Test for BUG#17620 ================
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
@@ -118,3 +118,102 @@
SELECT HEX(a),b FROM t1;
HEX(a) b
0 2
+DROP TABLE IF EXISTS t1;
+================ Test for BUG#22583 ================
+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;
+**** On Master ****
+CREATE TABLE t1_myisam (k INT, a BIT(1), b BIT(9)) ENGINE=MYISAM;
+CREATE TABLE t1_innodb (k INT, a BIT(1), b BIT(9)) ENGINE=INNODB;
+CREATE TABLE t2_myisam (k INT, a BIT(1) NOT NULL, b BIT(4) NOT NULL) ENGINE=MYISAM;
+CREATE TABLE t2_innodb (k INT, a BIT(1) NOT NULL, b BIT(4) NOT NULL) ENGINE=INNODB;
+**** On Slave ****
+ALTER TABLE t1_myisam ENGINE=INNODB;
+ALTER TABLE t1_innodb ENGINE=MYISAM;
+ALTER TABLE t2_myisam ENGINE=INNODB;
+ALTER TABLE t2_innodb ENGINE=MYISAM;
+**** On Master ****
+INSERT INTO t1_myisam VALUES(1, b'0', 257);
+INSERT INTO t1_myisam VALUES(2, b'1', 256);
+INSERT INTO t1_innodb VALUES(1, b'0', 257);
+INSERT INTO t1_innodb VALUES(2, b'1', 256);
+SELECT k, HEX(a),HEX(b) FROM t1_myisam;
+k HEX(a) HEX(b)
+1 0 101
+2 1 100
+SELECT k, HEX(a),HEX(b) FROM t1_innodb;
+k HEX(a) HEX(b)
+1 0 101
+2 1 100
+INSERT INTO t2_myisam VALUES(1, b'0', 9);
+INSERT INTO t2_myisam VALUES(2, b'1', 8);
+INSERT INTO t2_innodb VALUES(1, b'0', 9);
+INSERT INTO t2_innodb VALUES(2, b'1', 8);
+SELECT k, HEX(a),HEX(b) FROM t2_myisam;
+k HEX(a) HEX(b)
+1 0 9
+2 1 8
+SELECT k, HEX(a),HEX(b) FROM t2_innodb;
+k HEX(a) HEX(b)
+1 0 9
+2 1 8
+**** On Slave ****
+SELECT k, HEX(a),HEX(b) FROM t1_myisam;
+k HEX(a) HEX(b)
+1 0 101
+2 1 100
+SELECT k, HEX(a),HEX(b) FROM t1_innodb;
+k HEX(a) HEX(b)
+1 0 101
+2 1 100
+SELECT k, HEX(a),HEX(b) FROM t2_myisam;
+k HEX(a) HEX(b)
+1 0 9
+2 1 8
+SELECT k, HEX(a),HEX(b) FROM t2_innodb;
+k HEX(a) HEX(b)
+1 0 9
+2 1 8
+**** On Master ****
+UPDATE t1_myisam SET a=0 WHERE k=2;
+SELECT k, HEX(a),HEX(b) FROM t1_myisam;
+k HEX(a) HEX(b)
+1 0 101
+2 0 100
+UPDATE t1_innodb SET a=0 WHERE k=2;
+SELECT k, HEX(a),HEX(b) FROM t1_innodb;
+k HEX(a) HEX(b)
+1 0 101
+2 0 100
+UPDATE t2_myisam SET a=0 WHERE k=2;
+SELECT k, HEX(a),HEX(b) FROM t2_myisam;
+k HEX(a) HEX(b)
+1 0 9
+2 0 8
+UPDATE t2_innodb SET a=0 WHERE k=2;
+SELECT k, HEX(a),HEX(b) FROM t2_innodb;
+k HEX(a) HEX(b)
+1 0 9
+2 0 8
+**** On Slave ****
+SELECT k, HEX(a),HEX(b) FROM t1_myisam;
+k HEX(a) HEX(b)
+1 0 101
+2 0 100
+SELECT k, HEX(a),HEX(b) FROM t1_innodb;
+k HEX(a) HEX(b)
+1 0 101
+2 0 100
+SELECT k, HEX(a),HEX(b) FROM t2_myisam;
+k HEX(a) HEX(b)
+1 0 9
+2 0 8
+SELECT k, HEX(a),HEX(b) FROM t2_innodb;
+k HEX(a) HEX(b)
+1 0 9
+2 0 8
+**** On Master ****
+DROP TABLE IF EXISTS t1_myisam, t1_innodb, t2_myisam, t2_innodb;
--- 1.11/mysql-test/t/rpl_row_basic_11bugs.test 2007-02-20 21:37:07 +01:00
+++ 1.12/mysql-test/t/rpl_row_basic_11bugs.test 2007-02-20 21:37:07 +01:00
@@ -25,7 +25,7 @@
SHOW TABLES;
INSERT INTO t2 VALUES (3,3), (4,4);
--replace_regex /table_id: [0-9]+/table_id: #/
-SHOW BINLOG EVENTS FROM 102;
+SHOW BINLOG EVENTS FROM 105;
sync_slave_with_master;
--echo **** On Slave ****
SHOW DATABASES;
@@ -113,3 +113,71 @@
SELECT HEX(a),b FROM t1;
sync_slave_with_master;
SELECT HEX(a),b FROM t1;
+
+connection master;
+DROP TABLE IF EXISTS t1;
+sync_slave_with_master;
+
+# BUG#22583: RBR between MyISAM and non-MyISAM tables containing a BIT
+# field does not work
+
+--echo ================ Test for BUG#22583 ================
+--disable_query_log
+--source include/master-slave-reset.inc
+--enable_query_log
+
+--echo **** On Master ****
+connection master;
+CREATE TABLE t1_myisam (k INT, a BIT(1), b BIT(9)) ENGINE=MYISAM;
+CREATE TABLE t1_innodb (k INT, a BIT(1), b BIT(9)) ENGINE=INNODB;
+CREATE TABLE t2_myisam (k INT, a BIT(1) NOT NULL, b BIT(4) NOT NULL) ENGINE=MYISAM;
+CREATE TABLE t2_innodb (k INT, a BIT(1) NOT NULL, b BIT(4) NOT NULL) ENGINE=INNODB;
+--echo **** On Slave ****
+sync_slave_with_master;
+ALTER TABLE t1_myisam ENGINE=INNODB;
+ALTER TABLE t1_innodb ENGINE=MYISAM;
+ALTER TABLE t2_myisam ENGINE=INNODB;
+ALTER TABLE t2_innodb ENGINE=MYISAM;
+
+--echo **** On Master ****
+connection master;
+INSERT INTO t1_myisam VALUES(1, b'0', 257);
+INSERT INTO t1_myisam VALUES(2, b'1', 256);
+INSERT INTO t1_innodb VALUES(1, b'0', 257);
+INSERT INTO t1_innodb VALUES(2, b'1', 256);
+SELECT k, HEX(a),HEX(b) FROM t1_myisam;
+SELECT k, HEX(a),HEX(b) FROM t1_innodb;
+INSERT INTO t2_myisam VALUES(1, b'0', 9);
+INSERT INTO t2_myisam VALUES(2, b'1', 8);
+INSERT INTO t2_innodb VALUES(1, b'0', 9);
+INSERT INTO t2_innodb VALUES(2, b'1', 8);
+SELECT k, HEX(a),HEX(b) FROM t2_myisam;
+SELECT k, HEX(a),HEX(b) FROM t2_innodb;
+--echo **** On Slave ****
+sync_slave_with_master;
+SELECT k, HEX(a),HEX(b) FROM t1_myisam;
+SELECT k, HEX(a),HEX(b) FROM t1_innodb;
+SELECT k, HEX(a),HEX(b) FROM t2_myisam;
+SELECT k, HEX(a),HEX(b) FROM t2_innodb;
+
+--echo **** On Master ****
+connection master;
+UPDATE t1_myisam SET a=0 WHERE k=2;
+SELECT k, HEX(a),HEX(b) FROM t1_myisam;
+UPDATE t1_innodb SET a=0 WHERE k=2;
+SELECT k, HEX(a),HEX(b) FROM t1_innodb;
+UPDATE t2_myisam SET a=0 WHERE k=2;
+SELECT k, HEX(a),HEX(b) FROM t2_myisam;
+UPDATE t2_innodb SET a=0 WHERE k=2;
+SELECT k, HEX(a),HEX(b) FROM t2_innodb;
+--echo **** On Slave ****
+sync_slave_with_master;
+SELECT k, HEX(a),HEX(b) FROM t1_myisam;
+SELECT k, HEX(a),HEX(b) FROM t1_innodb;
+SELECT k, HEX(a),HEX(b) FROM t2_myisam;
+SELECT k, HEX(a),HEX(b) FROM t2_innodb;
+
+--echo **** On Master ****
+connection master;
+DROP TABLE IF EXISTS t1_myisam, t1_innodb, t2_myisam, t2_innodb;
+sync_slave_with_master;
--- 1.41/mysql-test/r/rpl_000015.result 2007-02-20 21:37:07 +01:00
+++ 1.42/mysql-test/r/rpl_000015.result 2007-02-20 21:37:07 +01:00
@@ -1,7 +1,7 @@
reset master;
show master status;
File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 102
+master-bin.000001 105
reset slave;
show slave status;
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
@@ -17,7 +17,7 @@
start slave;
show slave status;
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
-# 127.0.0.1 root MASTER_PORT 7 master-bin.000001 102 # # master-bin.000001 Yes Yes 0 0 102 # None 0 No #
+# 127.0.0.1 root MASTER_PORT 7 master-bin.000001 105 # # master-bin.000001 Yes Yes 0 0 105 # None 0 No #
drop table if exists t1;
create table t1 (n int, PRIMARY KEY(n));
insert into t1 values (10),(45),(90);
--- 1.41/mysql-test/extra/rpl_tests/rpl_log.test 2007-02-20 21:37:07 +01:00
+++ 1.42/mysql-test/extra/rpl_tests/rpl_log.test 2007-02-20 21:37:07 +01:00
@@ -42,13 +42,13 @@
show binlog events;
--replace_column 2 # 5 #
--replace_regex /\/\* xid=.* \*\//\/* XID *\// /table_id: [0-9]+/table_id: #/
-show binlog events from 102 limit 1;
+show binlog events from 105 limit 1;
--replace_column 2 # 5 #
--replace_regex /\/\* xid=.* \*\//\/* XID *\// /table_id: [0-9]+/table_id: #/
-show binlog events from 102 limit 2;
+show binlog events from 105 limit 2;
--replace_column 2 # 5 #
--replace_regex /\/\* xid=.* \*\//\/* XID *\// /table_id: [0-9]+/table_id: #/
-show binlog events from 102 limit 2,1;
+show binlog events from 105 limit 2,1;
flush logs;
# We need an extra update before doing save_master_pos.
| Thread |
|---|
| • bk commit into 5.1 tree (mats:1.2416) | Mats Kindahl | 20 Feb |