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

            GeoffMontee Geoff Montee (Inactive) created issue -
            GeoffMontee Geoff Montee (Inactive) made changes -
            Field Original Value New Value
            Assignee Daniel Bartholomew [ dbart ] Sergei Golubchik [ serg ]
            edwardsmarkf mark f edwards added a comment - - edited

            we have the same issue with 10.4:

            # dnf -y install MariaDB-devel ;
            Last metadata expiration check: 0:02:17 ago on Wed 19 Aug 2020 03:30:45 PM UTC.
            All matches were filtered out by modular filtering for argument: MariaDB-devel
            * Maybe you meant: mariadb-devel ;
            Error: Unable to find a match: MariaDB-devel

            # dnf -y install mariadb-devel

            Running transaction check
            Transaction check succeeded.
            Running transaction test
            The downloaded packages were saved in cache until the next successful transaction.
            You can remove cached packages by executing 'dnf clean packages'.
            Error: Transaction test error:
            file /usr/lib64/libmariadb.so.3 conflicts between attempted installs of MariaDB-shared-10.4.12-1.el8.x86_64 and mariadb-connector-c-3.0.7-1.el8.x86_64

            EDIT: same issue with 10.3...? 10.3 was first released on 2017-04-16 - i get the feeling that mariadb-connector-c is not maintained anymore?

            edwardsmarkf mark f edwards added a comment - - edited we have the same issue with 10.4: # dnf -y install MariaDB-devel ; Last metadata expiration check: 0:02:17 ago on Wed 19 Aug 2020 03:30:45 PM UTC. All matches were filtered out by modular filtering for argument: MariaDB-devel * Maybe you meant: mariadb-devel ; Error: Unable to find a match: MariaDB-devel # dnf -y install mariadb-devel Running transaction check Transaction check succeeded. Running transaction test The downloaded packages were saved in cache until the next successful transaction. You can remove cached packages by executing 'dnf clean packages'. Error: Transaction test error: file /usr/lib64/libmariadb.so.3 conflicts between attempted installs of MariaDB-shared-10.4.12-1.el8.x86_64 and mariadb-connector-c-3.0.7-1.el8.x86_64 EDIT: same issue with 10.3...? 10.3 was first released on 2017-04-16 - i get the feeling that mariadb-connector-c is not maintained anymore?

            Hi edwardsmarkf,

            I had to work around the problem like this:

            1.) Check installed packages:

            $ sudo rpm -qa | grep -i mariadb
            mariadb-connector-c-devel-3.0.7-1.el8.x86_64
            mariadb-connector-c-3.0.7-1.el8.x86_64
            mariadb-connector-c-config-3.0.7-1.el8.noarch
            

            2.) Try to install the MariaDB Connector/C packages from MariaDB's repo, and it fails:

            $ sudo yum install MariaDB-shared MariaDB-devel
            Last metadata expiration check: 0:13:18 ago on Wed 19 Aug 2020 07:06:45 PM UTC.
            Error: 
             Problem: problem with installed package mariadb-connector-c-devel-3.0.7-1.el8.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-shared-10.5.5_3-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_3-1.el8.x86_64 obsoletes mariadb-connector-c provided by mariadb-connector-c-3.0.7-1.el8.i686
              - conflicting requests
            (try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)
            

            3.) Remove the 3 mariadb-connector-c* packages from the standard RHEL/CentOS 8 repo:

            $ sudo yum remove mariadb-connector-c mariadb-connector-c-config mariadb-connector-c-devel
            

            4.) Try again to install the MariaDB Connector/C packages from MariaDB's repo, and it succeeds this time:

            $ sudo yum install MariaDB-shared MariaDB-devel
            

            GeoffMontee Geoff Montee (Inactive) added a comment - Hi edwardsmarkf , I had to work around the problem like this: 1.) Check installed packages: $ sudo rpm -qa | grep -i mariadb mariadb-connector-c-devel-3.0.7-1.el8.x86_64 mariadb-connector-c-3.0.7-1.el8.x86_64 mariadb-connector-c-config-3.0.7-1.el8.noarch 2.) Try to install the MariaDB Connector/C packages from MariaDB's repo, and it fails: $ sudo yum install MariaDB-shared MariaDB-devel Last metadata expiration check: 0:13:18 ago on Wed 19 Aug 2020 07:06:45 PM UTC. Error: Problem: problem with installed package mariadb-connector-c-devel-3.0.7-1.el8.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-shared-10.5.5_3-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_3-1.el8.x86_64 obsoletes mariadb-connector-c provided by mariadb-connector-c-3.0.7-1.el8.i686 - conflicting requests (try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages) 3.) Remove the 3 mariadb-connector-c* packages from the standard RHEL/CentOS 8 repo: $ sudo yum remove mariadb-connector-c mariadb-connector-c-config mariadb-connector-c-devel 4.) Try again to install the MariaDB Connector/C packages from MariaDB's repo, and it succeeds this time: $ sudo yum install MariaDB-shared MariaDB-devel

            than you Geoff - here is what i see now:

            1. sudo yum install MariaDB-shared MariaDB-devel
              Last metadata expiration check: 0:18:08 ago on Wed 19 Aug 2020 07:28:18 PM
              UTC.
              All matches were filtered out by modular filtering for argument:
              MariaDB-devel
            • Maybe you meant: mariadb-devel
              Error: Unable to find a match: MariaDB-devel

            Thank you,

            Mark Edwards

            On Wed, Aug 19, 2020 at 12:25 PM Geoff Montee (Jira) <jira@mariadb.org>

            edwardsmarkf mark f edwards added a comment - than you Geoff - here is what i see now: sudo yum install MariaDB-shared MariaDB-devel Last metadata expiration check: 0:18:08 ago on Wed 19 Aug 2020 07:28:18 PM UTC. All matches were filtered out by modular filtering for argument: MariaDB-devel Maybe you meant: mariadb-devel Error: Unable to find a match: MariaDB-devel Thank you, Mark Edwards On Wed, Aug 19, 2020 at 12:25 PM Geoff Montee (Jira) <jira@mariadb.org>

            Hi edwardsmarkf,

            That's odd. I don't know why that error would occur for you, but it wouldn't occur for me. Did you recently configure your MariaDB repository, or has it been configured for a while? If your repository configuration is too old, then I wonder if you could be hitting MDEV-20673, which was fixed by changing our mariadb_repo_setup script a while ago.

            If that is your problem, then it may help to run the mariadb_repo_setup script to reconfigure your repository, as explained here: https://mariadb.com/kb/en/mariadb-package-repository-setup-and-usage/

            e.g.:

            curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup |
                sudo bash -s -- --mariadb-server-version="mariadb-10.5"
            

            GeoffMontee Geoff Montee (Inactive) added a comment - Hi edwardsmarkf , That's odd. I don't know why that error would occur for you, but it wouldn't occur for me. Did you recently configure your MariaDB repository, or has it been configured for a while? If your repository configuration is too old, then I wonder if you could be hitting MDEV-20673 , which was fixed by changing our mariadb_repo_setup script a while ago. If that is your problem, then it may help to run the mariadb_repo_setup script to reconfigure your repository, as explained here: https://mariadb.com/kb/en/mariadb-package-repository-setup-and-usage/ e.g.: curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s -- --mariadb-server-version="mariadb-10.5"
            danblack Daniel Black made changes -
            Fix Version/s 10.3 [ 22126 ]
            Fix Version/s 10.4 [ 22408 ]
            Fix Version/s 10.5 [ 23123 ]
            danblack Daniel Black made changes -
            Labels not-10.1 not-10.2
            elenst Elena Stepanova made changes -
            Assignee Sergei Golubchik [ serg ] Alexey Bychko [ abychko ]
            serg Sergei Golubchik made changes -
            serg Sergei Golubchik made changes -
            Component/s Platform RedHat [ 11302 ]
            serg Sergei Golubchik made changes -
            Status Open [ 1 ] Confirmed [ 10101 ]
            serg Sergei Golubchik made changes -

            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
            abychko Alexey Bychko (Inactive) made changes -
            issue.field.resolutiondate 2021-09-21 09:40:04.0 2021-09-21 09:40:04.671
            abychko Alexey Bychko (Inactive) made changes -
            Fix Version/s 10.3.32 [ 26029 ]
            Fix Version/s 10.4.22 [ 26031 ]
            Fix Version/s 10.5.13 [ 26026 ]
            Fix Version/s 10.3 [ 22126 ]
            Fix Version/s 10.4 [ 22408 ]
            Fix Version/s 10.5 [ 23123 ]
            Resolution Fixed [ 1 ]
            Status Confirmed [ 10101 ] Closed [ 6 ]

            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>
            serg Sergei Golubchik made changes -
            Workflow MariaDB v3 [ 112619 ] MariaDB v4 [ 158257 ]

            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.