Closed (fixed)
Project:
DrupalCI: Environments
Component:
Database Containers
Priority:
Normal
Category:
Task
Assigned:
Unassigned
Reporter:
Created:
3 Jun 2026 at 17:12 UTC
Updated:
17 Jun 2026 at 20:20 UTC
Jump to comment: Most recent
New LTS is out and it should be supported https://mariadb.org/mariadb-server-12-3-lts-released/
add new image
Comments
Comment #2
andypostAdding a
db/mariadb-12.3/container for the new MariaDB 12.3 LTS series (GA 12.3.2, May 2026, supported through June 2029). Templated off the existingmariadb-10.11container, pinned todocker.io/mariadb:12.3.2. While doing this I had to address a few 12.x deprecations/removals, and there are some worthwhile CI performance wins. Notes below for review before I push.Deprecations / removals to respect (12.x)
These aren't optional cosmetics — several are fatal on MariaDB 12:
mysql*CLI symlinks → canonicalmariadb*.startup.shcurrently callsmysql_install_db,mysqld_safe, andmysql -e .... On 11.x+ these emit "Deprecated program name … use mariadb… instead", which is treated as a fatal error in several contexts. Switching to:mysql_install_db→mariadb-install-dbmysqld_safe→mariadbd-safemysql -e ...→mariadb -e ...(The
pgrep -x mariadbdin the SIGTERM trap is already correct.)default_authentication_plugin=mysql_native_passwordfrommy.cnf. It's a MySQL-only option; MariaDB loads themysql_native_passwordplugin by default, and the line risks an "unknown variable" abort.utf8→utf8mb3(explicit).character_set_server = utf8/collation_server = utf8_general_ciuse the deprecatedutf8alias; writing them asutf8mb3/utf8mb3_general_cikeeps identical behavior and silences the deprecation notice.big_tables+large_page_sizeare removed in 12.x. Ourmy.cnfdoesn't set any of them, so nothing to delete — just flagging so we don't reintroduce them.innodb_snapshot_isolationnow defaults ON in 12.3 (changes REPEATABLE READ semantics). Since this container pinstransaction-isolation = READ-COMMITTEDthe impact is minimal, but I'd set it explicitly OFF for parity with the older MariaDB CI containers and to avoid surprising tests.Performance improvements
Free, just by being on 12.3 (no config needed):
GROUP BY) can use DESC key parts.skip-log-bin— which is the right call for CI, so we keep binlog off.Config tuning we can apply, given the DB is a throwaway CI instance (data discarded after each run, so durability can be traded for speed — these are CI-only, never for production):
innodb_doublewrite0innodb_flush_log_at_trx_commit00(keep)innodb_flush_methodO_DIRECTinnodb_buffer_pool_size256M1Ginnodb_log_file_size512Mtmp_table_size/max_heap_table_size32M128Minnodb_adaptive_hash_index00(keep)Related: security patch bumps for other DB containers
Separate from 12.3, the maintained DB images are a few patch releases behind and have RCE/takeover-class CVEs (June 2026). Suggest bumping in the same effort:
7-jammy→7.0.34-jammy— CVE-2026-8053 (time-series → server takeover) and MongoBleed (CVE-2025-14847, active exploitation).I'll build and validate
mariadb-12.3locally (warning-free init, user/grants, graceful shutdown) before pushing.Comment #18
andypostall images are pushed and tested
Comment #20
andypost