Plesk

Plesk Installer fails on RHEL/AlmaLinux/Rocky Linux/CentOS 8 server with MariaDB: Version is not specified

Symptoms

On a Plesk for Linux server on RHEL/AlmaLinux/Rocky Linux/CentOS 8 with MariaDB, Plesk Installer fails:

Unable to retrieve the information about the packages installed in the system:
Failed to read output from the rpm utility.
Error in Package::createFromCache: input line 60894: P:config(mariadb-connector-c) = -1
Version is not specified. Error in Version.cpp.

Or:

Error in Package::createFromCache: input line 32787: P:config(mariadb-connector-c-devel) = -1 

Cause

On February 12th, 2022, MariaDB released the following updated versions: 10.3.34, 10.4.24, 10.5.15, 10.6.7.
These updates contain bug MDEV-27834 that results in the incorrect "provides" in the package MariaDB-shared (and MariaDB-devel) that breaks Plesk Installer.

Resolution

Apply one of the following workarounds:

Downgrade the package

  1. Connect to the server using SSH.

  2. Downgrade the package MariaDB-shared:

    # yum downgrade MariaDB-shared

    Note: in case of the error message being mariadb-connector-c-devel, it's required also to downgrade MariaDB-devel

  3. Exclude the affected package to avoid it from being installed:

    Note: The name of the repository file /etc/yum.repos.d/MariaDB.repo is just an example, it can have a different name.

    • for MariaDB 10.3:

      # echo "exclude=MariaDB-shared-10.3.34-* MariaDB-devel-10.3.34-*" >> /etc/yum.repos.d/MariaDB.repo

    • for MariaDB 10.4:

      # echo "exclude=MariaDB-shared-10.4.24-* MariaDB-devel-10.4.24-*" >> /etc/yum.repos.d/MariaDB.repo

    • for MariaDB 10.5:

      # echo "exclude=MariaDB-shared-10.5.15-* MariaDB-devel-10.5.15-*" >> /etc/yum.repos.d/MariaDB.repo

    • for MariaDB 10.6:

      # echo "exclude=MariaDB-shared-10.6.7-* MariaDB-devel-10.6.7-*" >> /etc/yum.repos.d/MariaDB.repo

Update the RPM database only

  1. Connect to the server using SSH.

  2. Download and downgrade the package manually with keeping new libraries:

    • for MariaDB 10.3:

      # rpm -Uhv --oldpackage --justdb http://yum.mariadb.org/10.3/rhel8-amd64/rpms/MariaDB-shared-10.3.32-1.el8.x86_64.rpm

    • for MariaDB 10.4:

      # rpm -Uhv --oldpackage --justdb http://yum.mariadb.org/10.4/rhel8-amd64/rpms/MariaDB-shared-10.4.22-1.el8.x86_64.rpm

    • for MariaDB 10.5:

      # rpm -Uhv --oldpackage --justdb http://yum.mariadb.org/10.5/rhel8-amd64/rpms/MariaDB-shared-10.5.13-1.el8.x86_64.rpm

    • for MariaDB 10.6:

      # rpm -Uhv --oldpackage --justdb http://yum.mariadb.org/10.6/rhel8-amd64/rpms/MariaDB-shared-10.6.5-1.el8.x86_64.rpm

  3. Exclude the affected package to avoid it from being installed:

    Note: The name of the repository file /etc/yum.repos.d/MariaDB.repo is just an example, it can have a different name.

    • for MariaDB 10.3:

      # echo "exclude=MariaDB-shared-10.3.34-" >> /etc/yum.repos.d/MariaDB.repo

    • for MariaDB 10.4:

      # echo "exclude=MariaDB-shared-10.4.24-" >> /etc/yum.repos.d/MariaDB.repo

    • for MariaDB 10.5:

      # echo "exclude=MariaDB-shared-10.5.15-" >> /etc/yum.repos.d/MariaDB.repo

    • for MariaDB 10.6:

      # echo "exclude=MariaDB-shared-10.6.7-" >> /etc/yum.repos.d/MariaDB.repo

Note: It may be required to additionally downgrade other MariaDB-* packages. For example, if the error message provided by Plesk installer also contains mariadb-connector-c-devel apply steps from the article for MariaDB-devel package.

Exit mobile version