maria:bb-10.6-danielblack-MDEV-28153-deb-autobake

Last commit made on 2022-03-25
Get this branch:
git clone -b bb-10.6-danielblack-MDEV-28153-deb-autobake https://git.launchpad.net/maria

Branch merges

Branch information

Name:
bb-10.6-danielblack-MDEV-28153-deb-autobake
Repository:
lp:maria

Recent commits

9b1881c... by Daniel Black

Deb: enable pmem on riscv64

bd934ce... by Daniel Black

MDEV-28153: Debian autobake- use absolute dependencies rather than a buildtime detection

Fixing the version of debian/ubuntu dependencies in 10.6
removes the apt-cache checking of libpmem and liburing
dependencies.

By arranging the checks earliest to latest, we unconditionally
change the dependences in earlier versions, and in later versions
we perform architecture checks to see if there is a dependency
on this architecture before removing/changing.

This takes from the architecture information on Ubuntu[1,2]
and Debian[3,4].

[1] https://packages.ubuntu.com/search?suite=all&arch=any&searchon=names&keywords=liburing-dev
[2] https://packages.ubuntu.com/search?suite=all&arch=any&searchon=names&keywords=libpmem-dev
[3] https://packages.debian.org/search?suite=all&section=all&arch=any&searchon=names&keywords=liburing-dev
[4] https://packages.debian.org/search?suite=all&section=all&arch=any&searchon=names&keywords=libpmem-dev

ec62f46... by Daniel Black

Merge 10.5 to 10.6

157a838... by Daniel Black

MDEV-28153: Debian autobake- use absolute dependencies rather than a buildtime detection

While moving to a prescribed dependencies in MDEV-28011, an error was made
in the merge. The Ubuntu and Debian supported architectures of rocksdb-tools
are different and need to be treated as such.

This actually had no effect as our support of mariadb-plugin-rocksdb was never
different to the distro support of rocksdb-tools. Some notes where added
to this affect.

There is also nothing to do for Debian sid, and never should be.

The differentiation and grouping of distro codenames is for convenience in
merging upwards as more dependencies change across distro versions.

The fixing of versions rather than relying on apt-cache to be correct prevents
unstable changes between releases, and potentially uninstallable packages like
happened in MDEV-28014.

Correct comment about zstd to MDEV-16525

0da5f45... by Rucha Deodhar <email address hidden>

MDEV-27819: func_2.xxx_charset skipped after renaming utf8 to utf8mb3

Analysis: utf8 character set is now utf8mb3 or utf8mb4. So charset_master
is not able to find utf8 at the beginning of test. Hence it skips the tests
that use charset_master.
Fix: rename utf8 to utf8mb3 in charset_master.

8684af7... by Marko Mäkelä

MDEV-28137 Some memory transactions are unnecessarily complex

buf_page_get_zip(): Do not perform a system call inside a
memory transaction. Instead, if the page latch is unavailable,
abort the memory transaction and let the fall-back code path
wait for the page latch.

buf_pool_t::watch_remove(): Return the previous state of the block.

buf_page_init_for_read(): Use regular stores for moving the
buffer fix count of watch_remove() to the new block descriptor.

A more extensive version of this was reviewed by Daniel Black
and tested with Intel TSX-NI by Axel Schwenke and Matthias Leich.
My assumption that regular loads and stores would execute faster
in a memory transaction than operations like std::atomic::fetch_add()
turned out to be incorrect.

b101f19... by Marko Mäkelä

MDEV-23974 fixup: rpl.rpl_gtid_stop_start fails

The call mtr.add_suppression() that was added
in commit 75b7cd680b8272ac5a0848791757c1d310501574
for MemorySanitizer and Valgrind runs is causing
a result difference for the test rpl.rpl_gtid_stop_start.
Let us disable the binlog for executing that statement.

Also, the test perfschema.statement_program_lost_inst
would fail due to the changes to have_innodb.inc in this commit.
To compensate for that, we will make more --suite=perfschema
tests run without InnoDB, and explicitly enable InnoDB in
those tests that depend on a transactional storage engine.

d2c019b... by Sergei Golubchik

MDEV-28107 S3 doesn't build if CURL is in non-default location

2ca3861... by Sergei Golubchik

MDEV-28106 S3 tries to include thread.h while compiling on Windows

S3 engine and libmarias3 don't compile on Windows

also fixes:
MDEV-28104 Typo in storage/maria/s3_func.c: 'FN_DECVHAR

75b7cd6... by Marko Mäkelä

MDEV-23974 Tests fail due to [Warning] InnoDB: Trying to delete tablespace

A few regression tests invoke heavy flushing of the buffer pool
and may trigger warnings that tablespaces could not be deleted
because of pending writes. Those warnings are to be expected
during the execution of such tests.

The warnings are also frequently seen with Valgrind or MemorySanitizer.
For those, the global suppression in have_innodb.inc does the trick.