1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

MDEV-18859 Server crashes in bitmap_bits_set / pack_row / THD::binlog_write_row upon DELETE .. FOR PORTION with binary logging

rpl_write_set is initialized in TABLE::mark_columns_per_binlog_row_image.
Since we just call use_all_columns for PORTION OF case, no need in
column marking logic here. Instead, initialize table->rpl_write_set in
place.
This commit is contained in:
Nikita Malyavin
2019-03-13 22:31:43 +10:00
committed by Sergei Golubchik
parent 04055060b6
commit 7e3e2d060b
2 changed files with 6 additions and 0 deletions

View File

@ -718,9 +718,14 @@ bool mysql_delete(THD *thd, TABLE_LIST *table_list, COND *conds,
goto got_error;
if (table_list->has_period())
{
table->use_all_columns();
table->rpl_write_set= table->write_set;
}
else
{
table->mark_columns_needed_for_delete();
}
if ((table->file->ha_table_flags() & HA_CAN_FORCE_BULK_DELETE) &&
!table->prepare_triggers_for_delete_stmt_or_event())