maria:bb-10.10-MDEV-16329

Last commit made on 2022-10-13
Get this branch:
git clone -b bb-10.10-MDEV-16329 https://git.launchpad.net/maria

Branch merges

Branch information

Name:
bb-10.10-MDEV-16329
Repository:
lp:maria

Recent commits

def8bc1... by Sergei Golubchik

fixup! MDEV-28943

MDEV-29056 Replica SQL thread stops with 1846 error on ALTER ONLINE after LOCK WRITE

every ALTER TABLE variant that succeeds without LOCK TABLE
must succeed under LOCK TABLE

every ALTER TABLE variant that fails without LOCK TABLE
must fail under LOCK TABLE

c360ead... by Sergei Golubchik

MDEV-28816 Assertion `wsrep_thd_is_applying(thd)' failed in int wsrep_ignored_error_code(Log_event*, int)

wsrep expected that any Rows_log_event::do_apply_event() failures
can only happen in the applier thread, because no other thread ever
applies row events. With online alter it's no longer true.

330e5b5... by Sergei Golubchik

MDEV-29067 Online alter ignores check constraint violation

6ae370c... by Sergei Golubchik

don't do ALTER IGNORE TABLE online

because online means we'll apply events from the binlog, and
ignore means that bad rows will be skipped. So a bad Write_row_log_event
will be skipped and a following Update_row_log_event will fail to
apply.

8d20c73... by Nikita Malyavin

MDEV-29021 add test case from MDEV-29013

This test case was also fixed by adding update_virtual_columns.

18ba347... by Nikita Malyavin

Do not ignore sql_mode when replicating

Division by zero is a good example. sql_mode is basically ignored by
replication, see Bug#56662.

The behavior for ONLINE should remain the same as for non-ONLINE ALTER.

bce47f2... by Nikita Malyavin

Simplify rgi->get_table_data call

89b91b3... by Nikita Malyavin

reorder RPL_TABLE_LIST fields for better packing

83899ed... by Sergei Golubchik

MDEV-29021 fixup

mark fields that have explicit values,
so that table->update_default_fields() would know what to update

257fa1c... by Nikita Malyavin

MDEV-29021 ALTER TABLE fails when a stored virtual column is dropped+added

We shouldn't rely on `fill_extra_persistent_columns`, as it only updates
fields which have an index > cols->n_bits (replication bitmap width).
Actually, it should never be used, as its approach is error-prone.

Normal update_virtual_fields+update_default_fields should be done.