summaryrefslogtreecommitdiff
path: root/storage/xtradb/row/row0umod.cc
diff options
context:
space:
mode:
Diffstat (limited to 'storage/xtradb/row/row0umod.cc')
-rw-r--r--storage/xtradb/row/row0umod.cc11
1 files changed, 9 insertions, 2 deletions
diff --git a/storage/xtradb/row/row0umod.cc b/storage/xtradb/row/row0umod.cc
index 6a23e1a6c12..675d4fa3632 100644
--- a/storage/xtradb/row/row0umod.cc
+++ b/storage/xtradb/row/row0umod.cc
@@ -334,8 +334,15 @@ row_undo_mod_clust(
}
}
- ut_ad(rec_get_trx_id(btr_pcur_get_rec(pcur), index)
- == node->new_trx_id);
+ /**
+ * when scrubbing, and records gets cleared,
+ * the transaction id is not present afterwards.
+ * this is safe as: since the record is on free-list
+ * it can be reallocated at any time after this mtr-commits
+ * which is just below
+ */
+ ut_ad(srv_immediate_scrub_data_uncompressed ||
+ rec_get_trx_id(btr_pcur_get_rec(pcur), index) == node->new_trx_id);
btr_pcur_commit_specify_mtr(pcur, &mtr);