maria:bb-10.5-MDEV-29027

Last commit made on 2022-07-06
Get this branch:
git clone -b bb-10.5-MDEV-29027 https://git.launchpad.net/maria

Branch merges

Branch information

Name:
bb-10.5-MDEV-29027
Repository:
lp:maria

Recent commits

eb93b53... by Nayuta Yanagisawa

MDEV-29027 ASAN errors in spider_db_free_result after partition DDL

Spider calls ha_spider::close() at least twice on ALTER TABLE ... ADD
PARTITION. The first call frees wide_handler->trx and the second call
accesses wide_handler->trx->thd (heap-use-after-free).

In general, there seems to be no problem with using THD obtained by
the macro current_thd() except in background threads. Thus, we simply
replace wide_handler->trx->thd with current_thd().

9d5718c... by Vladislav Vaintroub

MDEV-28648 main.ssl_timeout fails with OpenSSL 3.0.3

Depending on OpenSSL version, and at least in 3.0.3, the client-side socket
timeout is reported as generic error (SSL_ERROR_SYSCALL), losing further
details (both errno and GetLastError() return 0). This results in client
reporting "Unknown OpenSSL error" 2026, instead of another generic
"Lost connection to server during query" 2013

Adjusted test case.

Part of MDEV-29000

ef65566... by Honza Horak

MDEV-27778 md5 in FIPS crashes with OpenSSL 3.0.0

OpenSSL 3.0.0+ does not support EVP_MD_CTX_FLAG_NON_FIPS_ALLOW any longer.
In OpenSSL 1.1.1 the non FIPS allowed flag is context specific, while
in 3.0.0+ it is a different EVP_MD provider.

Fixes #2010

part of MDEV-29000

1dc09ce... by Oleksandr "Sanja" Byelkin

Revert "don't build with OpenSSL 3.0, it doesn't work before MDEV-25785"

This reverts commit c9beef43154a199bfcd9f71049c011a2ed77ca74, because
we have OpenSSL 3.0 support here.

part of MDEV-29000

8a9c1e9... by Vladislav Vaintroub

MDEV-25785 Add support for OpenSSL 3.0

Summary of changes

- MD_CTX_SIZE is increased

- EVP_CIPHER_CTX_buf_noconst(ctx) does not work anymore, points
  to nobody knows where. The assumption made previously was that
  (since the function does not seem to be documented)
  was that it points to the last partial source block.
  Add own partial block buffer for NOPAD encryption instead

- SECLEVEL in CipherString in openssl.cnf
  had been downgraded to 0, from 1, to make TLSv1.0 and TLSv1.1 possible
   (according to https://github.com/openssl/openssl/blob/openssl-3.0.0/NEWS.md
   even though the manual for SSL_CTX_get_security_level claims that it
   should not be necessary)

- Workaround Ssl_cipher_list issue, it now returns TLSv1.3 ciphers,
  in addition to what was set in --ssl-cipher

- ctx_buf buffer now must be aligned to 16 bytes with openssl(
  previously with WolfSSL only), ot crashes will happen

- updated aes-t , to be better debuggable
  using function, rather than a huge multiline macro
  added test that does "nopad" encryption piece-wise, to test
  replacement of EVP_CIPHER_CTX_buf_noconst

part of MDEV-29000

33f0270... by Marko Mäkelä

Merge 10.4 into 10.5

9a0cbd3... by Marko Mäkelä

MDEV-26294 Duplicate entries in unique index not detected when changing collation

ha_innobase::check_if_supported_inplace_alter(): Refuse to change the
collation of a column that would become or remain indexed as part of
the ALTER TABLE operation.

In MariaDB Server 10.6, we will allow this type of operation;
that fix depends on MDEV-15250.

b546913... by Marko Mäkelä

Valgrind: Disable tests that would often time out

Starting with 10.5, InnoDB crash recovery tests seem to time out
more easily under Valgrind, which emulates multiple threads by
interleaving them in a single operating system thread.

These tests will still be covered by
AddressSanitizer and MemorySanitizer.

f096870... by Marko Mäkelä

Merge 10.4 into 10.5

392ee57... by Marko Mäkelä

Merge 10.3 into 10.4