summaryrefslogtreecommitdiff
path: root/sql/log_event.cc
diff options
context:
space:
mode:
authorSergei Golubchik <serg@mariadb.org>2017-07-20 16:11:59 +0200
committerSergei Golubchik <serg@mariadb.org>2017-07-20 16:11:59 +0200
commit7e3093670f32dc156a615c3dda2244f53423cd57 (patch)
treeb0e35a666bed36df4fa0cc50f8ae1da7dc482685 /sql/log_event.cc
parent5e23a41141c79ae2abb3d775d175124c804efe61 (diff)
downloadmariadb-git-10.3-serg.tar.gz
Diffstat (limited to 'sql/log_event.cc')
-rw-r--r--sql/log_event.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/sql/log_event.cc b/sql/log_event.cc
index 4a48ebce077..35a0ce5657f 100644
--- a/sql/log_event.cc
+++ b/sql/log_event.cc
@@ -12801,6 +12801,9 @@ static bool record_compare(TABLE *table)
{
if (table->versioned_by_engine() && *ptr == table->vers_start_field())
{
+ // XXX hmm. I wonder whether it's possible to replicate
+ // these trx id values too. It'd be a very good feature. Currently
+ // the slave and the master have essentially different data.
continue;
}
/**
@@ -13004,6 +13007,8 @@ int Rows_log_event::find_row(rpl_group_info *rgi)
DBUG_ASSERT(table->read_set);
bitmap_set_bit(table->read_set, sys_trx_end->field_index);
// master table is unversioned
+ // XXX do you mean *if* master table is unversioned?
+ // or that it's always guaranteed to be unversioned here?
if (sys_trx_end->val_int() == 0)
{
DBUG_ASSERT(table->write_set);
@@ -13011,6 +13016,9 @@ int Rows_log_event::find_row(rpl_group_info *rgi)
sys_trx_end->set_max();
table->vers_start_field()->set_notnull();
}
+ // XXX second question, if the master table is versioned,
+ // sys_trx_end column is guaranteed to be MAX, no?
+ // history values can't be replicated, can they?
}
DBUG_PRINT("info",("looking for the following record"));