[MDEV-28666] upgrade 10.2 -> 10.6.8, 10.7.4 fails due to file conflict in libmariadb-dev Created: 2022-05-25  Updated: 2022-06-10  Resolved: 2022-06-10

Status: Closed
Project: MariaDB Server
Component/s: Packaging, Platform Debian
Affects Version/s: 10.3, 10.4, 10.5, 10.6, 10.7, 10.8, 10.9, 10.10
Fix Version/s: 10.3.36, 10.4.26, 10.5.17, 10.6.9, 10.7.5, 10.9.2

Type: Bug Priority: Major
Reporter: Timofey Turenko Assignee: Tuukka Pasanen
Resolution: Fixed Votes: 0
Labels: Debian, packaging, ubuntu
Environment:

Ubuntu Bionic, Debian stretch



 Description   

1. install 10.2.44 - all packages

export  DEBIAN_FRONTEND=noninteractive; sudo -E apt-get -q -o Dpkg::Options::=--force-confold -o Dpkg::Options::=--force-confdef -y --force-yes install mariadb-plugin-cracklib-password-check mariadb-plugin-gssapi-client mariadb-plugin-gssapi-server mariadb-plugin-rocksdb mariadb-plugin-spider mariadb-backup-10.2 mariadb-test libmariadb-dev libmariadb3 libmariadbclient18 libmysqlclient18 mariadb-client mariadb-common mariadb-server mysql-common libmariadbd-dev libmariadbd19 mariadb-test-data

2. Remove server as instructed by upgrade docs https://mariadb.com/kb/en/upgrading-from-mariadb-105-to-mariadb-106/

(please note: there is no document about 10.2 -> 10.6 upgrade)

sudo apt-get remove mariadb-server

3. reconfigure sources.list to use 10.6.8 CS repos and try to install new version (or even just one libmariadb-dev package):

Preconfiguring packages ...
(Reading database ... 83205 files and directories currently installed.)
Preparing to unpack .../0-libssl1.1_1.1.1-1ubuntu2.1~18.04.17_arm64.deb ...
Unpacking libssl1.1:arm64 (1.1.1-1ubuntu2.1~18.04.17) over (1.1.1-1ubuntu2.1~18.04.3) ...
Selecting previously unselected package libpcre2-8-0:arm64.
Preparing to unpack .../1-libpcre2-8-0_10.31-2_arm64.deb ...
Unpacking libpcre2-8-0:arm64 (10.31-2) ...
Preparing to unpack .../2-libmariadb-dev_1%3a10.6.8+maria~bionic_arm64.deb ...
Unpacking libmariadb-dev (1:10.6.8+maria~bionic) over (1:10.2.44+maria~bionic) ...
dpkg: error processing archive /tmp/apt-dpkg-install-U5L4Qp/2-libmariadb-dev_1%3a10.6.8+maria~bionic_arm64.deb (--unpack):
 trying to overwrite '/usr/bin/mariadb_config', which is also in package libmariadbd-dev 1:10.2.44+maria~bionic
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
dpkg: considering deconfiguration of libmariadb-dev, which would be broken by installation of libmariadbd-dev ...
dpkg: yes, will deconfigure libmariadb-dev (broken by libmariadbd-dev)
Preparing to unpack .../3-libmariadbd-dev_1%3a10.6.8+maria~bionic_arm64.deb ...
De-configuring libmariadb-dev (1:10.2.44+maria~bionic) ...
Unpacking libmariadbd-dev (1:10.6.8+maria~bionic) over (1:10.2.44+maria~bionic) ...
Replacing files in old package libmariadb-dev (1:10.2.44+maria~bionic) ...
Preparing to unpack .../4-libmariadbd19_1%3a10.6.8+maria~bionic_arm64.deb ...
Unpacking libmariadbd19:arm64 (1:10.6.8+maria~bionic) over (1:10.2.44+maria~bionic) ...
Preparing to unpack .../5-libmysqlclient18_1%3a10.6.8+maria~bionic_arm64.deb ...
Unpacking libmysqlclient18 (1:10.6.8+maria~bionic) over (1:10.2.44+maria~bionic) ...
Preparing to unpack .../6-libmariadbclient18_1%3a10.6.8+maria~bionic_arm64.deb ...
Unpacking libmariadbclient18 (1:10.6.8+maria~bionic) over (1:10.2.44+maria~bionic) ...
Preparing to unpack .../7-libmariadb3_1%3a10.6.8+maria~bionic_arm64.deb ...
Unpacking libmariadb3:arm64 (1:10.6.8+maria~bionic) over (1:10.2.44+maria~bionic) ...
Selecting previously unselected package libssl-dev:arm64.
Preparing to unpack .../8-libssl-dev_1.1.1-1ubuntu2.1~18.04.17_arm64.deb ...
Unpacking libssl-dev:arm64 (1.1.1-1ubuntu2.1~18.04.17) ...
Errors were encountered while processing:
 /tmp/apt-dpkg-install-U5L4Qp/2-libmariadb-dev_1%3a10.6.8+maria~bionic_arm64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)



 Comments   
Comment by Tuukka Pasanen [ 2022-05-27 ]

Just to clarify some things. Are you upgrading from Ubuntu 18.04.x 10.2 to MariaDB Foundation package 10.6? I'm asking that I can test this on my test environment correctly.

Comment by Elena Stepanova [ 2022-05-31 ]

illuusio,

The test clearly upgrades from 10.2.44 packages built by MariaDB to 10.6.8 packages built by MariaDB, we can see it in the output (+mariadb~bionic):

Replacing files in old package libmariadb-dev (1:10.2.44+maria~bionic) ...
 
Preparing to unpack .../4-libmariadbd19_1%3a10.6.8+maria~bionic_arm64.deb ...

To reproduce, it's sufficient to install libmariadb-dev libmariadbd-dev from MariaDB 10.2 repo, switch to 10.6 repo and "install" (upgrade) the same two packages.

4:~$ dpkg -l | grep -i maria
ii  libmariadb-dev                        1:10.2.44+maria~bionic            amd64        MariaDB database development files
ii  libmariadb3                           1:10.2.44+maria~bionic            amd64        MariaDB database client library
ii  libmariadbd-dev                       1:10.2.44+maria~bionic            amd64        MariaDB embedded database, development files
ii  libmariadbd19:amd64                   1:10.2.44+maria~bionic            amd64        MariaDB embedded database, shared library
ii  mariadb-common                        1:10.2.44+maria~bionic            all          MariaDB database common files (e.g. /etc/mysql/mariadb.conf.d/)
...
$ sudo apt-get update
Get:1 https://mirrors.xtom.ee/mariadb/repo/10.6/ubuntu bionic InRelease [6,265 B]
Hit:2 http://security.ubuntu.com/ubuntu bionic-security InRelease                                         
Hit:3 http://us.archive.ubuntu.com/ubuntu bionic InRelease                        
Hit:4 http://us.archive.ubuntu.com/ubuntu bionic-updates InRelease                
Get:5 https://mirrors.xtom.ee/mariadb/repo/10.6/ubuntu bionic/main arm64 Packages [17.0 kB]
Get:6 https://mirrors.xtom.ee/mariadb/repo/10.6/ubuntu bionic/main ppc64el Packages [17.0 kB]   
Get:7 https://mirrors.xtom.ee/mariadb/repo/10.6/ubuntu bionic/main amd64 Packages [17.8 kB]     
Hit:8 http://us.archive.ubuntu.com/ubuntu bionic-backports InRelease                 
Fetched 58.0 kB in 1s (39.9 kB/s)                   
Reading package lists... Done
 
$ sudo apt-get install libmariadb-dev libmariadbd-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  libmariadb3 libmariadbd19 libpcre2-8-0 libpmem1 libssl-dev libssl1.1
Suggested packages:
  libssl-doc
The following NEW packages will be installed:
  libpcre2-8-0 libpmem1 libssl-dev
The following packages will be upgraded:
  libmariadb-dev libmariadb3 libmariadbd-dev libmariadbd19 libssl1.1
5 upgraded, 3 newly installed, 0 to remove and 290 not upgraded.
Need to get 14.8 MB of archives.
After this operation, 21.4 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 https://mirrors.xtom.ee/mariadb/repo/10.6/ubuntu bionic/main amd64 libmariadb-dev amd64 1:10.6.8+maria~bionic [160 kB]
Get:2 https://mirrors.xtom.ee/mariadb/repo/10.6/ubuntu bionic/main amd64 libmariadbd-dev amd64 1:10.6.8+maria~bionic [6,273 kB]
Get:3 http://us.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libssl1.1 amd64 1.1.1-1ubuntu2.1~18.04.17 [1,302 kB]
Get:4 https://mirrors.xtom.ee/mariadb/repo/10.6/ubuntu bionic/main amd64 libmariadbd19 amd64 1:10.6.8+maria~bionic [5,138 kB]
Get:5 https://mirrors.xtom.ee/mariadb/repo/10.6/ubuntu bionic/main amd64 libmariadb3 amd64 1:10.6.8+maria~bionic [149 kB]
Get:6 http://us.archive.ubuntu.com/ubuntu bionic/universe amd64 libpcre2-8-0 amd64 10.31-2 [179 kB]
Get:7 http://us.archive.ubuntu.com/ubuntu bionic-updates/universe amd64 libpmem1 amd64 1.4.1-0ubuntu1~18.04.1 [45.7 kB]
Get:8 http://us.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libssl-dev amd64 1.1.1-1ubuntu2.1~18.04.17 [1,568 kB]
Fetched 14.8 MB in 1s (12.5 MB/s) 
Preconfiguring packages ...
(Reading database ... 71179 files and directories currently installed.)
Preparing to unpack .../0-libssl1.1_1.1.1-1ubuntu2.1~18.04.17_amd64.deb ...
Unpacking libssl1.1:amd64 (1.1.1-1ubuntu2.1~18.04.17) over (1.1.1-1ubuntu2.1~18.04.5) ...
Selecting previously unselected package libpcre2-8-0:amd64.
Preparing to unpack .../1-libpcre2-8-0_10.31-2_amd64.deb ...
Unpacking libpcre2-8-0:amd64 (10.31-2) ...
Selecting previously unselected package libpmem1.
Preparing to unpack .../2-libpmem1_1.4.1-0ubuntu1~18.04.1_amd64.deb ...
Unpacking libpmem1 (1.4.1-0ubuntu1~18.04.1) ...
Preparing to unpack .../3-libmariadb-dev_1%3a10.6.8+maria~bionic_amd64.deb ...
Unpacking libmariadb-dev (1:10.6.8+maria~bionic) over (1:10.2.44+maria~bionic) ...
dpkg: error processing archive /tmp/apt-dpkg-install-pOE3MK/3-libmariadb-dev_1%3a10.6.8+maria~bionic_amd64.deb (--unpack):
 trying to overwrite '/usr/bin/mariadb_config', which is also in package libmariadbd-dev 1:10.2.44+maria~bionic
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
dpkg: considering deconfiguration of libmariadb-dev, which would be broken by installation of libmariadbd-dev ...
dpkg: yes, will deconfigure libmariadb-dev (broken by libmariadbd-dev)
Preparing to unpack .../4-libmariadbd-dev_1%3a10.6.8+maria~bionic_amd64.deb ...
De-configuring libmariadb-dev (1:10.2.44+maria~bionic) ...
Unpacking libmariadbd-dev (1:10.6.8+maria~bionic) over (1:10.2.44+maria~bionic) ...
Replacing files in old package libmariadb-dev (1:10.2.44+maria~bionic) ...
Preparing to unpack .../5-libmariadbd19_1%3a10.6.8+maria~bionic_amd64.deb ...
Unpacking libmariadbd19:amd64 (1:10.6.8+maria~bionic) over (1:10.2.44+maria~bionic) ...
Preparing to unpack .../6-libmariadb3_1%3a10.6.8+maria~bionic_amd64.deb ...
Unpacking libmariadb3:amd64 (1:10.6.8+maria~bionic) over (1:10.2.44+maria~bionic) ...
Selecting previously unselected package libssl-dev:amd64.
Preparing to unpack .../7-libssl-dev_1.1.1-1ubuntu2.1~18.04.17_amd64.deb ...
Unpacking libssl-dev:amd64 (1.1.1-1ubuntu2.1~18.04.17) ...
Errors were encountered while processing:
 /tmp/apt-dpkg-install-pOE3MK/3-libmariadb-dev_1%3a10.6.8+maria~bionic_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
 
$ echo $?
100

Comment by Tuukka Pasanen [ 2022-06-07 ]

Thank you for testing this out. I'll take a look why replace or conflict is not in order.

Comment by Tuukka Pasanen [ 2022-06-09 ]

Added correct break to libmariadbd-dev package. Now it should not error anymore on update from version 10.2

Comment by Tuukka Pasanen [ 2022-06-09 ]

elenst and tturenko now there is Pull Request which should fix this. It's made against 10.3 as it's first appearance of this problem. Could please review and test change. If needed I can update this to some other version but it needs manual complication and dpkg usage.

Please ask if testing documentation is not enough.

Comment by Elena Stepanova [ 2022-06-09 ]

I don't think either of us are a good choice for review, however trivial the patch is. Maybe danblack could do it.

Comment by Daniel Black [ 2022-06-10 ]

Thanks tturenko and illuusio

Generated at Thu Feb 08 10:02:32 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.