Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-23506

mariadb-connector-c-devel package from standard RHEL 8 repo conflicts with MariaDB's packages

Details

    Description

      The mariadb-connector-c-devel package from the standard RHEL 8 repo conflicts with MariaDB's packages. e.g.:

      # dnf  -y  update ;
      Last metadata expiration check: 0:04:17 ago on Tue 18 Aug 2020 02:03:54 PM EDT.
      Error:
       Problem: package mariadb-connector-c-devel-3.0.7-1.el8.x86_64 requires mariadb-connector-c = 3.0.7-1.el8, but none of the providers can be installed
        - package MariaDB-shared-10.5.5-1.el8.x86_64 obsoletes mariadb-connector-c provided by mariadb-connector-c-3.0.7-1.el8.x86_64
        - package MariaDB-shared-10.5.5-1.el8.x86_64 obsoletes mariadb-connector-c provided by mariadb-connector-c-3.0.7-1.el8.i686
        - cannot install the best update candidate for package mariadb-connector-c-devel-3.0.7-1.el8.x86_64
        - cannot install the best update candidate for package mariadb-connector-c-3.0.7-1.el8.x86_64
      (try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)
      

      This was first reported here:

      https://mariadb.com/kb/en/odd-mariadb-connector-c-error-on-update/

      As far as I can tell, it looks like the problem is that our MariaDB-devel package should take precedence over the mariadb-connector-c-devel package from the standard RHEL 8 repo, but it currently doesn't.

      We solved a similar problem for the MariaDB-devel package by making mariadb-connector-c an "alternative name" for the MariaDB-devel package:

      ELSEIF(RPM MATCHES "(rhel|centos)8")
      ...
        ALTERNATIVE_NAME("shared" "mariadb-connector-c" ${MARIADB_CONNECTOR_C_VERSION}-1)
        ALTERNATIVE_NAME("shared" "mariadb-connector-c-config" ${MARIADB_CONNECTOR_C_VERSION}-1)
      ...
      ENDIF()
      

      https://github.com/MariaDB/server/blob/mariadb-10.5.5/cmake/cpack_rpm.cmake#L238

      I suspect that we need a similar rule to add mariadb-connector-c-devel as an alternative name for the MariaDB-devel package.

      Attachments

        Issue Links

          Activity

            the issue is confirmed on RHEL-8.

            installed packages:

            mariadb-connector-c-3.1.11-2.el8_3.x86_64
            mariadb-connector-c-config-3.1.11-2.el8_3.noarch
            mariadb-connector-c-devel-3.1.11-2.el8_3.x86_64
            

            the following is errored as per description:

            # yum install MariaDB-shared MariaDB-devel
            Error:
             Problem: problem with installed package mariadb-connector-c-devel-3.1.11-2.el8_3.x86_64
              - package mariadb-connector-c-devel-3.0.7-1.el8.x86_64 requires mariadb-connector-c = 3.0.7-1.el8, but none of the providers can be installed
              - package mariadb-connector-c-devel-3.1.11-2.el8_3.x86_64 conflicts with mysql-devel provided by MariaDB-devel-10.5.12-1.el8.x86_64
              - package MariaDB-shared-10.5.12-1.el8.x86_64 obsoletes mariadb-connector-c provided by mariadb-connector-c-3.0.7-1.el8.i686
              - package MariaDB-shared-10.5.12-1.el8.x86_64 obsoletes mariadb-connector-c provided by mariadb-connector-c-3.0.7-1.el8.x86_64
              - cannot install the best candidate for the job
            

            the best way is to set alternative name for devel package, to do not create more provides:

            ALTERNATIVE_NAME("devel" "mariadb-connector-c-devel" ${MARIADB_CONNECTOR_C_VERSION}-1)
            

            abychko Alexey Bychko (Inactive) added a comment - the issue is confirmed on RHEL-8. installed packages: mariadb-connector-c-3.1.11-2.el8_3.x86_64 mariadb-connector-c-config-3.1.11-2.el8_3.noarch mariadb-connector-c-devel-3.1.11-2.el8_3.x86_64 the following is errored as per description: # yum install MariaDB-shared MariaDB-devel Error: Problem: problem with installed package mariadb-connector-c-devel-3.1.11-2.el8_3.x86_64 - package mariadb-connector-c-devel-3.0.7-1.el8.x86_64 requires mariadb-connector-c = 3.0.7-1.el8, but none of the providers can be installed - package mariadb-connector-c-devel-3.1.11-2.el8_3.x86_64 conflicts with mysql-devel provided by MariaDB-devel-10.5.12-1.el8.x86_64 - package MariaDB-shared-10.5.12-1.el8.x86_64 obsoletes mariadb-connector-c provided by mariadb-connector-c-3.0.7-1.el8.i686 - package MariaDB-shared-10.5.12-1.el8.x86_64 obsoletes mariadb-connector-c provided by mariadb-connector-c-3.0.7-1.el8.x86_64 - cannot install the best candidate for the job the best way is to set alternative name for devel package, to do not create more provides: ALTERNATIVE_NAME("devel" "mariadb-connector-c-devel" ${MARIADB_CONNECTOR_C_VERSION}-1)

            fixed in 25d6bbcd5172eb9af0a68be11fb662457a7d572b

            abychko Alexey Bychko (Inactive) added a comment - fixed in 25d6bbcd5172eb9af0a68be11fb662457a7d572b

            i still see:

            1. dnf -y install mariadb-connector-c-devel ;
              Last metadata expiration check: 0:50:50 ago on Wed 22 Sep 2021 06:53:05 PM
              EDT.
              Error:
              Problem: problem with installed package MariaDB-devel-10.5.12-1.el8.x86_64
            • package mariadb-connector-c-devel-3.1.11-2.el8_3.x86_64 conflicts with
              mysql-devel provided by MariaDB-devel-10.5.12-1.el8.x86_64
            • package mariadb-connector-c-devel-3.1.11-2.el8_3.x86_64 conflicts with
              mysql-devel provided by MariaDB-devel-10.5.10-1.el8.x86_64
            • package mariadb-connector-c-devel-3.1.11-2.el8_3.x86_64 conflicts with
              mysql-devel provided by MariaDB-devel-10.5.11-1.el8.x86_64
            • cannot install the best candidate for the job
              (try to add '--allowerasing' to command line to replace conflicting
              packages or '-skip-broken' to skip uninstallable packages or '-nobest' to
              use not only best candidate packages)

            [root@edwardsmarkf reeval_section]# dnf list installed | grep mariadb ;
            MariaDB-backup.x86_64 10.5.12-1.el8
            @mariadb-main
            MariaDB-client.x86_64 10.5.12-1.el8
            @mariadb-main
            MariaDB-common.x86_64 10.5.12-1.el8
            @mariadb-main
            MariaDB-devel.x86_64 10.5.12-1.el8
            @mariadb-main
            MariaDB-server.x86_64 10.5.12-1.el8
            @mariadb-main
            MariaDB-shared.x86_64 10.5.12-1.el8
            @mariadb-main
            galera-4.x86_64 26.4.9-1.el8
            @mariadb-main

            Thank you,

            Mark Edwards

            On Tue, Sep 21, 2021 at 2:41 AM Alexey Bychko (Jira) <jira@mariadb.org>

            edwardsmarkf mark f edwards added a comment - i still see: dnf -y install mariadb-connector-c-devel ; Last metadata expiration check: 0:50:50 ago on Wed 22 Sep 2021 06:53:05 PM EDT. Error: Problem: problem with installed package MariaDB-devel-10.5.12-1.el8.x86_64 package mariadb-connector-c-devel-3.1.11-2.el8_3.x86_64 conflicts with mysql-devel provided by MariaDB-devel-10.5.12-1.el8.x86_64 package mariadb-connector-c-devel-3.1.11-2.el8_3.x86_64 conflicts with mysql-devel provided by MariaDB-devel-10.5.10-1.el8.x86_64 package mariadb-connector-c-devel-3.1.11-2.el8_3.x86_64 conflicts with mysql-devel provided by MariaDB-devel-10.5.11-1.el8.x86_64 cannot install the best candidate for the job (try to add '--allowerasing' to command line to replace conflicting packages or '- skip-broken' to skip uninstallable packages or ' -nobest' to use not only best candidate packages) [root@edwardsmarkf reeval_section] # dnf list installed | grep mariadb ; MariaDB-backup.x86_64 10.5.12-1.el8 @mariadb-main MariaDB-client.x86_64 10.5.12-1.el8 @mariadb-main MariaDB-common.x86_64 10.5.12-1.el8 @mariadb-main MariaDB-devel.x86_64 10.5.12-1.el8 @mariadb-main MariaDB-server.x86_64 10.5.12-1.el8 @mariadb-main MariaDB-shared.x86_64 10.5.12-1.el8 @mariadb-main galera-4.x86_64 26.4.9-1.el8 @mariadb-main Thank you, Mark Edwards On Tue, Sep 21, 2021 at 2:41 AM Alexey Bychko (Jira) <jira@mariadb.org>
            abychko Alexey Bychko (Inactive) added a comment - - edited

            edwardsmarkf
            the fix is pushed to repository and will be available with next released version. currently available packages are not rebuilt to include the fix

            please see FixVersions field - there is 10.5.13, you still have 10.5.12

            abychko Alexey Bychko (Inactive) added a comment - - edited edwardsmarkf the fix is pushed to repository and will be available with next released version. currently available packages are not rebuilt to include the fix please see FixVersions field - there is 10.5.13, you still have 10.5.12

            thanks – i noticed that after i sent the email. THANK YOU for maintaining
            this package.

            Thank you,

            Mark Edwards

            On Thu, Sep 23, 2021 at 1:32 AM Alexey Bychko (Jira) <jira@mariadb.org>

            edwardsmarkf mark f edwards added a comment - thanks – i noticed that after i sent the email. THANK YOU for maintaining this package. Thank you, Mark Edwards On Thu, Sep 23, 2021 at 1:32 AM Alexey Bychko (Jira) <jira@mariadb.org>

            People

              abychko Alexey Bychko (Inactive)
              GeoffMontee Geoff Montee (Inactive)
              Votes:
              1 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.