Details
Description
Created in Jira due to https://lists.launchpad.net/maria-discuss/msg06221.html
I'm attempting to upgrade a machine with MariaDB 10.6 from Buster to Bullseye using the official MariaDB repo.
I was surprised to see that apt wanted to downgrade a few packages:
$ apt upgrade --without-new-pkgs |
The following packages will be DOWNGRADED:
|
libmariadb-dev libmariadb-dev-compat libmariadb3 mysql-common
|
I was confused at first, as the priority of the candidate is higher, and the epoch is unchanged, and the upstream version is unchanged:
$ apt policy mysql-common
|
mysql-common:
|
Installed: 1:10.6.7+maria~buster |
Candidate: 1:10.6.7+maria~bullseye |
Version table:
|
*** 1:10.6.7+maria~buster 100 |
100 /var/lib/dpkg/status |
1:10.6.7+maria~bullseye 1000 |
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main amd64 Packages
|
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main arm64 Packages
|
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main ppc64el Packages
|
1:10.6.5+maria~bullseye 1000 |
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main amd64 Packages
|
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main arm64 Packages
|
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main ppc64el Packages
|
1:10.6.4+maria~bullseye 1000 |
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main amd64 Packages
|
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main arm64 Packages
|
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main ppc64el Packages
|
5.8+1.0.7 500 |
500 http://debmirror.tuxis.nl/debian bullseye/main amd64 |
Packages
|
$ apt policy libmariadb3
|
libmariadb3:
|
Installed: 1:10.6.7+maria~buster |
Candidate: 1:10.6.7+maria~bullseye |
Version table:
|
*** 1:10.6.7+maria~buster 100 |
100 /var/lib/dpkg/status |
1:10.6.7+maria~bullseye 1000 |
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main amd64 Packages
|
1:10.6.5+maria~bullseye 1000 |
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main amd64 Packages
|
1:10.6.4+maria~bullseye 1000 |
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main amd64 Packages
|
1:10.5.15-0+deb11u1 500 |
500 http://debmirror.tuxis.nl/debian bullseye/main amd64 |
Packages
|
$ apt policy libmariadb-dev-compat
|
libmariadb-dev-compat:
|
Installed: 1:10.6.7+maria~buster |
Candidate: 1:10.6.7+maria~bullseye |
Version table:
|
*** 1:10.6.7+maria~buster 100 |
100 /var/lib/dpkg/status |
1:10.6.7+maria~bullseye 1000 |
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main amd64 Packages
|
1:10.6.5+maria~bullseye 1000 |
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main amd64 Packages
|
1:10.6.4+maria~bullseye 1000 |
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main amd64 Packages
|
1:10.5.15-0+deb11u1 500 |
500 http://debmirror.tuxis.nl/debian bullseye/main amd64 |
Packages
|
$ apt policy libmariadb-dev
|
libmariadb-dev:
|
Installed: 1:10.6.7+maria~buster |
Candidate: 1:10.6.7+maria~bullseye |
Version table:
|
*** 1:10.6.7+maria~buster 100 |
100 /var/lib/dpkg/status |
1:10.6.7+maria~bullseye 1000 |
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main amd64 Packages
|
1:10.6.5+maria~bullseye 1000 |
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main amd64 Packages
|
1:10.6.4+maria~bullseye 1000 |
1000 |
http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian |
bullseye/main amd64 Packages
|
1:10.5.15-0+deb11u1 500 |
500 http://debmirror.tuxis.nl/debian bullseye/main amd64 |
Packages
|
A simulation also reported that apt would 'downgrade' to the same versions:
$ apt upgrade --without-new-pkgs -s |
Inst libmariadb-dev [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye |
MariaDB:ams2.mirrors.digitalocean.com [amd64]) []
|
Inst libmariadb-dev-compat [1:10.6.7+maria~buster] |
(1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [amd64]) |
[]
|
Inst libmariadb3 [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye |
MariaDB:ams2.mirrors.digitalocean.com [amd64])
|
Inst mysql-common [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye |
MariaDB:ams2.mirrors.digitalocean.com [all])
|
Some folks on IRC pointed me to the fact that the Debian revision has been updated from `maria~buster` to `maria~bullseye`. The documentation at https://www.debian.org/doc/debian-policy/ch-controlfields.html#special-version-conventions says:
The lexical comparison is a comparison of ASCII values modified so that all the letters sort earlier than all the non-letters and so that a tilde sorts before anything, even the end of a part.
'bul' comes before 'bus', so the package for Bullseye is perceived as older, despite it being the same effective upstream version...
According to https://www.debian.org/doc/debian-policy/ch-controlfields.html#special-version-conventions, the Debian revision should NOT contain the Debian release codename. This problem will re-appear with Bookworm.
Attachments
Issue Links
- causes
-
MDEV-30478 Galera package naming is broken: same name for all debs
-
- Closed
-
Activity
Field | Original Value | New Value |
---|---|---|
Description |
Created in Jira due to https://lists.launchpad.net/maria-discuss/msg06221.html
I'm attempting to upgrade a machine with MariaDB 10.6 from Buster to Bullseye using the official MariaDB repo. I was surprised to see that apt wanted to downgrade a few packages: {code:java} $ apt upgrade --without-new-pkgs The following packages will be DOWNGRADED: libmariadb-dev libmariadb-dev-compat libmariadb3 mysql-common {code} I was confused at first, as the priority of the candidate is higher, and the epoch is unchanged, and the upstream version is unchanged: {code:java} $ apt policy mysql-common mysql-common: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main arm64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main ppc64el Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main arm64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main ppc64el Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main arm64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main ppc64el Packages 5.8+1.0.7 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages $ apt policy libmariadb3 libmariadb3: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.5.15-0+deb11u1 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages $ apt policy libmariadb-dev-compat libmariadb-dev-compat: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.5.15-0+deb11u1 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages $ apt policy libmariadb-dev libmariadb-dev: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.5.15-0+deb11u1 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages {code} A simulation also reported that apt would 'downgrade' to the same versions: {code:java} $ apt upgrade --without-new-pkgs -s Inst libmariadb-dev [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [amd64]) [] Inst libmariadb-dev-compat [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [amd64]) [] Inst libmariadb3 [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [amd64]) Inst mysql-common [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [all]) {code} Some folks on IRC pointed me to the fact that the Debian revision has been updated from `maria~buster` to `maria~bullseye`. The following documentation at https://www.debian.org/doc/debian-policy/ch-controlfields.html#special-version-conventions says: > The lexical comparison is a comparison of ASCII values modified so that > all the letters sort earlier than all the non-letters and so that a > tilde sorts before anything, even the end of a part. 'bul' comes before 'bus', so the package for Bullseye is perceived as older, despite it being the same effective upstream version... According to https://www.debian.org/doc/debian-policy/ch-controlfields.html#special-version-conventions, the Debian revision should NOT contain the Debian release codename. This problem will re-appear with Bookworm. |
Created in Jira due to https://lists.launchpad.net/maria-discuss/msg06221.html
I'm attempting to upgrade a machine with MariaDB 10.6 from Buster to Bullseye using the official MariaDB repo. I was surprised to see that apt wanted to downgrade a few packages: {code:java} $ apt upgrade --without-new-pkgs The following packages will be DOWNGRADED: libmariadb-dev libmariadb-dev-compat libmariadb3 mysql-common {code} I was confused at first, as the priority of the candidate is higher, and the epoch is unchanged, and the upstream version is unchanged: {code:java} $ apt policy mysql-common mysql-common: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main arm64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main ppc64el Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main arm64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main ppc64el Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main arm64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main ppc64el Packages 5.8+1.0.7 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages $ apt policy libmariadb3 libmariadb3: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.5.15-0+deb11u1 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages $ apt policy libmariadb-dev-compat libmariadb-dev-compat: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.5.15-0+deb11u1 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages $ apt policy libmariadb-dev libmariadb-dev: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.5.15-0+deb11u1 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages {code} A simulation also reported that apt would 'downgrade' to the same versions: {code:java} $ apt upgrade --without-new-pkgs -s Inst libmariadb-dev [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [amd64]) [] Inst libmariadb-dev-compat [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [amd64]) [] Inst libmariadb3 [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [amd64]) Inst mysql-common [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [all]) {code} Some folks on IRC pointed me to the fact that the Debian revision has been updated from `maria~buster` to `maria~bullseye`. The documentation at https://www.debian.org/doc/debian-policy/ch-controlfields.html#special-version-conventions says: > The lexical comparison is a comparison of ASCII values modified so that > all the letters sort earlier than all the non-letters and so that a > tilde sorts before anything, even the end of a part. 'bul' comes before 'bus', so the package for Bullseye is perceived as older, despite it being the same effective upstream version... According to https://www.debian.org/doc/debian-policy/ch-controlfields.html#special-version-conventions, the Debian revision should NOT contain the Debian release codename. This problem will re-appear with Bookworm. |
Description |
Created in Jira due to https://lists.launchpad.net/maria-discuss/msg06221.html
I'm attempting to upgrade a machine with MariaDB 10.6 from Buster to Bullseye using the official MariaDB repo. I was surprised to see that apt wanted to downgrade a few packages: {code:java} $ apt upgrade --without-new-pkgs The following packages will be DOWNGRADED: libmariadb-dev libmariadb-dev-compat libmariadb3 mysql-common {code} I was confused at first, as the priority of the candidate is higher, and the epoch is unchanged, and the upstream version is unchanged: {code:java} $ apt policy mysql-common mysql-common: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main arm64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main ppc64el Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main arm64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main ppc64el Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main arm64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main ppc64el Packages 5.8+1.0.7 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages $ apt policy libmariadb3 libmariadb3: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.5.15-0+deb11u1 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages $ apt policy libmariadb-dev-compat libmariadb-dev-compat: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.5.15-0+deb11u1 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages $ apt policy libmariadb-dev libmariadb-dev: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.5.15-0+deb11u1 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages {code} A simulation also reported that apt would 'downgrade' to the same versions: {code:java} $ apt upgrade --without-new-pkgs -s Inst libmariadb-dev [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [amd64]) [] Inst libmariadb-dev-compat [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [amd64]) [] Inst libmariadb3 [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [amd64]) Inst mysql-common [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [all]) {code} Some folks on IRC pointed me to the fact that the Debian revision has been updated from `maria~buster` to `maria~bullseye`. The documentation at https://www.debian.org/doc/debian-policy/ch-controlfields.html#special-version-conventions says: > The lexical comparison is a comparison of ASCII values modified so that > all the letters sort earlier than all the non-letters and so that a > tilde sorts before anything, even the end of a part. 'bul' comes before 'bus', so the package for Bullseye is perceived as older, despite it being the same effective upstream version... According to https://www.debian.org/doc/debian-policy/ch-controlfields.html#special-version-conventions, the Debian revision should NOT contain the Debian release codename. This problem will re-appear with Bookworm. |
Created in Jira due to https://lists.launchpad.net/maria-discuss/msg06221.html
I'm attempting to upgrade a machine with MariaDB 10.6 from Buster to Bullseye using the official MariaDB repo. I was surprised to see that apt wanted to downgrade a few packages: {code:java} $ apt upgrade --without-new-pkgs The following packages will be DOWNGRADED: libmariadb-dev libmariadb-dev-compat libmariadb3 mysql-common {code} I was confused at first, as the priority of the candidate is higher, and the epoch is unchanged, and the upstream version is unchanged: {code:java} $ apt policy mysql-common mysql-common: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main arm64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main ppc64el Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main arm64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main ppc64el Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main arm64 Packages 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main ppc64el Packages 5.8+1.0.7 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages $ apt policy libmariadb3 libmariadb3: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.5.15-0+deb11u1 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages $ apt policy libmariadb-dev-compat libmariadb-dev-compat: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.5.15-0+deb11u1 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages $ apt policy libmariadb-dev libmariadb-dev: Installed: 1:10.6.7+maria~buster Candidate: 1:10.6.7+maria~bullseye Version table: *** 1:10.6.7+maria~buster 100 100 /var/lib/dpkg/status 1:10.6.7+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.5+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.6.4+maria~bullseye 1000 1000 http://ams2.mirrors.digitalocean.com/mariadb/repo/10.6/debian bullseye/main amd64 Packages 1:10.5.15-0+deb11u1 500 500 http://debmirror.tuxis.nl/debian bullseye/main amd64 Packages {code} A simulation also reported that apt would 'downgrade' to the same versions: {code:java} $ apt upgrade --without-new-pkgs -s Inst libmariadb-dev [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [amd64]) [] Inst libmariadb-dev-compat [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [amd64]) [] Inst libmariadb3 [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [amd64]) Inst mysql-common [1:10.6.7+maria~buster] (1:10.6.7+maria~bullseye MariaDB:ams2.mirrors.digitalocean.com [all]) {code} Some folks on IRC pointed me to the fact that the Debian revision has been updated from `maria~buster` to `maria~bullseye`. The documentation at https://www.debian.org/doc/debian-policy/ch-controlfields.html#special-version-conventions says: {quote}The lexical comparison is a comparison of ASCII values modified so that all the letters sort earlier than all the non-letters and so that a tilde sorts before anything, even the end of a part.{quote} 'bul' comes before 'bus', so the package for Bullseye is perceived as older, despite it being the same effective upstream version... According to https://www.debian.org/doc/debian-policy/ch-controlfields.html#special-version-conventions, the Debian revision should NOT contain the Debian release codename. This problem will re-appear with Bookworm. |
Assignee | Tuukka Pasanen [ JIRAUSER49166 ] |
Fix Version/s | 10.3 [ 22126 ] | |
Fix Version/s | 10.4 [ 22408 ] | |
Fix Version/s | 10.5 [ 23123 ] | |
Fix Version/s | 10.6 [ 24028 ] | |
Fix Version/s | 10.7 [ 24805 ] | |
Fix Version/s | 10.8 [ 26121 ] | |
Fix Version/s | 10.9 [ 26905 ] | |
Fix Version/s | 10.10 [ 27530 ] |
Component/s | Platform Debian [ 10136 ] |
Environment | Debian | Debian Bullseye |
Labels | debian debian11 packaging |
Status | Open [ 1 ] | In Progress [ 3 ] |
Status | In Progress [ 3 ] | Stalled [ 10000 ] |
Status | Stalled [ 10000 ] | In Progress [ 3 ] |
Status | In Progress [ 3 ] | Stalled [ 10000 ] |
Status | Stalled [ 10000 ] | In Progress [ 3 ] |
Status | In Progress [ 3 ] | Stalled [ 10000 ] |
Status | Stalled [ 10000 ] | In Review [ 10002 ] |
Comment | [ @Tuukka Pasanen Do you mean building the package and installing the .deb? If so, where can I find the source? ] |
Fix Version/s | 10.3.36 [ 27513 ] | |
Fix Version/s | 10.4.26 [ 27511 ] | |
Fix Version/s | 10.5.17 [ 27509 ] | |
Fix Version/s | 10.6.9 [ 27507 ] | |
Fix Version/s | 10.7.5 [ 27505 ] | |
Fix Version/s | 10.8.4 [ 27503 ] | |
Fix Version/s | 10.9.2 [ 27115 ] | |
Fix Version/s | 10.3 [ 22126 ] | |
Fix Version/s | 10.4 [ 22408 ] | |
Fix Version/s | 10.5 [ 23123 ] | |
Fix Version/s | 10.6 [ 24028 ] | |
Fix Version/s | 10.7 [ 24805 ] | |
Fix Version/s | 10.8 [ 26121 ] | |
Fix Version/s | 10.9 [ 26905 ] | |
Fix Version/s | 10.10 [ 27530 ] | |
Resolution | Fixed [ 1 ] | |
Status | In Review [ 10002 ] | Closed [ 6 ] |
Link |
This issue causes |
Thanks for pointing this out and yes lexical comparison if it's done that way will have results as you noted as thought if it's calculated whole bullseye should be greater than buster as just dummy calculating it's whole in ascii it's bigger without thinking lexical stuff.
But this should be solved way or another as you are probably not the only one who is suffering this.