maria:bb-10.5-MDEV-33138-galera

Last commit made on 2024-01-24
Get this branch:
git clone -b bb-10.5-MDEV-33138-galera https://git.launchpad.net/maria

Branch merges

Branch information

Name:
bb-10.5-MDEV-33138-galera
Repository:
lp:maria

Recent commits

2b1d3b9... by Julius Goryavsky <email address hidden>

MDEV-30456: compilation fixes

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

MDEV-33138 : Galera test case MW-336 unstable

Add more inserts before wsrep_slave_threads is set to 1 and
add wait_condition to wait all of them are replicated before
wait_condition about number of wsrep_slave_threads.

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

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

MDEV-32635 : galera_shutdown_nonprim: mysql_shutdown failed

Add wait_condition after cluster membership change

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

4617f04... by Daniele Sciascia <email address hidden>

Re-enable MTR test galera_sr.GCF-1060

Test seems to pass reliably now.

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

3f4cb80... by sjaakola <email address hidden>

MDEV-30456 ALTER TABLE algorithm clause not replicated

Fixing the regression happening with galera.galera_toi_ddl_nonconflicting
The problem, surfaced by the test, was due to multi-statement used in the test.
The test issues two queries, as multi-statement:

--send ALTER TABLE t1 ADD COLUMN f3 INTEGER; INSERT INTO t1 (f1, f2) VALUES (DEFAULT, 123);

With this, the session's THD structure has in query_string member
the full multi-statement, and this was used as base query in
TOI replication rewriting.

The fix is to pass actual length of the ALTER statement part for
TOI replication.

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

dd3488a... by Julius Goryavsky <email address hidden>

MDEV-30456: post-review changes

9de261a... by sjaakola <email address hidden>

MDEV-30456 ALTER TABLE algorithm clause not replicated

If user has specified the desired alter algorithm by using session
variable alter_algorithm, and not specifying the algorithm in the
ALTER SQL statement, then the ALTER will be processed in sending node
according the algorithm chosen by the alter_algorithm variable.
But in receiving nodes, appliers cannot see this session variable,
and will use the default algorithm when executing the ALTER.

The fix in this commit, will check if user has set alter_algorithm
variable and has not specified the algorithm clause in the ALTER
statement, and in such case will rewrite the original ALTER statement
appended by the algorithm clause. This rewritten ALTER statement will
be used in replication.

The commit has also new mtr test: galera.galera_alter_table_algorithm
which verifies that ALTER query rewrite happens when needed

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

a7ee3bc... by Sergei Golubchik

MDEV-29954 Unique hash key on column prefix is computed incorrectly

use the original, not the truncated, field in the long unique prefix,
that is, in the hash(left(field, length)) expression.

because MyISAM CHECK/REPAIR in compute_vcols() moves table->field
but not prefix fields from keyparts.

Also, implement Field_string::cmp_prefix() for prefix comparison
of CHAR columns to work.

14d00fd... by Sergei Golubchik

cleanup: MY_STRNNCOLLSP_NCHARS_EMULATE_TRIMMED_TRAILING_SPACES

no need to use it when both arguments have the same length

8bb4648... by Sergei Golubchik

cleanup: unused and undefined methods