Upgrade mariadb to version 10.11.19 - #18627
Conversation
|
Azure Pipelines: There may be pipelines that require an authorized user to comment /azp run to run. |
0fb31a8 to
a325e46
Compare
a325e46 to
fce246b
Compare
Breaking Changes Analysis — mariadb 10.11.18 → 10.11.19Verdict: no breaking changes for consumers or operators. One config file is modernised, and the server plugin API has source-incompatible edits that affect nobody in this distro. Method: diffed the actual built RPMs against the shipped 10.11.18 binaries from PMC, plus the 336-commit upstream delta.
1. Packaging — zero delta
2. Config filesTwo are pure comment churn — part of upstream's site-wide
One is substantive — -# enable "strictly synchronous" semantics for read operations
-wsrep_causal_reads=0
+# Syncronization causality setting, (0 - disabled)
+# same as deprecated and removed wsrep_causal_reads=0.
+wsrep_sync_wait=0I checked whether this actually breaks existing Galera clusters, and it does not. Net: new installs get the modern variable; existing clusters keep working unchanged. 3. systemd units — cosmetic onlyFour socket units differ ( 4. Client API — additive, non-breaking
/* Bits: NET_PROXY_PROTOCOL, NET_PROXY_PROTOCOL_CONNECT_ERRORS */
#define NET_PROXY_PROTOCOL 1
#define NET_PROXY_PROTOCOL_CONNECT_ERRORS 2Nothing removed or redefined — existing client code compiles and links unchanged. 5. Server plugin API — source-incompatible edits (no impact here)42 headers changed functionally; 339 of the 445 live under
- volatile uchar *killed_ptr;
+ volatile const uint32_t *killed_ptr;Also adds
- #define MY_ROOT_USE_MPROTECT 0x20000U
+ #define MY_ROOT_USE_VMEM 0x20000UAnything referencing 6. Reverse dependencies — none affectedFour packages Also relevant: 7. Behavioural changes worth knowing336 commits / 300 files. Almost entirely crash, UBSAN/ASAN, and correctness fixes. The one real behaviour change: MDEV-40589 — Other notables, all fixes rather than breaks: MDEV-25817 (proxy protocol no longer resets connect errors on successful login), MDEV-40648 (malformed Rotate event UB in replication), MDEV-39841 (handlersocket empty default secret), MDEV-31808 / MDEV-38472 (crash fixes). Risk assessment
|
|
Azure Pipelines: There may be pipelines that require an authorized user to comment /azp run to run. |
Merge Checklist
All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)
*-staticsubpackages, etc.) have had theirReleasetag incremented../cgmanifest.json,./toolkit/scripts/toolchain/cgmanifest.json,.github/workflows/cgmanifest.json)./LICENSES-AND-NOTICES/SPECS/data/licenses.json,./LICENSES-AND-NOTICES/SPECS/LICENSES-MAP.md,./LICENSES-AND-NOTICES/SPECS/LICENSE-EXCEPTIONS.PHOTON)*.signatures.jsonfilessudo make go-tidy-allandsudo make go-test-coveragepassSummary
What does the PR accomplish, why was it needed?
This PR upgrades the
mariadbpackage from 10.11.18 to 10.11.19.Two downstream patches needed rebasing because upstream 10.11.19 rewrote the surrounding
context, and one orphaned patch file was removed:
mariadb-logrotate.patch— upstream replaced the documentation-URL comment lines thatform the context of hunk 1 (
mariadb.com/kb/en/...->mariadb.com/docs/server/...). Thefunctional change is untouched; only context drifted. This is invisible to a default
patchrun (fuzz=2) but fails underrpmbuild, which applies patches with--fuzz=0.mariadb-libfmt.patch— 10.11.19 replaced the literal fmt archive URL incmake/libfmt.cmakewith a compiler-conditionalSET(source URL ...)block selecting fmt11.0.2 for gcc < 4.9 and fmt 12.2.0 otherwise. Azure Linux builds with gcc 13, so only the
latter branch is redirected to the pre-downloaded archive, and
fmt_bundled_versionmoves11.0.2 -> 12.2.0 to match. This path is dormant (
bundled_fmtis off) but is keptself-consistent. Upstream references:
https://github.com/MariaDB/server/blob/mariadb-10.11.18/cmake/libfmt.cmake#L18-L19
"it's for RHEL-7, gcc 4.8.5"):
https://github.com/MariaDB/server/blob/mariadb-10.11.19/cmake/libfmt.cmake#L15-L23
ELSE()branch:https://github.com/fmtlib/fmt/releases/tag/12.2.0
mariadb-ssl-cypher.patch— removed. The file was present on disk but never declaredvia a
PatchN:tag nor applied in%prep, so it was dead weight. It is an undeclaredorphan in Fedora's package as well.
Both rebases were confirmed to be upstream drift rather than downstream error: Fedora's own
copies of these two patches fail on the 10.11.19 tree at the identical hunks.
Patch inventory was reconciled in both directions — all 6 declared patches exist and apply at
--fuzz=0, and no orphan.patchfiles remain. This package carries no CVE backport patches.Fedora alignment. Fedora tracks the 10.11 LTS stream as the separate
mariadb10.11component (rawhide's
mariadbis 11.8); its newest build is 10.11.18, so this package is onerelease ahead and there is no Fedora 10.11.19 spec to reference. Patch numbering matches on all
shared patches (4/7/9/13/14) and 16 shared support files are byte-identical. Fedora's two extra
patches are correctly absent here:
Patch15marks RISC-V64 as 64-bit (not an Azure Linuxarchitecture), and
Patch16(MDEV-39691) is already included in 10.11.19, verified byreverse-applying it against the release tarball.
Change Log
fmt_bundled_version11.0.2 -> 12.2.0, changelogDoes this affect the toolchain?
NO
Associated issues
Test Methodology
RUN_CHECK=y: built SRPMs 1, passed SRPMs tests 1,failed SRPMs 0, failed SRPMs tests 0. The
%checksection (MTR suite) executed and passed;12 RPMs were produced.