Bug#1121158: apt: 3.1.x no longer upgrades MariaDB Recommends on upgrade
[email protected] Fri, 21 Nov 2025 23:46:43 +0000
| Newsgroups | gmane.linux.debian.apt.devel |
|---|---|
| Message-ID | <fb8da99617ffbbf5a145ff1ebae37adb__38774.6772192017$1763768969$gmane$org@riseup.net> |
Package: apt X-Debbugs-Cc: [email protected], [email protected] Version: 3.1.12 Severity: normal Hi, This is a follow-up / underlying issue for Bug#1121151 against mariadb-server ("Salsa CI 'default-mysql-server and Bookworm upgrade' job fails due to provider plugin ABI mismatch"). While debugging that CI failure, we found that apt's resolver behaviour changed between 3.1.8 and 3.1.10/3.1.12 in a way that leaves already installed Recommends at old versions in a real upgrade path, which then breaks MariaDB. Scenario: - Base system: Debian 12 (bookworm) - First install: apt-get update apt-get install -y default-mysql-server I think this installs mariadb-server 1:10.11.14-0+deb12u2 and the Recommends mariadb-plugin-provider-* (bzip2, lz4, lzma, lzo, snappy) - Then I enable sid and a local repo with MariaDB 11.8.3 and upgrade apt: echo 'deb http://deb.debian.org/debian sid main' > /etc/apt/sources.list apt-get update apt-get install -y apt # on the current system this installs apt 3.1.12 - Finally I try to upgrade MariaDB: apt-get install -y default-mysql-server Previously, when running the same steps with apt 3.1.8, this last command upgraded both mariadb-server and all mariadb-plugin-provider-* Recommends to 11.8.3 from the local repo and MariaDB started fine. Now, with apt 3.1.12, the same command upgrades mariadb-server to 11.8.3 but leaves all mariadb-plugin-provider-* at the old 10.11.14 versions from bookworm. The system ends up with: - server: 11.8.3 - providers: 10.11.14 and MariaDB fails to start with DAEMON plugin API errors, for instance: ERROR: mariadbd: Can't open shared library 'provider_bzip2.so' (errno: 8, API version for DAEMON plugin provider_bzip2 not supported by this version of the server) This regression is visible in CI: - Old passing job (before apt change): upgrades providers too: https://salsa.debian.org/mariadb-team/mariadb-server/-/jobs/8421127 - New failing job with apt 3.1.12: only the server is upgraded: https://salsa.debian.org/mariadb-team/mariadb-server/-/jobs/8590614 Summary of regression: Previously (3.1.8), "apt-get install default-mysql-server" would also upgrade the already-installed mariadb-plugin-provider-* Recommends when newer versions were available, so server and plugins stayed in sync. Now (3.1.10-3.1.12), the solver considers those Recommends already satisfied and leaves them at the old version, which in this real upgrade path produces a broken MariaDB installation. This seems related to enabling the new solver3 by default in 3.1.10 and its handling of already satisfied Recommends, but the practical issue is that a stable apt update changed resolver behaviour and broke a real bookworm -> sid upgrade scenario that used to work. Thanks, Aquila Macedo