summaryrefslogtreecommitdiff
path: root/sql/rpl_record.cc
diff options
context:
space:
mode:
Diffstat (limited to 'sql/rpl_record.cc')
-rw-r--r--sql/rpl_record.cc16
1 files changed, 16 insertions, 0 deletions
diff --git a/sql/rpl_record.cc b/sql/rpl_record.cc
index 7bf7b81aa3a..9e1413d726d 100644
--- a/sql/rpl_record.cc
+++ b/sql/rpl_record.cc
@@ -264,6 +264,22 @@ unpack_row(Relay_log_info const *rli,
{
DBUG_PRINT("debug", ("Was NULL; null mask: 0x%x; null bits: 0x%x",
null_mask, null_bits));
+ /**
+ Calling reset just in case one is unpacking on top a
+ record with data.
+
+ This could probably go into set_null() but doing so,
+ (i) triggers assertion in other parts of the code at
+ the moment; (ii) it would make us reset the field,
+ always when setting null, which right now doesn't seem
+ needed anywhere else except here.
+
+ TODO: maybe in the future we should consider moving
+ the reset to make it part of set_null. But then
+ the assertions triggered need to be
+ addressed/revisited.
+ */
+ f->reset();
f->set_null();
}
else