Thanks for reporting! These "Depends: XYZ but it is not going to be installed" type of errors are quite hard to debug and the apt error messages are quite unhelpful.
Maybe faust could try to isolate this case and track down what is going on?
Otto Kekäläinen
added a comment - - edited Thanks for reporting! These "Depends: XYZ but it is not going to be installed" type of errors are quite hard to debug and the apt error messages are quite unhelpful.
It could potentially be related to https://jira.mariadb.org/browse/MDEV-22735 .
The changelogs for Ubuntu can be found at https://launchpad.net/ubuntu/bionic/+source/mysql-5.7 . The changelog at https://launchpad.net/ubuntu/+source/mysql-5.7/5.7.31-0ubuntu0.18.04.1 does not state any packaging changes, nor does the diff http://launchpadlibrarian.net/489331240/mysql-5.7_5.7.30-0ubuntu0.18.04.1_5.7.31-0ubuntu0.18.04.1.diff.gz contain any debian/control changes.
Automatic testing at https://salsa.debian.org/mariadb-team/mariadb-server/-/jobs/903736 installed from Debian Sid version 5.7.26-1+b1 and upgraded to MariaDB 10.5.5 without problems.
Maybe faust could try to isolate this case and track down what is going on?
Thanks serg for fixing this. If you tell me which commit it was I can review. Currently I don't see any related commits on 10.5 so I assume you fixed it in some dev branch.
Otto Kekäläinen
added a comment - Thanks serg for fixing this. If you tell me which commit it was I can review. Currently I don't see any related commits on 10.5 so I assume you fixed it in some dev branch.
Otto Kekäläinen
added a comment - serg I found the commit now as it has landed on the 10.5 branch: https://github.com/MariaDB/server/commit/44885273f2cffd3b269fb18b0c369b343d9de512#diff-6e9552c9bd8e61c8f277c21220160234
Unfortunately these changes are wrong and makes MariaDB now conflict with MySQL 5.7 on Debian:
[ERROR] mariadb-client-10.5 conflicts with mariadb-client-core-10.3 files: {'/usr/bin/mysqlcheck'}
[ERROR] mariadb-server-core-10.5 conflicts with mysql-server-5.7 files: {'/usr/bin/resolveip', '/usr/share/mysql/mysql_test_data_timezone.sql', '/usr/share/man/man1/resolveip.1.gz'}
[ERROR] mariadb-test conflicts with mysql-server-5.7 files: {'/usr/lib/mysql/plugin/adt_null.so', '/usr/lib/mysql/plugin/mypluglib.so'}
[ERROR] mariadb-test conflicts with mysql-testsuite-5.7 files: {'/usr/lib/mysql/plugin/qa_auth_server.so', '/usr/lib/mysql/plugin/ha_example.so', '/usr/lib/mysql/plugin/daemon_example.ini', '/usr/lib/mysql/plugin/libdaemon_example.so', '/usr/lib/mysql/plugin/auth_test_plugin.so', '/usr/lib/mysql/plugin/qa_auth_interface.so'}
I'll make a PR on 10.5 in the coming weeks to fix this.
Detected regression with CI run at https://salsa.debian.org/mariadb-team/mariadb-server/-/pipelines/164599
I am a bit confused about your commit serg as the commit message in https://github.com/MariaDB/server/commit/44885273f2cffd3b269fb18b0c369b343d9de512#diff-6e9552c9bd8e61c8f277c21220160234 does not state anything about why this change was made, what was the problem and how the fix addresses it. Neither does this issue have that documented... Worst case scenario is that I need to revert your commit, and debug the original issue from scratch to see what the problem exactly was, and then apply a precise fix for that without regressions.
I am sure Serg is very busy. That is why I asked if faust could help out here and at debug how to reproduce this issue so that we would better know what was the exact bug.
Otto Kekäläinen
added a comment - I am a bit confused about your commit serg as the commit message in https://github.com/MariaDB/server/commit/44885273f2cffd3b269fb18b0c369b343d9de512#diff-6e9552c9bd8e61c8f277c21220160234 does not state anything about why this change was made, what was the problem and how the fix addresses it. Neither does this issue have that documented... Worst case scenario is that I need to revert your commit, and debug the original issue from scratch to see what the problem exactly was, and then apply a precise fix for that without regressions.
I am sure Serg is very busy. That is why I asked if faust could help out here and at debug how to reproduce this issue so that we would better know what was the exact bug.
There were few non-functional changes, like removing the version from mysql-client-5.7 (<< ${source:Version}) — it didn't have any effect, as any mysql-client-5.7 version will always be below 10.5.x, so the restriction was always true. And also I've reordered elements a bit, so that, for example, mariadb-server-core-5.1 would appear before mariadb-server-core-10.0.
The actual change that fixed the original bug symptoms and allowed MariaDB to install over MySQL 5.7.30 on Bionic, was to purge Replaces: lists from incorrect entries. It was claiming, for example, that mariadb-client-10.5 was replacing mariadb-server-10.5 (<< ${source:Version}) or that mariadb-server-10.5 was replacing mysql-client-5.7. This was clearly wrong, the packages conflicted, no doubt, but the one was not a replacement for the other.
As for new conflicts that you reported above — it means that more entries should be added to the Conflicts: list. Not that my commit should be reverted — in my commit I did not remove anything from Conflicts: (or, at least I didn't want to)
Sergei Golubchik
added a comment - There were few non-functional changes, like removing the version from mysql-client-5.7 (<< ${source:Version}) — it didn't have any effect, as any mysql-client-5.7 version will always be below 10.5.x, so the restriction was always true. And also I've reordered elements a bit, so that, for example, mariadb-server-core-5.1 would appear before mariadb-server-core-10.0 .
The actual change that fixed the original bug symptoms and allowed MariaDB to install over MySQL 5.7.30 on Bionic, was to purge Replaces: lists from incorrect entries. It was claiming, for example, that mariadb-client-10.5 was replacing mariadb-server-10.5 (<< ${source:Version}) or that mariadb-server-10.5 was replacing mysql-client-5.7 . This was clearly wrong, the packages conflicted , no doubt, but the one was not a replacement for the other.
As for new conflicts that you reported above — it means that more entries should be added to the Conflicts: list. Not that my commit should be reverted — in my commit I did not remove anything from Conflicts: (or, at least I didn't want to)
> There were few non-functional changes, like removing the version from mysql-client-5.7 (<< ${source:Version}) — it didn't have any effect, as any mysql-client-5.7 version will always be below 10.5.x, so the restriction was always true.
We have situations where the MariaDB(.org repo) packages claim to provide MySQL packages (beyond just the virtual-mysql-* stuff) which forces the use of versioned Breaks/Replaces.
> This was clearly wrong, the packages conflicted, no doubt, but the one was not a replacement for the other.
I am now working on putting MariaDB 10.5.5 into Debian and will sort out the Conflicts/Breaks/Replaces correctly.
Otto Kekäläinen
added a comment - > There were few non-functional changes, like removing the version from mysql-client-5.7 (<< ${source:Version}) — it didn't have any effect, as any mysql-client-5.7 version will always be below 10.5.x, so the restriction was always true.
We have situations where the MariaDB(.org repo) packages claim to provide MySQL packages (beyond just the virtual-mysql-* stuff) which forces the use of versioned Breaks/Replaces.
> This was clearly wrong, the packages conflicted, no doubt, but the one was not a replacement for the other.
It's not about the packages being replacements, it is about individual files inside them that replace files provided from other packages.
https://www.debian.org/doc/debian-policy/ch-relationships.html#packages-which-break-other-packages-breaks
I am now working on putting MariaDB 10.5.5 into Debian and will sort out the Conflicts/Breaks/Replaces correctly.
Thanks for reporting! These "Depends: XYZ but it is not going to be installed" type of errors are quite hard to debug and the apt error messages are quite unhelpful.
It could potentially be related to https://jira.mariadb.org/browse/MDEV-22735.
The changelogs for Ubuntu can be found at https://launchpad.net/ubuntu/bionic/+source/mysql-5.7. The changelog at https://launchpad.net/ubuntu/+source/mysql-5.7/5.7.31-0ubuntu0.18.04.1 does not state any packaging changes, nor does the diff http://launchpadlibrarian.net/489331240/mysql-5.7_5.7.30-0ubuntu0.18.04.1_5.7.31-0ubuntu0.18.04.1.diff.gz contain any debian/control changes.
Automatic testing at https://salsa.debian.org/mariadb-team/mariadb-server/-/jobs/903736 installed from Debian Sid version 5.7.26-1+b1 and upgraded to MariaDB 10.5.5 without problems.
Maybe faust could try to isolate this case and track down what is going on?