Below is the list of changes that have just been committed into a local
6.0 repository of mkindahl. When mkindahl 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-12-23 19:26:48+01:00, mkindahl@stripped +1 -0
BUG#33055 ():
Temporary fix to make tests pass. Will fix it good later.
sql/log_event.cc@stripped, 2007-12-23 19:26:38+01:00, mkindahl@stripped +11 -0
Setting the read and write sets just before using them.
diff -Nrup a/sql/log_event.cc b/sql/log_event.cc
--- a/sql/log_event.cc 2007-12-21 15:59:45 +01:00
+++ b/sql/log_event.cc 2007-12-23 19:26:38 +01:00
@@ -7474,6 +7474,9 @@ Rows_log_event::write_row(const Relay_lo
/* unpack row into table->record[0] */
error= unpack_current_row(rli, &m_cols);
+ // Temporary fix to find out why it fails [/Matz]
+ memcpy(m_table->write_set->bitmap, m_cols.bitmap, (m_table->write_set->n_bits + 7) / 8);
+
#ifndef DBUG_OFF
DBUG_DUMP("record[0]", table->record[0], table->s->reclength);
DBUG_PRINT_BITSET("debug", "write_set = %s", table->write_set);
@@ -7795,9 +7798,13 @@ int Rows_log_event::find_row(const Relay
prepare_record(NULL, table, &m_cols, m_width, FALSE /* don't check errors */);
error= unpack_current_row(rli, &m_cols);
+ // Temporary fix to find out why it fails [/Matz]
+ memcpy(m_table->read_set->bitmap, m_cols.bitmap, (m_table->read_set->n_bits + 7) / 8);
+
#ifndef DBUG_OFF
DBUG_PRINT("info",("looking for the following record"));
DBUG_DUMP("record[0]", table->record[0], table->s->reclength);
+ DBUG_DUMP("read_set", (uchar*) table->read_set->bitmap, (table->read_set->n_bits + 7) / 8);
#endif
if ((table->file->ha_table_flags() & HA_PRIMARY_KEY_REQUIRED_FOR_POSITION) &&
@@ -8252,6 +8259,10 @@ Update_rows_log_event::do_exec_row(const
DBUG_DUMP("old record", m_table->record[1], m_table->s->reclength);
DBUG_DUMP("new values", m_table->record[0], m_table->s->reclength);
#endif
+
+ // Temporary fix to find out why it fails [/Matz]
+ memcpy(m_table->read_set->bitmap, m_cols.bitmap, (m_table->read_set->n_bits + 7) / 8);
+ memcpy(m_table->write_set->bitmap, m_cols_ai.bitmap, (m_table->write_set->n_bits + 7) / 8);
error= m_table->file->ha_update_row(m_table->record[1], m_table->record[0]);
if (error == HA_ERR_RECORD_IS_THE_SAME)
| Thread |
|---|
| • bk commit into 6.0 tree (mkindahl:1.2776) BUG#33055 | Mats Kindahl | 23 Dec |