maria:bb-10.4-MDEV-29289

Last commit made on 2023-09-26
Get this branch:
git clone -b bb-10.4-MDEV-29289 https://git.launchpad.net/maria

Branch merges

Branch information

Name:
bb-10.4-MDEV-29289
Repository:
lp:maria

Recent commits

05f6e36... by Oleksandr "Sanja" Byelkin

MDEV-29289 uncleaned LIMIT ROWS EXAMINED

Clean thd->lex->limit_rows_examined_cnt at the end of dispatch_command to avoid side effects

47f0135... by Igor Babaev

MDEV-32245 Test from subselect.test fails with statement memory protection

With this patch st_select_lex::ref_pointer_array is never re-allocated.

Approved by Oleksandr Byelkin <email address hidden>

50a2e8b... by Oleksandr "Sanja" Byelkin

MDEV-32140: Valgrind/MSAN warnings in dynamic_column_update_move_left

Do not manipulate empty dynamic column, just better return empty dynamic column from the begining.
(it is also optimisation)

9b5275b... by Daniel Black

MDEV-31332: Galera rsync sst to ignore .snapshot/ files

.snapshot exists as a directory on NetApp storage and
should not be copied during the sst process.

Thanks Daniel Czadek for the bug report.

Signed-off-by: Julius Goryavsky <email address hidden>

f5c3e73... by =?utf-8?q?Jan_Lindstr=C3=B6m?= <email address hidden>

MDEV-31651 : Assertion wsrep_thd_is_applying(thd) && !wsrep_thd_is_local_toi(thd) in wsrep_ignored_error_code

Problem was that with BINLOG-statement you can execute
binlog events on master also (not only in applier).
Fix removes too strict part wsrep_thd_is_applying from
assertion. Note that actual event in test is intentionally
corrupted to test should this error being ignored.

Signed-off-by: Julius Goryavsky <email address hidden>

8a5a07f... by =?utf-8?q?Jan_Lindstr=C3=B6m?= <email address hidden>

MDEV-24912 : Assertion `state() == s_executing
|| state() == s_prepared || state() == s_committing
|| state() == s_must_abort || state() == s_replaying'
failed.

CACHE INDEX and LOAD INDEX INTO CACHE are local operations.
Therefore, do not replicate them with Galera.

Signed-off-by: Julius Goryavsky <email address hidden>

952f06a... by THIRUNARAYANAN BALATHANDAYUTHAPANI

MDEV-29989 binlog_do_db option breaks versioning table

Problem:
=========
During commit, server calls prepare_commit_versioned to
determine the transaction modified system-versioned data.
Due to binlog_do_db option, we disable the binlog for the
statement. But prepare_commit_versioned() is being
called only when binlog is enabled for the statement.

Fix:
===
prepare_commit_versioned() should happen irrespective
of binlog state. So if the server has any read-write operation
then we should call prepare_commit_versioned().

ca66a2c... by Daniel Black

MDEV-18200 MariaBackup full backup failed with InnoDB: Failing assertion: success

There are many filesystem related errors that can occur with
MariaBackup. These already outputed to stderr with a good description of
the error. Many of these are permission or resource (file descriptor)
limits where the assertion and resulting core crash doesn't offer
developers anything more than the log message. To the user, assertions
and core crashes come across as poor error handling.

As such we return an error and handle this all the way up the stack.

275f434... by Vlad Lesin

MDEV-25163 Rowid filter does not process storage engine error correctly.

The fix is to return 3-state value from Range_rowid_filter::build()
call:
1. The filter was built successfully;
2. The filter was not built, but the error was not fatal, i.e. there is
no need to rollback transaction. For example, if the size of container to
storevrow ids is not enough;
3. The filter was not built because of fatal error, for example,
deadlock or lock wait timeout from storage engine. In this case we
should stop query plan execution and roll back transaction.

Reviewed by: Sergey Petrunya

b6773f5... by Yuchen Pei <email address hidden>

MDEV-31936 Simplify deinit_spider.inc

Spider is part of the server, and there's no need to check the
version.

All spider plugins are uninstalled in clean_up_spider.inc

DROP SERVER IF EXISTS makes things easier