diff options
author | Sergei Golubchik <serg@mariadb.org> | 2016-09-27 17:56:00 +0200 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2016-09-27 17:56:00 +0200 |
commit | 094f140c9ae672eb61a27f15c5e99c7114ed0150 (patch) | |
tree | 2987735abf082321330effa86687acc3db360eaf /storage/innobase/row/row0log.cc | |
parent | b4f97a1499c8c5de454f0593d9d694057d0a46c9 (diff) | |
download | mariadb-git-094f140c9ae672eb61a27f15c5e99c7114ed0150.tar.gz |
5.6.33
Diffstat (limited to 'storage/innobase/row/row0log.cc')
-rw-r--r-- | storage/innobase/row/row0log.cc | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/storage/innobase/row/row0log.cc b/storage/innobase/row/row0log.cc index a6751b208f7..54183759e8d 100644 --- a/storage/innobase/row/row0log.cc +++ b/storage/innobase/row/row0log.cc @@ -613,7 +613,7 @@ row_log_table_delete( &old_pk_extra_size); ut_ad(old_pk_extra_size < 0x100); - mrec_size = 4 + old_pk_size; + mrec_size = 6 + old_pk_size; /* Log enough prefix of the BLOB unless both the old and new table are in COMPACT or REDUNDANT format, @@ -643,8 +643,8 @@ row_log_table_delete( *b++ = static_cast<byte>(old_pk_extra_size); /* Log the size of external prefix we saved */ - mach_write_to_2(b, ext_size); - b += 2; + mach_write_to_4(b, ext_size); + b += 4; rec_convert_dtuple_to_temp( b + old_pk_extra_size, new_index, @@ -2268,14 +2268,14 @@ row_log_table_apply_op( break; case ROW_T_DELETE: - /* 1 (extra_size) + 2 (ext_size) + at least 1 (payload) */ - if (mrec + 4 >= mrec_end) { + /* 1 (extra_size) + 4 (ext_size) + at least 1 (payload) */ + if (mrec + 6 >= mrec_end) { return(NULL); } extra_size = *mrec++; - ext_size = mach_read_from_2(mrec); - mrec += 2; + ext_size = mach_read_from_4(mrec); + mrec += 4; ut_ad(mrec < mrec_end); /* We assume extra_size < 0x100 for the PRIMARY KEY prefix. |