#At file:///home/lsoares/Workspace/bzr/work/bugfixing/12558519/mysql-5.5-push/ based on revid:anitha.gopi@stripped
3394 Luis Soares 2011-05-24 [merge]
BUG#12558519
Automerged bzr bundle from bug report into latest mysql-5.5.
modified:
sql/log_event.cc
sql/rpl_rli.cc
sql/table.cc
=== modified file 'sql/log_event.cc'
--- a/sql/log_event.cc 2011-03-25 12:13:17 +0000
+++ b/sql/log_event.cc 2011-05-23 22:46:51 +0000
@@ -8441,6 +8441,7 @@ int Table_map_log_event::do_apply_event(
m_field_metadata, m_field_metadata_size,
m_null_bits, m_flags);
table_list->m_tabledef_valid= TRUE;
+ table_list->m_conv_table= NULL;
table_list->open_type= OT_BASE_ONLY;
/*
=== modified file 'sql/rpl_rli.cc'
--- a/sql/rpl_rli.cc 2011-04-15 13:46:11 +0000
+++ b/sql/rpl_rli.cc 2011-05-23 23:33:55 +0000
@@ -1258,6 +1258,16 @@ void Relay_log_info::clear_tables_to_loc
tables_to_lock->m_tabledef.table_def::~table_def();
tables_to_lock->m_tabledef_valid= FALSE;
}
+
+ /*
+ If blob fields were used during conversion of field values
+ from the master table into the slave table, then we need to
+ free the memory used temporarily to store their values before
+ copying into the slave's table.
+ */
+ if (tables_to_lock->m_conv_table)
+ free_blobs(tables_to_lock->m_conv_table);
+
tables_to_lock=
static_cast<RPL_TABLE_LIST*>(tables_to_lock->next_global);
tables_to_lock_count--;
=== modified file 'sql/table.cc'
--- a/sql/table.cc 2011-05-21 08:59:32 +0000
+++ b/sql/table.cc 2011-05-23 23:33:55 +0000
@@ -2189,7 +2189,15 @@ void free_blobs(register TABLE *table)
for (ptr= table->s->blob_field, end=ptr + table->s->blob_fields ;
ptr != end ;
ptr++)
- ((Field_blob*) table->field[*ptr])->free();
+ {
+ /*
+ Reduced TABLE objects which are used by row-based replication for
+ type conversion might have some fields missing. Skip freeing BLOB
+ buffers for such missing fields.
+ */
+ if (table->field[*ptr])
+ ((Field_blob*) table->field[*ptr])->free();
+ }
}
No bundle (reason: revision is a merge (you can force generation of a bundle with env var BZR_FORCE_BUNDLE=1)).
| Thread |
|---|
| • bzr commit into mysql-5.5 branch (luis.soares:3394) Bug#12558519 | Luis Soares | 24 May |