Debian Patches

Status for mariadb/1:10.11.7-4

Patch Description Author Forwarded Bugs Origin Last update
0025-Change-the-default-optimization-from-O3-to-O2-in-mys.patch Change the default optimization from -O3 to -O2 in mysql_release.cmake BUILD_CONFIG profile Ondrej Sury <ondrej@debian.org> no upstream 2017-11-22
rocksdb-kfreebsd.patch # Merged in RocksDB 6.12.6 but not updated into MariaDB yet
# Merged in RocksDB 6.13.fb, but not updated into MariaDB yet
Description:
Upstream has merged this but we still need to wait for it to be included
in a RocksDB release and imported into MariaDB and then into Debian.
Andrew Kryczka <andrewkr@fb.com> yes upstream 2020-06-16
env-perl-usr-bin-perl.patch Fix perl path in scripts Fix Lintian issue
https://lintian.debian.org/tags/incorrect-path-for-interpreter.html
.
Upstream will never accept this patch, see
https://github.com/MariaDB/server/pull/1718
Otto Kekäläinen <otto@debian.org> yes https://patch-diff.githubusercontent.com/raw/MariaDB/server/pull/1718.patch 2020-12-20
fix-spelling-rocksdb.patch Fix various spelling errors still found in code Two upstream PRs remain that have been merged, but not imported on MariaDB yet. Otto Kekäläinen <otto@debian.org> yes https://patch-diff.githubusercontent.com/raw/facebook/rocksdb/pull/9653.patch 2022-03-02
fix-reproducible-builds-rocksdb.patch Make RocksDB build reproducible
The RocksDB binary included a string with the build timestamp:
> rocksdb_build_git_date:@2021-05-23·16:04:38@

As this changes from build to build, it makes the builds unreproducible.
Simply removing it solves the issue.

This temporary fix can be removed when a proper fix already done in upstream
lands in MariaDB when the RocksDB submodule is updated to a newer release.
Otto Kekäläinen <otto@kekalainen.net> yes upstream https://github.com/facebook/rocksdb/commit/0a9a05ae12943b1529ef1eabbca5ce5a71c986bf
mroonga-mrn-lib-dirs-path-reproducible-build.patch [PATCH] cmake: add support for reproducible buildS .
We should use relative path not absolute path.
We can use target without breaking reproducibility.
Sutou Kouhei <kou@clear-code.com> not-needed upstream https://github.com/mroonga/mroonga/issues/298#issuecomment-1030815927 2022-02-05
2129-new-script-wsrep-sst-backup-fixes.patch [PATCH] Properly introduce wsrep_sst_backup script in project packaging

The script wsrep_sst_backup was introduced on MariaDB 10.3 in commit
9b2fa2a. The new script was automatically included in RPM packages but not
in Debian packages (which started to fail on warning about stray file).

Include wsrep_sst_backup in the mariadb-server-10.{3..8} package, and
also include a stub man page so that packaging of a new script is complete.
Otto Kekäläinen <otto@kekalainen.net> yes https://patch-diff.githubusercontent.com/raw/MariaDB/server/pull/2129.patch 2022-05-22
2541-fix-stack-overflow-in-pinbox-allocator.patch [PATCH] Fix a stack overflow in pinbox allocator
MariaDB supports a "wait-free concurrent allocator based on pinning addresses".
In `lf_pinbox_real_free()` it tries to sort the pinned addresses for better
performance to use binary search during "real free". `alloca()` was used to
allocate stack memory and copy addresses.

To prevent a stack overflow when allocating the stack memory the function checks
if there's enough stack space. However, the available stack size was calculated
inaccurately which eventually caused database crash due to stack overflow.

The crash was seen on MariaDB 10.6.11 but the same code defect exists on all
MariaDB versions.

A similar issue happened previously and the fix in fc2c1e43 was to add a
`ALLOCA_SAFETY_MARGIN` which is 8192 bytes. However, that safety margin is not
enough during high connection workloads.

MySQL also had a similar issue and the fix
https://github.com/mysql/mysql-server/commit/b086fda was to remove the use of
`alloca` and replace qsort approach by a linear scan through all pointers (pins)
owned by each thread.

This commit is mostly the same as it is the only way to solve this issue as:
1. Frame sizes in different architecture can be different.
2. Number of active (non-null) pinned addresses varies, so the frame
size for the recursive sorting function `msort_with_tmp` is also hard
to predict.
3. Allocating big memory blocks in stack doesn't seem to be a very good
practice.

For further details see the mentioned commit in MySQL and the inline comments.

All new code of the whole pull request, including one or several files
that are either new files or modified ones, are contributed under the
BSD-new license. I am contributing on behalf of my employer Amazon Web
Services, Inc.
Hugo Wen <wenhug@amazon.com> yes upstream https://patch-diff.githubusercontent.com/raw/MariaDB/server/pull/2541.patch 2023-03-11
fix-spelling-libmariadb.patch [PATCH] Fix trivial spelling errors
- handshak -> handshake
- occured -> occurred
- releated -> related
- reponse -> response
- seperated -> separated
- sucess -> success
- use use -> use

All new code of the whole pull request, including one or several files
that are either new files or modified ones, are contributed under the
BSD-new license. I am contributing on behalf of my employer Amazon Web
Services, Inc.
Otto Kekäläinen <otto@kekalainen.net> yes https://patch-diff.githubusercontent.com/raw/mariadb-corporation/mariadb-connector-c/pull/220.patch 2023-03-11
2980-riscv-use-rdtime.patch [PATCH] RISC-V: use RDTIME instead of RDCYCLE
Starting with Linux 6.6 [1], RDCYCLE is a privileged instruction on
RISC-V and can't be used directly from userland. There is a sysctl
option to change that as a transition period, but it will eventually
disappear.

Use RDTIME instead, which while less accurate has the advantage of being
synchronized between CPU (and thus monotonic) and of constant frequency.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=cc4c07c89aada16229084eeb93895c95b7eabaa3
Aurelien Jarno <aurelien@aurel32.net> yes https://patch-diff.githubusercontent.com/raw/MariaDB/server/pull/2980.patch 2024-01-04
install-files-into-usr.patch [PATCH] Install PAM modules and systemd units into /usr
Since Debian trixie all files need to be installed into their canonical
location under /usr.
Michael Biebl <biebl@debian.org> no https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1061348 2024-01-22
1006531-hurd-no-auth-socket.patch mariadb: FTBFS on hurd-i386: undefined reference to misc functions and files
requires https://github.com/MariaDB/server/pull/2893 as debian
explicit architectures aren't needed since dh_auto_configure handles
this.

If it works, upstream welcome.

Hurd string from uname -m, "SYSTEM processor: i686-AT386" in mariadb
output. And wiki reference https://en.wikipedia.org/wiki/Uname
Daniel Black <daniel@mariadb.org> no https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1006531
3039-os-data-file-no-o-direct.patch [PATCH] MDEV-33095 MariaDB-backup - no OS_DATA_FILE_NO_O_DIRECT on some platforms

Postfix for a6290a5bc5f3cba096854595c354d19d9267743d, in 10.11
where OS_DATA_FILE_NO_O_DIRECT gets used. Same #ifdef conditions
as other uses of OS_DATA_FILE_NO_O_DIRECT.

Noticed on aarch64-macos builder.
Daniel Black <daniel@mariadb.org> yes https://patch-diff.githubusercontent.com/raw/MariaDB/server/pull/3039.patch 2024-02-02
1063738-revert-c432c9ef.patch [PATCH] Revert compile_time_assert() changes from "MDEV-32862 MYSQL struct in C/C and server differs"
This partially reverts commit c432c9ef19bf6ff40ab9551bcae202d7e1319878 which
most likely caused the regression that broke builds on many 32-bit platforms.
Otto Kekäläinen <otto@debian.org> no 2024-02-21
MDEV-32975-chartset-collation-fix-php.patch [PATCH] MDEV-32975 Default charset doesn't work with PHP MySQLi extension

When sending the server default collation ID to the client
in the handshake packet, translate a 2-byte collation ID
to the ID of the default collation for the character set.
Alexander Barkov <bar@mariadb.com> yes upstream https://github.com/MariaDB/server/commit/1b37cb71f44549c94acf8914cf93d43a4293a449 (merged in Feb 2024) 2024-01-26
startup-message.patch [PATCH] Show banner in server and client startup to drive community engagement
Suggest to users that they can support MariaDB development by simply giving a
star on GitHub. This patch experiments with how well such a banner works, and
may later change the contents to drive some other kind of engagement.

Client output:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 34
Server version: 10.11.7-MariaDB-3 Debian n/a

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Support MariaDB developers by giving a star at https://github.com/MariaDB/server

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

Server output:
[Note] Support MariaDB developers by giving a star at https://github.com/MariaDB/server

Server output if build in git directory:
[Note] Starting MariaDB 10.11.7-MariaDB-3 source revision 219efb0a6ab0ee8ce2ec831c715783586c4db2ef as process 5426
Otto Kekäläinen <otto@debian.org> no 2024-03-10
fix-spelling-mariadb.patch [PATCH] Fix misc spelling in MariaDB Server repository Otto Kekäläinen <otto@debian.org> no 2024-03-10
3154-openssl-alert-protocol-string.patch [PATCH] Update tests to be compatible with OpenSSL 3.2.0
As of version 3.2.0, OpenSSL updated the error message in new versions
("https://github.com/openssl/openssl/commit/81b741f68984"). Update the
tests and result files such that they are compatible with both original
and new error messages.

All new code of the whole pull request, including one or several files that are
either new files or modified ones, are contributed under the BSD-new license. I
am contributing on behalf of my employer Amazon Web Services, Inc.
Zhibo Zhang <zhibo@amazon.com> yes https://patch-diff.githubusercontent.com/raw/MariaDB/server/pull/3154.patch 2024-03-19

All known versions for source package 'mariadb'

Links