Hello community, here is the log from the commit of package mysql-community-server for openSUSE:Factory checked in at 2016-10-31 09:56:14 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mysql-community-server (Old) and /work/SRC/openSUSE:Factory/.mysql-community-server.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "mysql-community-server" Changes: -------- --- /work/SRC/openSUSE:Factory/mysql-community-server/mysql-community-server.changes 2016-04-30 23:31:10.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.mysql-community-server.new/mysql-community-server.changes 2016-10-31 09:56:16.000000000 +0100 @@ -1,0 +2,46 @@ +Mon Oct 24 19:08:22 UTC 2016 - kstreitova@suse.com + +- update to 5.6.34 + * changes + http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-34.html + http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-33.html + http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-32.html + http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-31.html + * fixed CVEs: + CVE-2016-6304, CVE-2016-6662, CVE-2016-7440, CVE-2016-5584, + CVE-2016-5617, CVE-2016-5616, CVE-2016-5626, CVE-2016-3492, + CVE-2016-5629, CVE-2016-5507, CVE-2016-8283, CVE-2016-5609, + CVE-2016-5612, CVE-2016-5627, CVE-2016-5630, CVE-2016-8284, + CVE-2016-8288, CVE-2016-3477, CVE-2016-2105, CVE-2016-3486, + CVE-2016-3501, CVE-2016-3521, CVE-2016-3615, CVE-2016-3614, + CVE-2016-3459, CVE-2016-5439, CVE-2016-5440 + * fix + [bsc#999666], [bsc#998309], [bsc#1005581], [bsc#1005558], + [bsc#1005563], [bsc#1005562], [bsc#1005566], [bsc#1005555], + [bsc#1005569], [bsc#1005557], [bsc#1005582], [bsc#1005560], + [bsc#1005561], [bsc#1005567], [bsc#1005570], [bsc#1005583], + [bsc#1005586], [bsc#989913], [bsc#977614], [bsc#989914], + [bsc#989915], [bsc#989919], [bsc#989922], [bsc#989921], + [bsc#989911], [bsc#989925], [bsc#989926] + * refresh mysql-community-server-5.6.10-group.patch +- requires devel packages for aio and lzo2 +- append "--ignore-db-dir=lost+found" to the mysqld options in + "mysql-systemd-helper" script if "lost+found" directory is found + in $datadir [bnc#986251] +- remove syslog.target from *.service files [bsc#983938] +- add BuildRequires: systemd-devel +- make some dependecies switchable +- add systemd to deps to build on leap and friends +- replace '%{_libexecdir}/systemd/system' with %{_unitdir} macro +- remove useless mysql@default.service [bsc#971456] +- replace all occurrences of the string "@sysconfdir@" with "/etc" in + mysql-community-server-5.6.3-logrotate.patch as it wasn't expanded + properly [bsc#990890] +- remove '%define _rundir' as 13.1 is out of support scope +- run 'usermod -g mysql mysql' only if mysql user is not in mysql group. + Run 'usermod -s /bin/false/ mysql' only if mysql user doesn't have + '/bin/false' shell set. +- re-enable mysql profiling +- fix constraints conditions for 32bit architectures + +------------------------------------------------------------------- Old: ---- mysql-5.6.30.tar.gz New: ---- mysql-5.6.34.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mysql-community-server.spec ++++++ --- /var/tmp/diff_new_pack.EVIJN7/_old 2016-10-31 09:56:20.000000000 +0100 +++ /var/tmp/diff_new_pack.EVIJN7/_new 2016-10-31 09:56:20.000000000 +0100 @@ -26,14 +26,11 @@ %define preferred 0 %define builtin_plugins partition,csv,heap,myisam,innobase %define extra_provides mysql-community-server_56 -%define with_mandatory_boost 0 +%define with_mandatory_lz4 0 +%define build_readline 0 %define build_extras 0 # _tmpfilesdir is not defined in systemd macros up to openSUSE 13.2 %{!?_tmpfilesdir: %global _tmpfilesdir %{_libexecdir}/tmpfiles.d } -# Remove when 13.1 is out of support scope -%if ! %{defined _rundir} -%define _rundir %{_localstatedir}/run -%endif %if 0%{build_extras} > 0 %define with_jemalloc 1 #temporarily disable OQGraph (see MDEV-9479) @@ -46,7 +43,7 @@ %define with_cassandra 0 %endif Name: mysql-community-server -Version: 5.6.30 +Version: 5.6.34 Release: 0 Summary: Server part of %{pretty_name} License: SUSE-GPL-2.0-with-FLOSS-exception @@ -102,7 +99,10 @@ BuildRequires: tcpd-devel BuildRequires: time BuildRequires: zlib-devel -BuildRequires: pkgconfig(systemd) +# pkgconfig(systemd) on most versions is in systemd main pkg, remove +# after oldest supported is Leap 43 +BuildRequires: systemd +BuildRequires: systemd-devel # required by rcmysql Requires: %{name}-client Requires: %{name}-errormessages = %{version} @@ -129,19 +129,21 @@ Obsoletes: %{extra_provides}-debug-version < %{version} BuildRoot: %{_tmppath}/%{name}-%{version}-build %{?systemd_requires} +%if 0%{with_mandatory_lz4} > 0 +# Dependency introduced in 5.7 mysql +BuildRequires: liblz4-devel +%endif # On mariadb we want readline5 (except for SLE12) and on mysql we use libedit from system -%if ("%{name}" == "mariadb" ) && ! (( 0%{?suse_version} == 1315 ) && ( ! 0%{?is_opensuse} )) +%if 0%{build_readline} > 0 && ! (( 0%{?suse_version} == 1315 ) && ( ! 0%{?is_opensuse} )) BuildRequires: readline5-devel %else BuildRequires: libedit-devel %endif -%if 0%{with_mandatory_boost} > 0 -BuildRequires: boost-devel >= 1.57.0 -%endif %if 0%{with_oqgraph} > 0 || 0%{with_cassandra} > 0 BuildRequires: boost-devel %endif -%if 0%{with_jemalloc} > 0 +# Build with jemalloc even for mariadb-100 to enable TokuDB there (bnc#970287) +%if 0%{with_jemalloc} > 0 || "%{extra_provides}" == "mariadb_100" BuildRequires: jemalloc-devel %endif %if 0%{with_oqgraph} > 0 @@ -184,8 +186,10 @@ Summary: %{pretty_name} development header files and libraries Group: Development/Libraries/C and C++ Requires: glibc-devel +Requires: libaio-devel Requires: libmysqlclient%{soname} = %{version} Requires: libmysqlclient_r%{soname} = %{version} +Requires: lzo-devel Requires: zlib-devel Requires: pkgconfig(libssl) # mysql-devel needs to be provided as some pkgs still depend on it @@ -359,6 +363,7 @@ sed -i 's|mysqlclient|%{libname}|g' $i sed -i 's|-lib%{libname}-symbols.patch|-libmysqlclient-symbols.patch|g' $i done +mv scripts/mysqlclient.pc.in scripts/%{libname}.pc.in || continue %endif # Broken test that needs sources rm -f mysql-test/t/file_contents.test mysql-test/r/file_contents.result @@ -376,7 +381,7 @@ %cmake -DWITH_SSL=system \ -DWITH_ASAN=OFF \ -DWITH_LIBWRAP=ON \ - -DENABLED_PROFILING=OFF \ + -DENABLED_PROFILING=ON \ -DENABLE_DEBUG_SYNC=OFF \ -DWITH_PIC=ON \ -DWITH_ZLIB=system \ @@ -386,10 +391,12 @@ -DWITH_LIBEDIT=0 \ -DWITH_EDITLINE=system \ -DINSTALL_LAYOUT=RPM \ + -DWITH_SYSTEMD=ON \ + -DWITH_LZ4=system \ -DMYSQL_UNIX_ADDR="%{_localstatedir}/run/mysql/mysql.sock" \ -DINSTALL_UNIX_ADDRDIR="%{_localstatedir}/run/mysql/mysql.sock" \ -DINSTALL_MYSQLSHAREDIR=share/%{name} \ - -DWITH_COMMENT="openSUSE MySQL rpm" \ + -DWITH_COMMENT="openSUSE mysql-community-server rpm" \ -DWITH_EXTRA_CHARSET=all \ -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ @@ -403,9 +410,11 @@ -DWITH_XTRADB_STORAGE_ENGINE=1 \ -DWITH_CSV_STORAGE_ENGINE=1 \ -DWITH_HANDLERSOCKET_STORAGE_ENGINE=1 \ + -DWITH_INNODB_MEMCACHED=ON \ -DWITH_EMBEDDED_SERVER=true \ -DWITH_WSREP=ON \ -DWITH_INNODB_DISALLOW_WRITES=1 \ + -DWITH_BOOST=../boost/ \ -DCOMPILATION_COMMENT="openSUSE package" \ -DDENABLE_DOWNLOADS=false \ -DINSTALL_PLUGINDIR_RPM="%{_lib}/mysql/plugin" \ @@ -469,9 +478,6 @@ install -p -m 644 build/Docs/INFO_SRC %{buildroot}%{_libdir}/mysql/ install -p -m 644 build/Docs/INFO_BIN %{buildroot}%{_libdir}/mysql/ -# Remove handler socket client -rm -f %{buildroot}%{_libdir}/mysql/plugin/handlersocket.so - # Remove debug management for keys Mariadb 101+ rm -f %{buildroot}%{_libdir}/mysql/plugin/debug_key_management.so @@ -491,9 +497,9 @@ # Remove unused services for mariadb_101 %if "%{extra_provides}" == "mariadb_101" -rm -f %{buildroot}'%{_libexecdir}/systemd/system/mariadb.service' -rm -f %{buildroot}'%{_libexecdir}/systemd/system/mariadb@.service' -rm -f %{buildroot}'%{_libexecdir}/systemd/system/mariadb@bootstrap.service.d/use_galera_new_cluster.conf' +rm -f %{buildroot}'%{_unitdir}/mariadb.service' +rm -f %{buildroot}'%{_unitdir}/mariadb@.service' +rm -f %{buildroot}'%{_unitdir}/mariadb@bootstrap.service.d/use_galera_new_cluster.conf' %endif # Generate various filelists @@ -563,10 +569,9 @@ install -D -m 755 %{_sourcedir}/mysql-systemd-helper '%{buildroot}'%{_libexecdir}/mysql/mysql-systemd-helper sed -i 's|@MYSQLVER@|%{version}|' '%{buildroot}'%{_libexecdir}/mysql/mysql-systemd-helper ln -sf service '%{buildroot}'%{_sbindir}/rcmysql -install -D -m 644 %{_sourcedir}/mysql.service '%{buildroot}'%{_libexecdir}/systemd/system/mysql.service -install -D -m 644 %{_sourcedir}/mysql@.service '%{buildroot}'%{_libexecdir}/systemd/system/mysql@.service -install -D -m 644 %{_sourcedir}/mysql.target '%{buildroot}'%{_libexecdir}/systemd/system/mysql.target -ln -s mysql@.service '%{buildroot}'%{_libexecdir}/systemd/system/mysql@default.service +install -D -m 644 %{_sourcedir}/mysql.service '%{buildroot}'%{_unitdir}/mysql.service +install -D -m 644 %{_sourcedir}/mysql@.service '%{buildroot}'%{_unitdir}/mysql@.service +install -D -m 644 %{_sourcedir}/mysql.target '%{buildroot}'%{_unitdir}/mysql.target rm -rf '%{buildroot}'%{_sysconfdir}/init.d # Tmpfiles file to exclude mysql tempfiles that are auto-cleaned up @@ -660,19 +665,23 @@ getent group mysql >/dev/null || groupadd -r mysql getent passwd mysql >/dev/null || useradd -r -o -g mysql -u 60 -c "MySQL database admin" \ -s /bin/false -d %{_localstatedir}/lib/mysql mysql -usermod -g mysql -s /bin/false mysql +# if mysql user is not in mysql group or if mysql user doesn't have '/bin/false' shell set, do so +id -Gn mysql | grep '\bmysql\b' &>/dev/null || usermod -g mysql mysql +getent passwd mysql | cut -d: -f7 | grep '\b/bin/false\b' &>/dev/null || usermod -s /bin/false mysql exit 0 %pre getent group mysql >/dev/null || groupadd -r mysql getent passwd mysql >/dev/null || useradd -r -o -g mysql -u 60 -c "MySQL database admin" \ -s /bin/false -d %{_localstatedir}/lib/mysql mysql -usermod -g mysql -s /bin/false mysql +# if mysql user is not in mysql group or if mysql user doesn't have '/bin/false' shell set, do so +id -Gn mysql | grep '\bmysql\b' &>/dev/null || usermod -g mysql mysql +getent passwd mysql | cut -d: -f7 | grep '\b/bin/false\b' &>/dev/null || usermod -s /bin/false mysql -%service_add_pre mysql.service mysql@.service mysql.target mysql@default.service +%service_add_pre mysql.service %post -%service_add_post mysql.service mysql@.service mysql.target mysql@default.service +%service_add_post mysql.service # Use %%tmpfiles_create when 13.2 is oldest in support scope %{_bindir}/systemd-tmpfiles --create %{_tmpfilesdir}/mysql.conf || : @@ -731,10 +740,10 @@ exit 0 %preun -%service_del_preun mysql.service mysql@.service mysql.target mysql@default.service +%service_del_preun mysql.service %postun -%service_del_postun mysql.service mysql@.service mysql.target mysql@default.service +%service_del_postun mysql.service # Remove the /var/adm updatemsg that was hand-created and thus not on filelist rm -f %{_localstatedir}/adm/update-messages/%{name}-%{version}-%{release} @@ -762,10 +771,9 @@ %dir %{_libexecdir}/mysql %dir %attr(0700, mysql, mysql) %{_localstatedir}/log/mysql %{_libexecdir}/mysql/mysql-systemd-helper -%{_libexecdir}/systemd/system/mysql.service -%{_libexecdir}/systemd/system/mysql@.service -%{_libexecdir}/systemd/system/mysql@default.service -%{_libexecdir}/systemd/system/mysql.target +%{_unitdir}/mysql.service +%{_unitdir}/mysql@.service +%{_unitdir}/mysql.target %{_tmpfilesdir}/mysql.conf %{_sbindir}/rcmysql %dir %{_datadir}/%{name} @@ -784,6 +792,7 @@ # Pack files for mariadb_101 %if "%{extra_provides}" == "mariadb_101" %{_bindir}/galera_new_cluster +%{_bindir}/galera_recovery %{_bindir}/mariadb-service-convert %dir %{_datadir}/mysql/policy %dir %{_datadir}/mysql/policy/apparmor ++++++ _constraints ++++++ --- /var/tmp/diff_new_pack.EVIJN7/_old 2016-10-31 09:56:20.000000000 +0100 +++ /var/tmp/diff_new_pack.EVIJN7/_new 2016-10-31 09:56:20.000000000 +0100 @@ -1,11 +1,23 @@ <constraints> - <hardware> - <physicalmemory> - <size unit="M">5000</size> - </physicalmemory> - <disk> - <size unit="G">13</size> - </disk> - </hardware> -</constraints> + <overwrite> + <conditions> + <arch>i586</arch> + <arch>x86_64</arch> + <arch>ppc64le</arch> + </conditions> + <hardware> + <physicalmemory> + <size unit="M">5000</size> + </physicalmemory> + </hardware> + </overwrite> + <overwrite> + <conditions/> + <hardware> + <disk> + <size unit="G">13</size> + </disk> + </hardware> + </overwrite> +</constraints> ++++++ configuration-tweaks.tar.bz2 ++++++ ++++++ mysql-5.6.30.tar.gz -> mysql-5.6.34.tar.gz ++++++ /work/SRC/openSUSE:Factory/mysql-community-server/mysql-5.6.30.tar.gz /work/SRC/openSUSE:Factory/.mysql-community-server.new/mysql-5.6.34.tar.gz differ: char 5, line 1 ++++++ mysql-patches.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/mysql-patches/mysql-community-server-5.6.10-group.patch new/mysql-patches/mysql-patches/mysql-community-server-5.6.10-group.patch --- old/mysql-patches/mysql-patches/mysql-community-server-5.6.10-group.patch 2015-06-16 13:03:35.000000000 +0200 +++ new/mysql-patches/mysql-patches/mysql-community-server-5.6.10-group.patch 2016-09-26 18:44:21.000000000 +0200 @@ -25,14 +25,14 @@ # these might have been set in a [mysqld_safe] section of my.cnf # they are added to mysqld command line to override settings from my.cnf -@@ -592,11 +594,17 @@ then +@@ -597,11 +599,17 @@ then if test "$user" != "root" -o $SET_USER = 1 then USER_OPTION="--user=$user" + GROUP_OPTION="--group=$group" fi # Change the err log to the right user, if it is in use - if [ $want_syslog -eq 0 ]; then + if [ $want_syslog -eq 0 -a ! -h "$err_log" ]; then touch "$err_log" - chown $user "$err_log" + if [ "$user" -a "$group" ]; then @@ -44,20 +44,20 @@ fi if test -n "$open_files" then -@@ -615,7 +623,12 @@ mysql_unix_port_dir=`dirname $safe_mysql - if [ ! -d $mysql_unix_port_dir ] +@@ -621,7 +629,12 @@ if [ ! -d $mysql_unix_port_dir ] then - mkdir $mysql_unix_port_dir -- chown $user $mysql_unix_port_dir -+ if [ "$user" -a "$group" ]; then -+ chown $user:$group $mysql_unix_port_dir -+ else -+ [ "$user" ] && chown $user $mysql_unix_port_dir -+ [ "$group" ] && chgrp $group $mysql_unix_port_dir -+ fi - chmod 755 $mysql_unix_port_dir + if [ ! -h $mysql_unix_port_dir ]; then + mkdir $mysql_unix_port_dir +- chown $user $mysql_unix_port_dir ++ if [ "$user" -a "$group" ]; then ++ chown $user:$group $mysql_unix_port_dir ++ else ++ [ "$user" ] && chown $user $mysql_unix_port_dir ++ [ "$group" ] && chgrp $group $mysql_unix_port_dir ++ fi + chmod 755 $mysql_unix_port_dir + fi fi - Index: scripts/mysql_install_db.sh =================================================================== --- scripts/mysql_install_db.sh.orig @@ -126,7 +126,7 @@ =================================================================== --- scripts/CMakeLists.txt.orig +++ scripts/CMakeLists.txt -@@ -138,6 +138,7 @@ ENDIF() +@@ -161,6 +161,7 @@ ENDIF() SET(HOSTNAME "hostname") SET(MYSQLD_USER "mysql") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/mysql-patches/mysql-community-server-5.6.3-logrotate.patch new/mysql-patches/mysql-patches/mysql-community-server-5.6.3-logrotate.patch --- old/mysql-patches/mysql-patches/mysql-community-server-5.6.3-logrotate.patch 2015-06-16 13:03:35.000000000 +0200 +++ new/mysql-patches/mysql-patches/mysql-community-server-5.6.3-logrotate.patch 2016-10-17 19:42:19.000000000 +0200 @@ -25,9 +25,9 @@ + ret=$? + if test $ret -ne 0 + then -+ echo "@sysconfdir@/logrotate.d/mysql failed, probably because" >&2 ++ echo "/etc/logrotate.d/mysql failed, probably because" >&2 + echo "the root acount is protected by password." >&2 -+ echo "See comments in @sysconfdir@/logrotate.d/mysql on how to fix this" >&2 ++ echo "See comments in /etc/logrotate.d/mysql on how to fix this" >&2 + exit $ret + fi fi ++++++ mysql-systemd-helper ++++++ --- /var/tmp/diff_new_pack.EVIJN7/_old 2016-10-31 09:56:20.000000000 +0100 +++ /var/tmp/diff_new_pack.EVIJN7/_new 2016-10-31 09:56:20.000000000 +0100 @@ -10,7 +10,7 @@ MYSQLVER="$(echo @MYSQLVER@ | sed 's|\.[0-9]\+$||')" mysql_daemon_user=mysql mysql_daemon_group=mysql - if [[ -z "$INSTANCE" || "x$INSTANCE" = "xdefault" ]]; then + if [[ -z "$INSTANCE" ]]; then datadir=/var/lib/mysql socket="/var/run/mysql/mysql.sock" else @@ -19,7 +19,7 @@ fi # Read options - important for multi setup - if [[ -n "$INSTANCE" && "x$INSTANCE" != "xdefault" ]]; then + if [[ -n "$INSTANCE" ]]; then opts="$(/usr/bin/my_print_defaults mysqld mysqld_multi "$INSTANCE")" tmp_opts="$opts" config="/etc/my${INSTANCE}.cnf" @@ -38,6 +38,14 @@ --user=*) mysql_daemon_user="$(echo "$arg" | sed -e 's/^[^=]*=//')" ;; esac done + + # work-around for lost+found directory in $datadir (bug #986251) + if [ -d "$datadir/lost+found" ] + then + ignore_db_dir="--ignore-db-dir=lost+found" + else + ignore_db_dir="" + fi } # Create new empty database if needed @@ -93,6 +101,7 @@ --user="$mysql_daemon_user" \ --skip-networking \ --skip-grant-tables \ + $ignore_db_dir \ --log-error="$protected/log_upgrade_run" \ --socket="$protected/mysql.sock" \ --pid-file="$protected/mysqld.pid" & @@ -151,6 +160,7 @@ mysql_start() { exec /usr/sbin/mysqld \ --defaults-file="$config" \ + $ignore_db_dir \ --user="$mysql_daemon_user" } ++++++ mysql.service ++++++ --- /var/tmp/diff_new_pack.EVIJN7/_old 2016-10-31 09:56:20.000000000 +0100 +++ /var/tmp/diff_new_pack.EVIJN7/_new 2016-10-31 09:56:20.000000000 +0100 @@ -1,16 +1,16 @@ [Unit] Description=MySQL server Wants=basic.target -Conflicts=mysql.target mysql@default.service -After=basic.target network.target syslog.target +Conflicts=mysql.target +After=basic.target network.target [Service] Restart=on-failure Type=simple -ExecStartPre=/usr/lib/mysql/mysql-systemd-helper install default -ExecStartPre=/usr/lib/mysql/mysql-systemd-helper upgrade default -ExecStart=/usr/lib/mysql/mysql-systemd-helper start default -ExecStartPost=/usr/lib/mysql/mysql-systemd-helper wait default +ExecStartPre=/usr/lib/mysql/mysql-systemd-helper install +ExecStartPre=/usr/lib/mysql/mysql-systemd-helper upgrade +ExecStart=/usr/lib/mysql/mysql-systemd-helper start +ExecStartPost=/usr/lib/mysql/mysql-systemd-helper wait [Install] WantedBy=multi-user.target ++++++ mysql@.service ++++++ --- /var/tmp/diff_new_pack.EVIJN7/_old 2016-10-31 09:56:20.000000000 +0100 +++ /var/tmp/diff_new_pack.EVIJN7/_new 2016-10-31 09:56:20.000000000 +0100 @@ -2,7 +2,7 @@ Description=MySQL server - %I instance Wants=basic.target PartOf=mysql.target -After=basic.target network.target syslog.target +After=basic.target network.target [Service] Restart=on-failure