Details

    Description

      Reproducible with qemu/libvirt RHEL8 and GCP machines

      git clone https://github.com/MariaDB/server.git
      mv server server_very_long_name_to_avoid_rpm_bug
      cd server_very_long_name_to_avoid_rpm_bug/
      git checkout 10.7
      git submodule update --init --recursive
      cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER=g++ -DPLUGIN_TOKUDB=NO -DPLUGIN_MROONGA=NO -DPLUGIN_SPIDER=NO -DPLUGIN_OQGRAPH=NO -DPLUGIN_PERFSCHEMA=YES -DPLUGIN_SPHINX=NO  -DRPM=ON && make  package
      
      

      [vagrant@default server_very_long_name_to_avoid_rpm_bug]$ sudo rpm -i MariaDB-devel-10.7.7-1.el8.x86_64.rpm MariaDB-shared-10.7.7-1.el8.x86_64.rpm MariaDB-common-10.7.7-1.el8.x86_64.rpm 
      	file /etc/my.cnf from install of MariaDB-common-10.7.7-1.el8.x86_64 conflicts with file from package mariadb-connector-c-config-3.1.11-2.el8_3.noarch
      	file /etc/my.cnf.d from install of MariaDB-shared-10.7.7-1.el8.x86_64 conflicts with file from package mariadb-connector-c-config-3.1.11-2.el8_3.noarch
      	file /usr/lib64/libmariadb.so.3 from install of MariaDB-shared-10.7.7-1.el8.x86_64 conflicts with file from package mariadb-connector-c-3.1.11-2.el8_3.x86_64
      	file /usr/share/man/man3 from install of MariaDB-devel-10.7.7-1.el8.x86_64 conflicts with file from package filesystem-3.8-6.el8.x86_64
      
      

      Does Buildbot machines have a user with root privileges?

      Build with `sudo make package` generate proper packages:

      sudo make package
      sudo rpm -i MariaDB-devel-10.7.7-1.el8.x86_64.rpm MariaDB-shared-10.7.7-1.el8.x86_64.rpm MariaDB-common-10.7.7-1.el8.x86_64.rpm 
      [vagrant@default server_very_long_name_to_avoid_rpm_bug]$ rpm -qa | grep -i maria
      MariaDB-common-10.7.7-1.el8.x86_64
      MariaDB-devel-10.7.7-1.el8.x86_64
      MariaDB-shared-10.7.7-1.el8.x86_64
      
      

      Previously there was the bug MDEV-22813 and fix https://github.com/MariaDB/server/commit/7337abd2f7b0104f2a6c862c1829ac3a034d89a2#diff-b34a4a2b95c6341e79aef8cb1043e66dd672ee00df1382a13582c04e99c08beeR125

      Attachments

        Activity

          I cannot repeat it, please, provide a how-to-repeat procedure

          serg Sergei Golubchik added a comment - I cannot repeat it, please, provide a how-to-repeat procedure

          1. Create an empty machine (I tried with GCP and libvirt/qemu, RHEL8, Rocky Linux 8)

          2. configure additional repos:

          rhel/centos `sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm`
          rocky/alma 9 `sudo dnf config-manager --set-enabled crb`

          3.

          sudo dnf -y groupinstall 'Development Tools'
           
          sudo dnf -y install curl   expect  gdb  git  lsof  net-tools  rsync  socat  sudo  wget  valgrind bison   boost-program-options  boost-devel  bzip2-devel  check-devel  checkpolicy  ccache  clang  cmake  curl-devel  gnutls-devel  java-1.8.0-openjdk  java-1.8.0-openjdk-devel  jemalloc  jemalloc-devel  krb5-devel  libaio  libaio-devel  libasan  libcurl-devel  libevent-devel  libffi-devel  libgcrypt-devel  libpmem-devel  libxml2-devel  lzo-devel  mhash-devel  ncurses-devel  openssl-devel  unixODBC-devel  pam-devel  patch  perl-CPAN  perl-DBD-MySQL  perl-DBI  perl-Time-HiRes  perl-XML-LibXML  perl-XML-Simple  readline-devel  redhat-rpm-config  rpmdevtools  systemd-devel  unixODBC  valgrind-devel  wget  which  yum-utils Judy  cracklib  kernel-headers  lz4-devel  perl-Getopt-Long  perl-Memoize.noarch  policycoreutils python3-devel  python3-pip   redhat-lsb-core
           
          git clone https://github.com/MariaDB/server.git
          mv server server_very_long_name_to_avoid_rpm_bug
          cd server_very_long_name_to_avoid_rpm_bug/
          git checkout 10.7
          git submodule update --init --recursive
           
          cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER=g++ -DPLUGIN_TOKUDB=NO -DPLUGIN_MROONGA=NO -DPLUGIN_SPIDER=NO -DPLUGIN_OQGRAPH=NO -DPLUGIN_PERFSCHEMA=YES -DPLUGIN_SPHINX=NO  -DRPM=ON && make  package
           
          sudo rpm -i MariaDB-devel-10.7.7-1.el8.x86_64.rpm MariaDB-shared-10.7.7-1.el8.x86_64.rpm MariaDB-common-10.7.7-1.el8.x86_64.rpm 
          
          

          tturenko Timofey Turenko added a comment - 1. Create an empty machine (I tried with GCP and libvirt/qemu, RHEL8, Rocky Linux 8) 2. configure additional repos: rhel/centos `sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm ` rocky/alma 9 `sudo dnf config-manager --set-enabled crb` 3. sudo dnf -y groupinstall 'Development Tools'   sudo dnf -y install curl expect gdb git lsof net-tools rsync socat sudo wget valgrind bison boost-program-options boost-devel bzip2-devel check-devel checkpolicy ccache clang cmake curl-devel gnutls-devel java-1.8.0-openjdk java-1.8.0-openjdk-devel jemalloc jemalloc-devel krb5-devel libaio libaio-devel libasan libcurl-devel libevent-devel libffi-devel libgcrypt-devel libpmem-devel libxml2-devel lzo-devel mhash-devel ncurses-devel openssl-devel unixODBC-devel pam-devel patch perl-CPAN perl-DBD-MySQL perl-DBI perl-Time-HiRes perl-XML-LibXML perl-XML-Simple readline-devel redhat-rpm-config rpmdevtools systemd-devel unixODBC valgrind-devel wget which yum-utils Judy cracklib kernel-headers lz4-devel perl-Getopt-Long perl-Memoize.noarch policycoreutils python3-devel python3-pip redhat-lsb-core   git clone https://github.com/MariaDB/server.git mv server server_very_long_name_to_avoid_rpm_bug cd server_very_long_name_to_avoid_rpm_bug/ git checkout 10.7 git submodule update --init --recursive   cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER=g++ -DPLUGIN_TOKUDB=NO -DPLUGIN_MROONGA=NO -DPLUGIN_SPIDER=NO -DPLUGIN_OQGRAPH=NO -DPLUGIN_PERFSCHEMA=YES -DPLUGIN_SPHINX=NO -DRPM=ON && make package   sudo rpm -i MariaDB-devel-10.7.7-1.el8.x86_64.rpm MariaDB-shared-10.7.7-1.el8.x86_64.rpm MariaDB-common-10.7.7-1.el8.x86_64.rpm

          When you build RPM packages, you should take the correct command line from the knowledge base (e.g. https://mariadb.com/kb/en/building-rpm-packages-from-source/) or from an actually working build (e.g. https://buildbot.askmonty.org/buildbot/builders/kvm-rpm-rocky84-amd64/builds/2434/steps/compile/logs/stdio).

          In particular, -DRM=ON builds packages for the Linux distribution "ON", whatever it is. If you want packages that work on Rocky 8, you need to specify -DRPM=rocky8.

          That won't make your rpm -i to work, because rpm doesn't resolve dependencies. It'll say

          error: Failed dependencies:
                  mariadb-connector-c is obsoleted by MariaDB-shared-10.7.8-1.el8.x86_64
                  mariadb-connector-c-config is obsoleted by MariaDB-shared-10.7.8-1.el8.x86_64
          

          But if you'll use dnf, it'll work:

          ================================================================================
           Package              Architecture Version             Repository          Size
          ================================================================================
          Installing:
           MariaDB-common       x86_64       10.7.8-1.el8        @commandline        90 k
           MariaDB-devel        x86_64       10.7.8-1.el8        @commandline       1.4 M
           MariaDB-shared       x86_64       10.7.8-1.el8        @commandline       125 k
               replacing  mariadb-connector-c.x86_64 3.1.11-2.el8_3
               replacing  mariadb-connector-c-config.noarch 3.1.11-2.el8_3
           
          Transaction Summary
          ================================================================================
          Install  3 Packages
          

          serg Sergei Golubchik added a comment - When you build RPM packages, you should take the correct command line from the knowledge base (e.g. https://mariadb.com/kb/en/building-rpm-packages-from-source/ ) or from an actually working build (e.g. https://buildbot.askmonty.org/buildbot/builders/kvm-rpm-rocky84-amd64/builds/2434/steps/compile/logs/stdio ). In particular, -DRM=ON builds packages for the Linux distribution "ON", whatever it is. If you want packages that work on Rocky 8, you need to specify -DRPM=rocky8 . That won't make your rpm -i to work, because rpm doesn't resolve dependencies. It'll say error: Failed dependencies: mariadb-connector-c is obsoleted by MariaDB-shared-10.7.8-1.el8.x86_64 mariadb-connector-c-config is obsoleted by MariaDB-shared-10.7.8-1.el8.x86_64 But if you'll use dnf , it'll work: ================================================================================ Package Architecture Version Repository Size ================================================================================ Installing: MariaDB-common x86_64 10.7.8-1.el8 @commandline 90 k MariaDB-devel x86_64 10.7.8-1.el8 @commandline 1.4 M MariaDB-shared x86_64 10.7.8-1.el8 @commandline 125 k replacing mariadb-connector-c.x86_64 3.1.11-2.el8_3 replacing mariadb-connector-c-config.noarch 3.1.11-2.el8_3   Transaction Summary ================================================================================ Install 3 Packages

          People

            serg Sergei Golubchik
            tturenko Timofey Turenko
            Votes:
            0 Vote for this issue
            Watchers:
            2 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.