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

Centos7 x86_64 rpm appears to have been built with the Centos 6 RPM template causing Systemd related files to not be included.

    XMLWordPrintable

Details

    Description

      1. Detailed Explanation

      The Centos7 x86_64 RPM for MariaDB-server does not contain the systemd related files leading to systemd using the systemd-sysv-generator to create the service file on the fly from the packages init.d script. You can see below in the example where systemd is loading the init script.

      [root@srv01 mariadb]# systemctl status mysql
      ● mysql.service - LSB: start and stop MySQL
         Loaded: loaded (/etc/rc.d/init.d/mysql; bad; vendor preset: disabled)
         Active: active (exited) since Sun 2017-09-03 03:56:48 PKT; 5 days ago
           Docs: man:systemd-sysv-generator(8)
      

      Below are the contents of the Centos7-amd64 RPM

      [root@srv01 mariadb]# rpm2cpio https://downloads.mariadb.com/MariaDB/mariadb-10.0.32/yum/centos7-amd64/rpms/MariaDB-10.0.32-centos7-x86_64-server.rpm | cpio -tmdv
      -rwxr-xr-x   1 root     root        11496 Aug  4 09:40 ./etc/init.d/mysql
      -rw-r--r--   1 root     root          868 Aug  4 09:40 ./etc/logrotate.d/mysql
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./etc/my.cnf.d
      -rw-r--r--   1 root     root          725 Aug  4 09:36 ./etc/my.cnf.d/server.cnf
      -rw-r--r--   1 root     root          285 Aug  4 09:36 ./etc/my.cnf.d/tokudb.cnf
      -rwxr-xr-x   1 root     root      4366629 Aug  4 10:23 ./usr/bin/aria_chk
      -rwxr-xr-x   1 root     root      4158428 Aug  4 10:23 ./usr/bin/aria_dump_log
      -rwxr-xr-x   1 root     root      4171835 Aug  4 10:23 ./usr/bin/aria_ftdump
      -rwxr-xr-x   1 root     root      4198560 Aug  4 10:23 ./usr/bin/aria_pack
      -rwxr-xr-x   1 root     root      4324593 Aug  4 10:23 ./usr/bin/aria_read_log
      -rwxr-xr-x   1 root     root      3311776 Aug  4 10:23 ./usr/bin/innochecksum
      -rwxr-xr-x   1 root     root      3301670 Aug  4 10:23 ./usr/bin/my_print_defaults
      -rwxr-xr-x   1 root     root      3675203 Aug  4 10:23 ./usr/bin/myisam_ftdump
      -rwxr-xr-x   1 root     root      3794391 Aug  4 10:23 ./usr/bin/myisamchk
      -rwxr-xr-x   1 root     root      3655940 Aug  4 10:23 ./usr/bin/myisamlog
      -rwxr-xr-x   1 root     root      3701972 Aug  4 10:23 ./usr/bin/myisampack
      -rwxr-xr-x   1 root     root         4215 Aug  4 09:40 ./usr/bin/mysql_convert_table_format
      -rwxr-xr-x   1 root     root         1246 Aug  4 09:40 ./usr/bin/mysql_fix_extensions
      -rwxr-xr-x   1 root     root        16094 Aug  4 09:40 ./usr/bin/mysql_install_db
      -rwxr-xr-x   1 root     root        12527 Aug  4 09:40 ./usr/bin/mysql_secure_installation
      -rwxr-xr-x   1 root     root        17464 Aug  4 09:40 ./usr/bin/mysql_setpermission
      -rwxr-xr-x   1 root     root      3305331 Aug  4 10:23 ./usr/bin/mysql_tzinfo_to_sql
      -rwxr-xr-x   1 root     root      3422207 Aug  4 10:23 ./usr/bin/mysql_upgrade
      -rwxr-xr-x   1 root     root         3856 Aug  4 09:40 ./usr/bin/mysql_zap
      -rwxr-xr-x   1 root     root        10475 Aug  4 09:40 ./usr/bin/mysqlbug
      -rwxr-xr-x   1 root     root        24113 Aug  4 09:40 ./usr/bin/mysqld_multi
      -rwxr-xr-x   1 root     root        26848 Aug  4 09:40 ./usr/bin/mysqld_safe
      -rwxr-xr-x   1 root     root      3268416 Aug  4 10:23 ./usr/bin/mysqld_safe_helper
      -rwxr-xr-x   1 root     root         7876 Aug  4 09:40 ./usr/bin/mysqldumpslow
      -rwxr-xr-x   1 root     root        34942 Aug  4 09:40 ./usr/bin/mysqlhotcopy
      -rwxr-xr-x   1 root     root      3410735 Aug  4 10:23 ./usr/bin/perror
      -rwxr-xr-x   1 root     root      3281409 Aug  4 10:23 ./usr/bin/replace
      -rwxr-xr-x   1 root     root      3300866 Aug  4 10:23 ./usr/bin/resolve_stack_dump
      -rwxr-xr-x   1 root     root      3300918 Aug  4 10:23 ./usr/bin/resolveip
      -rwxr-xr-x   1 root     root       234205 Aug  4 10:23 ./usr/bin/tokuft_logprint
      -rwxr-xr-x   1 root     root       491600 Aug  4 10:23 ./usr/bin/tokuftdump
      lrwxrwxrwx   1 root     root           15 Aug  4 10:22 ./usr/lib64/libmysqld.so -> libmysqld.so.18
      -rwxr-xr-x   1 root     root     100449767 Aug  4 10:21 ./usr/lib64/libmysqld.so.18
      drwxr-xr-x   3 root     root            0 Aug  4 10:21 ./usr/lib64/mysql
      drwxr-xr-x   2 root     root            0 Aug  4 10:21 ./usr/lib64/mysql/plugin
      -rwxr-xr-x   1 root     root        28515 Aug  4 10:14 ./usr/lib64/mysql/plugin/auth_pam.so
      -rwxr-xr-x   1 root     root        20993 Aug  4 10:14 ./usr/lib64/mysql/plugin/auth_socket.so
      -rwxr-xr-x   1 root     root     21957942 Aug  4 10:09 ./usr/lib64/mysql/plugin/ha_innodb.so
      -rwxr-xr-x   1 root     root     15486199 Aug  4 10:07 ./usr/lib64/mysql/plugin/ha_mroonga.so
      -rwxr-xr-x   1 root     root       250186 Aug  4 10:13 ./usr/lib64/mysql/plugin/ha_sequence.so
      -rwxr-xr-x   1 root     root       848350 Aug  4 10:07 ./usr/lib64/mysql/plugin/ha_sphinx.so
      -rwxr-xr-x   1 root     root      6666525 Aug  4 10:14 ./usr/lib64/mysql/plugin/ha_spider.so
      -rwxr-xr-x   1 root     root     15161697 Aug  4 09:58 ./usr/lib64/mysql/plugin/ha_tokudb.so
      -rwxr-xr-x   1 root     root      2222819 Aug  4 10:14 ./usr/lib64/mysql/plugin/handlersocket.so
      -rwxr-xr-x   1 root     root       182042 Aug  4 10:14 ./usr/lib64/mysql/plugin/locales.so
      -rwxr-xr-x   1 root     root       315294 Aug  4 10:14 ./usr/lib64/mysql/plugin/metadata_lock_info.so
      -rwxr-xr-x   1 root     root       321721 Aug  4 10:14 ./usr/lib64/mysql/plugin/query_cache_info.so
      -rwxr-xr-x   1 root     root       387333 Aug  4 10:14 ./usr/lib64/mysql/plugin/query_response_time.so
      -rwxr-xr-x   1 root     root       747182 Aug  4 10:14 ./usr/lib64/mysql/plugin/semisync_master.so
      -rwxr-xr-x   1 root     root       646479 Aug  4 10:14 ./usr/lib64/mysql/plugin/semisync_slave.so
      -rwxr-xr-x   1 root     root       217663 Aug  4 10:14 ./usr/lib64/mysql/plugin/server_audit.so
      -rwxr-xr-x   1 root     root        29859 Aug  4 10:14 ./usr/lib64/mysql/plugin/sql_errlog.so
      -rwxr-xr-x   1 root     root     16525185 Aug  4 10:23 ./usr/sbin/mysqld
      lrwxrwxrwx   1 root     root           17 Aug  4 10:22 ./usr/sbin/rcmysql -> /etc/init.d/mysql
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/doc/MariaDB-server-10.0.32
      -rw-r--r--   1 root     root        17987 Aug  4 09:36 ./usr/share/doc/MariaDB-server-10.0.32/COPYING
      -rw-r--r--   1 root     root        34520 Aug  4 09:36 ./usr/share/doc/MariaDB-server-10.0.32/COPYING.AGPLv3
      -rw-r--r--   1 root     root        17987 Aug  4 09:36 ./usr/share/doc/MariaDB-server-10.0.32/COPYING.GPLv2
      -rw-r--r--   1 root     root         2275 Aug  4 09:36 ./usr/share/doc/MariaDB-server-10.0.32/CREDITS
      -rw-r--r--   1 root     root         8245 Aug  4 09:36 ./usr/share/doc/MariaDB-server-10.0.32/EXCEPTIONS-CLIENT
      -rw-r--r--   1 root     root         8694 Aug  4 09:36 ./usr/share/doc/MariaDB-server-10.0.32/INSTALL-BINARY
      -rw-r--r--   1 root     root         2211 Aug  4 09:36 ./usr/share/doc/MariaDB-server-10.0.32/PATENTS
      -rw-r--r--   1 root     root        90917 Aug  4 09:36 ./usr/share/doc/MariaDB-server-10.0.32/README
      -rw-r--r--   1 root     root         4442 Aug  4 09:36 ./usr/share/doc/MariaDB-server-10.0.32/README.md
      -rw-r--r--   1 root     root         3139 Aug  4 09:36 ./usr/share/man/man1/aria_chk.1.gz
      -rw-r--r--   1 root     root          726 Aug  4 09:36 ./usr/share/man/man1/aria_dump_log.1.gz
      -rw-r--r--   1 root     root          432 Aug  4 09:36 ./usr/share/man/man1/aria_ftdump.1.gz
      -rw-r--r--   1 root     root         1036 Aug  4 09:36 ./usr/share/man/man1/aria_pack.1.gz
      -rw-r--r--   1 root     root         1448 Aug  4 09:36 ./usr/share/man/man1/aria_read_log.1.gz
      -rw-r--r--   1 root     root         1643 Aug  4 09:36 ./usr/share/man/man1/innochecksum.1.gz
      -rw-r--r--   1 root     root         1905 Aug  4 09:36 ./usr/share/man/man1/my_print_defaults.1.gz
      -rw-r--r--   1 root     root         2009 Aug  4 09:36 ./usr/share/man/man1/myisam_ftdump.1.gz
      -rw-r--r--   1 root     root        13266 Aug  4 09:36 ./usr/share/man/man1/myisamchk.1.gz
      -rw-r--r--   1 root     root         1525 Aug  4 09:36 ./usr/share/man/man1/myisamlog.1.gz
      -rw-r--r--   1 root     root         5176 Aug  4 09:36 ./usr/share/man/man1/myisampack.1.gz
      -rw-r--r--   1 root     root         1819 Aug  4 09:36 ./usr/share/man/man1/mysql.server.1.gz
      -rw-r--r--   1 root     root         1733 Aug  4 09:36 ./usr/share/man/man1/mysql_convert_table_format.1.gz
      -rw-r--r--   1 root     root         1155 Aug  4 09:36 ./usr/share/man/man1/mysql_fix_extensions.1.gz
      -rw-r--r--   1 root     root         2523 Aug  4 09:36 ./usr/share/man/man1/mysql_install_db.1.gz
      -rw-r--r--   1 root     root         1347 Aug  4 09:36 ./usr/share/man/man1/mysql_secure_installation.1.gz
      -rw-r--r--   1 root     root         1660 Aug  4 09:36 ./usr/share/man/man1/mysql_setpermission.1.gz
      -rw-r--r--   1 root     root         1487 Aug  4 09:36 ./usr/share/man/man1/mysql_tzinfo_to_sql.1.gz
      -rw-r--r--   1 root     root         4065 Aug  4 09:36 ./usr/share/man/man1/mysql_upgrade.1.gz
      -rw-r--r--   1 root     root         1379 Aug  4 09:36 ./usr/share/man/man1/mysql_zap.1.gz
      -rw-r--r--   1 root     root         1438 Aug  4 09:36 ./usr/share/man/man1/mysqlbug.1.gz
      -rw-r--r--   1 root     root         4731 Aug  4 09:36 ./usr/share/man/man1/mysqld_multi.1.gz
      -rw-r--r--   1 root     root         4789 Aug  4 09:36 ./usr/share/man/man1/mysqld_safe.1.gz
      -rw-r--r--   1 root     root         1958 Aug  4 09:36 ./usr/share/man/man1/mysqldumpslow.1.gz
      -rw-r--r--   1 root     root         2913 Aug  4 09:36 ./usr/share/man/man1/mysqlhotcopy.1.gz
      -rw-r--r--   1 root     root         4833 Aug  4 09:36 ./usr/share/man/man1/mysqltest.1.gz
      -rw-r--r--   1 root     root         1561 Aug  4 09:36 ./usr/share/man/man1/perror.1.gz
      -rw-r--r--   1 root     root         1586 Aug  4 09:36 ./usr/share/man/man1/replace.1.gz
      -rw-r--r--   1 root     root         1336 Aug  4 09:36 ./usr/share/man/man1/resolve_stack_dump.1.gz
      -rw-r--r--   1 root     root         1174 Aug  4 09:36 ./usr/share/man/man1/resolveip.1.gz
      -rw-r--r--   1 root     root         1355 Aug  4 09:36 ./usr/share/man/man8/mysqld.8.gz
      drwxr-xr-x  26 root     root            0 Aug  4 10:22 ./usr/share/mysql
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/SELinux
      -rw-r--r--   1 root     root          891 Aug  4 10:15 ./usr/share/mysql/SELinux/mariadb.pp
      -rw-r--r--   1 root     root          205 Aug  4 09:36 ./usr/share/mysql/SELinux/mariadb.te
      -rw-r--r--   1 root     root         1399 Aug  4 09:36 ./usr/share/mysql/SELinux/rhel4-mysql.fc
      -rw-r--r--   1 root     root         4317 Aug  4 09:36 ./usr/share/mysql/SELinux/rhel4-mysql.te
      -rwxr-xr-x   1 root     root         1153 Aug  4 09:40 ./usr/share/mysql/binary-configure
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/czech
      -rw-r--r--   1 root     root        62644 Aug  4 09:42 ./usr/share/mysql/czech/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/danish
      -rw-r--r--   1 root     root        62615 Aug  4 09:42 ./usr/share/mysql/danish/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/dutch
      -rw-r--r--   1 root     root        63600 Aug  4 09:42 ./usr/share/mysql/dutch/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/english
      -rw-r--r--   1 root     root        61766 Aug  4 09:42 ./usr/share/mysql/english/errmsg.sys
      -rw-r--r--   1 root     root       499798 Aug  4 09:36 ./usr/share/mysql/errmsg-utf8.txt
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/estonian
      -rw-r--r--   1 root     root        62128 Aug  4 09:42 ./usr/share/mysql/estonian/errmsg.sys
      -rw-r--r--   1 root     root       583827 Aug  4 09:36 ./usr/share/mysql/fill_help_tables.sql
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/french
      -rw-r--r--   1 root     root        63249 Aug  4 09:42 ./usr/share/mysql/french/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/german
      -rw-r--r--   1 root     root        69446 Aug  4 09:42 ./usr/share/mysql/german/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/greek
      -rw-r--r--   1 root     root        68420 Aug  4 09:42 ./usr/share/mysql/greek/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/hungarian
      -rw-r--r--   1 root     root        62507 Aug  4 09:42 ./usr/share/mysql/hungarian/errmsg.sys
      -rw-r--r--   1 root     root        14335 Aug  4 09:36 ./usr/share/mysql/install_spider.sql
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/italian
      -rw-r--r--   1 root     root        63606 Aug  4 09:42 ./usr/share/mysql/italian/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/japanese
      -rw-r--r--   1 root     root        68771 Aug  4 09:42 ./usr/share/mysql/japanese/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/korean
      -rw-r--r--   1 root     root        64848 Aug  4 09:42 ./usr/share/mysql/korean/errmsg.sys
      -rw-r--r--   1 root     root         1328 Aug  4 09:36 ./usr/share/mysql/magic
      -rw-r--r--   1 root     root         4920 Aug  4 09:40 ./usr/share/mysql/my-huge.cnf
      -rw-r--r--   1 root     root        20438 Aug  4 09:40 ./usr/share/mysql/my-innodb-heavy-4G.cnf
      -rw-r--r--   1 root     root         4907 Aug  4 09:40 ./usr/share/mysql/my-large.cnf
      -rw-r--r--   1 root     root         4920 Aug  4 09:40 ./usr/share/mysql/my-medium.cnf
      -rw-r--r--   1 root     root         2846 Aug  4 09:40 ./usr/share/mysql/my-small.cnf
      -rwxr-xr-x   1 root     root          868 Aug  4 09:40 ./usr/share/mysql/mysql-log-rotate
      -rwxr-xr-x   1 root     root        11496 Aug  4 09:40 ./usr/share/mysql/mysql.server
      -rw-r--r--   1 root     root        50256 Aug  4 09:36 ./usr/share/mysql/mysql_performance_tables.sql
      -rw-r--r--   1 root     root        27383 Aug  4 09:36 ./usr/share/mysql/mysql_system_tables.sql
      -rw-r--r--   1 root     root         3452 Aug  4 09:36 ./usr/share/mysql/mysql_system_tables_data.sql
      -rw-r--r--   1 root     root        10411 Aug  4 09:36 ./usr/share/mysql/mysql_test_data_timezone.sql
      -rwxr-xr-x   1 root     root         1061 Aug  4 09:40 ./usr/share/mysql/mysqld_multi.server
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/norwegian
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/norwegian-ny
      -rw-r--r--   1 root     root        61920 Aug  4 09:42 ./usr/share/mysql/norwegian-ny/errmsg.sys
      -rw-r--r--   1 root     root        61873 Aug  4 09:42 ./usr/share/mysql/norwegian/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/polish
      -rw-r--r--   1 root     root        62516 Aug  4 09:42 ./usr/share/mysql/polish/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/portuguese
      -rw-r--r--   1 root     root        64792 Aug  4 09:42 ./usr/share/mysql/portuguese/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/romanian
      -rw-r--r--   1 root     root        63554 Aug  4 09:42 ./usr/share/mysql/romanian/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/russian
      -rw-r--r--   1 root     root        77215 Aug  4 09:42 ./usr/share/mysql/russian/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/serbian
      -rw-r--r--   1 root     root        64250 Aug  4 09:42 ./usr/share/mysql/serbian/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/slovak
      -rw-r--r--   1 root     root        62345 Aug  4 09:42 ./usr/share/mysql/slovak/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/spanish
      -rw-r--r--   1 root     root        63457 Aug  4 09:42 ./usr/share/mysql/spanish/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/swedish
      -rw-r--r--   1 root     root        62704 Aug  4 09:42 ./usr/share/mysql/swedish/errmsg.sys
      drwxr-xr-x   2 root     root            0 Aug  4 10:22 ./usr/share/mysql/ukrainian
      -rw-r--r--   1 root     root        71665 Aug  4 09:42 ./usr/share/mysql/ukrainian/errmsg.sys
      492862 blocks
      

      The files related to systemd(ie. /usr/lib/systemd/system/mariadb.service and /usr/bin/mariadb-service-convert) are not present in the package. Systemd is picking up the slack by using the included /etc/init.d/mysql init script to start and manage the service which has apparently allowed the issue to fly under the radar.

      Out of curiosity, I took a look at the contents of the Centos6-amd64 RPM and it appears that the two contain identical file lists indicating that the build process may have just used the Centos6 RPM template and built it on Centos7.

      [root@srv01 mariadb] diff <(rpm2cpio https://downloads.mariadb.com/MariaDB/mariadb-10.0.32/yum/centos6-amd64/rpms/MariaDB-10.0.32-centos6-x86_64-server.rpm | cpio -tmdv | awk '{print $9}') <(rpm2cpio https://downloads.mariadb.com/MariaDB/mariadb-10.0.32/yum/centos7-amd64/rpms/MariaDB-10.0.32-centos7-x86_64-server.rpm | cpio -tmdv | awk '{print $9}')
      492862 blocks
      504199 blocks
      

      The Centos 7 RPM's should be rebuilt using the correct template so that the necessary systemd files get included as well as any additional files that may be needed on Centos 7 that are not on Centos6.

      Attachments

        Activity

          People

            Unassigned Unassigned
            rigrassm Ricky Grassmuck
            Votes:
            0 Vote for this issue
            Watchers:
            3 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.