Hello community,
here is the log from the commit of package mysql-community-server for openSUSE:Factory checked in at 2015-06-24 20:57:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
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 2014-08-20 10:51:14.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.mysql-community-server.new/mysql-community-server.changes 2015-06-24 20:57:37.000000000 +0200
@@ -1,0 +2,20 @@
+Tue Jun 23 13:40:25 UTC 2015 - tchvatal@suse.com
+
+- Sync with git state to allow build on Factory
+
+-------------------------------------------------------------------
+Sun Jun 21 16:52:29 UTC 2015 - michal.hrusecky@opensuse.org
+
+- merge latest packaging fixes from other variants
+ * mainly simplified packaging
+- updated to 5.6.25
+ http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-18.html
+ http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-19.html
+ http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-20.html
+ http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-21.html
+ http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-22.html
+ http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-23.html
+ http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-24.html
+ http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-25.html
+
+-------------------------------------------------------------------
Old:
----
README.SuSE
build.inc
mysql-5.6.17.tar.bz2
New:
----
README.SUSE
mysql-5.6.25.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mysql-community-server.spec ++++++
++++ 890 lines (skipped)
++++ between /work/SRC/openSUSE:Factory/mysql-community-server/mysql-community-server.spec
++++ and /work/SRC/openSUSE:Factory/.mysql-community-server.new/mysql-community-server.spec
++++++ README.SUSE ++++++
Notes about MySQL 5.1 package:
==============================
With MySQL 5.1 package we introduced some changes you may like to know. Most of
them will affect you only if you are upgrading from previous version and you
did some changes to your configuration.
1) Plugins:
===========
One of the new features in MySQL 5.1 is support for plugins. So some of the
storage engines are now shipped like that. You can use following plugins:
- archive
- blackhole
- federated
- example
InnoDB is still compiled as internal part of MySQL. If you are upgrading from
version 5.0 or if this is your first installation of MySQL 5.1, all plugins
will be enabled by default and you can disable them manually later (see
http://dev.mysql.com/doc/refman/5.1/en/uninstall-plugin.html).
With this change you need to remove skip-federated option from your my.cnf file
if you have changed it manually. This option was there by default in previous
versions of MySQL.
2) File locations:
==================
There were some changes in files locations. Most of them were made in the
default configuration file so if you are experiencing problems and you have
made some manual adjustments to your /etc/my.cnf, try to merge this file with
/etc/my.cnf.rpmnew.
File locations changes:
- MySQL socket file and pid file were moved from /var/lib/mysql to more
reasonable location ( /var/run/mysql ) by default.
- MySQL log files are in /var/log/mysql.
3) BerkeleyDB:
==============
MySQL no longer contains BerkeleyDB as storage engine. There is no fix for that
and if you used it before, you have to migrate your data to different storage
engine BEFORE updating. This can be done for example using following command:
ALTER TABLE foo ENGINE = INNODB;
4) MySQL Upgrade Log
====================
If you missed messages displayed during automatic MySQL database upgrade, you
can find them from now on in
/var/log/mysql/mysqld-upgrade.log
5) Migration from previous versions
===================================
If you are migrating from previous versions, you should take a look at official
documentation regarding migration:
* 5.0 -> 5.1 series
https://dev.mysql.com/doc/refman/5.1/en/upgrading-from-previous-series.html
* 5.1 -> 5.5 series
https://dev.mysql.com/doc/refman/5.5/en/upgrading-from-previous-series.html
* 5.5 -> 5.6 series
https://dev.mysql.com/doc/refman/5.6/en/upgrading-from-previous-series.html
++++++ README.debug ++++++
--- /var/tmp/diff_new_pack.LIz5GX/_old 2015-06-24 20:57:39.000000000 +0200
+++ /var/tmp/diff_new_pack.LIz5GX/_new 2015-06-24 20:57:39.000000000 +0200
@@ -1,7 +1,7 @@
Debugging mysqld crashes
========================
Author: Michal Marek
-Last modified: 2006-07-31
+Last modified: 2014-11-21
Contents
--------
@@ -67,22 +67,16 @@
gdb /usr/sbin/mysqld /var/lib/mysql/core
(gdb) bt
-Replace mysqld with the mysqld version you used (mysqld, mysqld-max or
-mysqld-debug) and core with the actual name of the coredump.
+Replace mysqld with the mysqld version you used (mysqld, mysqld-max)
+and core with the actual name of the coredump.
3) Trace files
--------------
-You'll need the mysqld-debug binary from the mysql-debug package to get
-a trace file. Install the mysqld-debug package and the start mysqld
-using following command:
+Start mysqld using following command:
$ MYSQLD_DEBUG=yes rcmysql start
- Note: The init script doesn't automatically pick up the mysqld-debug
- binary (as it does with mysqld-max), because it is expected to be used
- just temporarily to help solving a particular problem.
-
-The init script will then start mysqld-debug and add the --core-file,
+The init script will then start mysqld and add the --core-file,
--log and --debug options for you. The query log will be stored in
/var/lib/mysql/myqld-query.log
@@ -92,9 +86,7 @@
/var/lib/mysql/mysqld.trace
If you don't like the options set by the init script, just put your own
-into /etc/my.cnf and the init script will honor it. For information
-about the --debug option, see "The DBUG Package":
-http://dev.mysql.com/doc/refman/5.0/en/the-dbug-package.html .
+into /etc/my.cnf and the init script will honor them.
The trace file will contain various debug information and function
calls/returns and will become _extremly_ huge after a while, so don't
++++++ README.install ++++++
--- /var/tmp/diff_new_pack.LIz5GX/_old 2015-06-24 20:57:39.000000000 +0200
+++ /var/tmp/diff_new_pack.LIz5GX/_new 2015-06-24 20:57:39.000000000 +0200
@@ -15,6 +15,6 @@
'/usr/bin/mysql_secure_installation'
which will also give you the option of removing the test
-databases and anonymous user created by default. This is
+databases and anonymous user created by default. This is
strongly recommended for production servers.
++++++ _constraints ++++++
--- /var/tmp/diff_new_pack.LIz5GX/_old 2015-06-24 20:57:39.000000000 +0200
+++ /var/tmp/diff_new_pack.LIz5GX/_new 2015-06-24 20:57:39.000000000 +0200
@@ -1,7 +1,7 @@
<constraints>
<hardware>
<disk>
- <size unit="G">9</size>
+ <size unit="G">13</size>
</disk>
</hardware>
</constraints>
++++++ configuration-tweaks.tar.bz2 ++++++
++++++ install.inc ++++++
--- /var/tmp/diff_new_pack.LIz5GX/_old 2015-06-24 20:57:39.000000000 +0200
+++ /var/tmp/diff_new_pack.LIz5GX/_new 2015-06-24 20:57:39.000000000 +0200
@@ -1,11 +1,5 @@
-# install the debug server first, so that we don't overwrite the standard
-mkdir -p %buildroot%_libdir/mysql
-make -C _build-debug/sql install DESTDIR=%buildroot
-mv %buildroot/usr/sbin/mysqld %buildroot/usr/sbin/mysqld-debug
-install -m 644 _build-debug/sql/mysqld.sym %buildroot%_libdir/mysql/mysqld-debug.sym
-# install the client, extra tools, libraries and the standard server
-make -C _build install DESTDIR=%buildroot benchdir_root=/usr/share/
-install -m 644 _build/sql/mysqld.sym %buildroot%_libdir/mysql/mysqld.sym
+%cmake_install benchdir_root=/usr/share/
+install -m 644 build/sql/mysqld.sym %buildroot%_libdir/mysql/mysqld.sym
# remove handler socket client
rm -f %buildroot%_libdir/libhsclient*
rm -f %buildroot%_bindir/hsclient*
@@ -17,6 +11,7 @@
[ \! -f "%buildroot%_libdir/"libmysqld.static ] || mv "%buildroot%_libdir/"libmysqld.static "%buildroot%_libdir/"libmysqld.a
rm -f %buildroot%_libdir/mysql/{,plugin}/*.{a,la}
rm -f %buildroot%_libdir/mysql/libndbclient.*
+rm -f %buildroot%_libdir/mysql/plugin/debug_key_management.so
rm -f %{buildroot}/usr/share/mysql-test/{mysql-test-run,mtr}
rm -f %{buildroot}/usr/share/mysql/{binary-configure,errmsg-utf8.txt,magic,mysql-log-rotate,mysql*.server}
rm -f %{buildroot}%{_libdir}/mysql/plugin/daemon_example.ini
@@ -35,20 +30,26 @@
if test -e usr/bin/"$i"; then
echo /usr/bin/"$i"
fi
+ if test -d usr/share/*/"$i"; then
+ echo "/`echo usr/share/*/"$i"`"
+ fi
+ if test -n "`ls -1 %buildroot$i 2> /dev/null`"; then
+ echo "$i"
+ fi
if ls usr/share/man/*/"$i".[1-9]* >/dev/null 2>&1; then
echo "%%doc %_mandir/*/$i.[1-9]*"
fi
done
popd >/dev/null
}
-filelist innochecksum my_print_defaults myisam_ftdump myisamchk myisamlog myisampack mysql_fix_extensions mysql_fix_privilege_tables mysql_install_db mysql_secure_installation mysql_upgrade mysqlbug mysqld mysqld_multi mysqld_safe mysqlbinlog mysqldumpslow mysqlmanager resolve_stack_dump resolveip {m,}aria_chk {m,}aria_dump_log {m,}aria_ftdump {m,}aria_pack {m,}aria_read_log xtstat tokuftdump >mysql.files
+filelist innochecksum my_print_defaults myisam_ftdump myisamchk myisamlog myisampack mysql_fix_extensions mysql_fix_privilege_tables mysql_install_db mysql_secure_installation mysql_upgrade mysqlbug mysqld mysqld_multi mysqld_safe mysqlbinlog mysqldumpslow mysqlmanager mroonga resolve_stack_dump resolveip {m,}aria_chk {m,}aria_dump_log {m,}aria_ftdump {m,}aria_pack {m,}aria_read_log xtstat tokuftdump >mysql.files
filelist mysql mysqladmin mysqlcheck mysqldump mysqlimport mysqlshow mysql_config_editor >mysql-client.files
-filelist mysql_config >libmysqlclient-devel.files
+filelist mysql_config /usr/share/pkgconfig/mariadb.pc >libmysqlclient-devel.files
filelist mysqlslap >mysql-bench.files
filelist mysql_client_test mysql_client_test_embedded mysql_waitpid mysqltest mysqltest_embedded >mysql-test.files
# all binaries that don't need to be in a "default" install (mysql.rpm +
# mysql-client.rpm)
-filelist msql2mysql mysql_plugin mysql_convert_table_format mysql_find_rows mysql_setpermission mysql_tzinfo_to_sql mysql_zap mysqlaccess mysqlhotcopy perror replace mysql_embedded %{name}_mytop hsclient >mysql-tools.files
+filelist msql2mysql mysql_plugin mysql_convert_table_format mysql_find_rows mysql_setpermission mysql_tzinfo_to_sql mysql_zap mysqlaccess mysqlhotcopy perror replace mysql_embedded %{name}_mytop hsclient %{_bindir}/wsrep* /usr/share/mysql/wsrep_notify >mysql-tools.files
filelist ndbd ndbmtd ndbd_redo_log_reader >mysql-ndb-storage.files
filelist ndb_mgmd >mysql-ndb-management.files
filelist ndb_{config,desc,error_reporter,mgm,print_backup_file,print_schema_file,print_sys_file,restore,select_all,select_count,show_tables,size.pl,test_platform,waiter} >mysql-ndb-tools.files
@@ -71,35 +72,22 @@
errmsg_list > errormessages.files
### files not installed by make install
# Create directory structure
-DOCS=(COPYING README EXCEPTIONS-CLIENT %_sourcedir/README.debug %_sourcedir/README.SuSE plugin/daemon_example/daemon_example.ini)
+DOCS=(COPYING README EXCEPTIONS-CLIENT %_sourcedir/README.debug %_sourcedir/README.SUSE plugin/daemon_example/daemon_example.ini)
DOCDIR=%buildroot%_defaultdocdir/%name
install -d -m 755 ${DOCDIR}
install -d -m 755 %buildroot/etc/logrotate.d
-install -m 644 _build/support-files/mysql-log-rotate %buildroot/etc/logrotate.d/mysql
-%if 0%{?preferred} > 0%{?use_cmake}
-install -m 644 _buildlibmysqld/*.so* %buildroot%_libdir
-ln -s libmysqld.so.0.0.1 %buildroot%_libdir/libmysqld.so.0
-ln -s libmysqld.so.0.0.1 %buildroot%_libdir/libmysqld.so
-%endif
+install -m 644 build/support-files/mysql-log-rotate %buildroot/etc/logrotate.d/mysql
install -m 660 %{S:14} %buildroot/etc/my.cnf
[ \! -f scripts/mysqlaccess.conf ] || install -m 640 scripts/mysqlaccess.conf %buildroot/etc/mysqlaccess.conf
for i in "${DOCS[@]}"; do
install -m 644 "${i}" "${DOCDIR}" || true
done
-%if 0%{?suse_version} >= 1210 && 0%{?use_systemd} > 0
install -D -m 755 %_sourcedir/rc.mysql.systemd '%buildroot'/usr/lib/mysql/rcmysql
sed -i 's|@MYSQLVER@|%{version}|' '%buildroot'/usr/lib/mysql/rcmysql
ln -sf service '%buildroot'/usr/sbin/rcmysql
install -D -m 644 %_sourcedir/mysql.service '%buildroot'/usr/lib/systemd/system/mysql.service
sed -i 's|doc/packages/mysql|doc/packages/%{name}|g' '%buildroot'/usr/lib/mysql/rcmysql
rm -rf '%buildroot'/etc/init.d
-%else
-install -d -m 755 '%buildroot'/etc/init.d
-install -m 755 '%_sourcedir'/rc.mysql.sysvinit '%buildroot'/etc/init.d/mysql
-sed -i 's|@MYSQLVER@|%{version}|' '%buildroot'/etc/init.d/mysql
-ln -sf ../../etc/init.d/mysql '%buildroot'/usr/sbin/rcmysql
-sed -i 's|doc/packages/mysql|doc/packages/%{name}|g' '%buildroot'/etc/init.d/mysql
-%endif
# SuSEfirewall service description
install -D -m 644 %_sourcedir/mysql.SuSEfirewall2 \
%buildroot/etc/sysconfig/SuSEfirewall2.d/services/mysql
@@ -109,26 +97,14 @@
mkdir '%buildroot'/usr/share/mysql-test/var
# Final fixes
find '%buildroot'/usr/share/mysql-test -name '*.orig' -delete
-%if 0%{?suse_version} > 1030
%fdupes -s '%buildroot'/usr/share/mysql-test
-%endif
-%if 0%{?fedora_version} > 8
fdupes -q -n -r '%buildroot'/usr/share/mysql-test
-%endif
dos2unixConversion() {
%{__sed} -i 's/\r//g' "$1"
}
for i in `grep -Rl '\r' '%buildroot'/usr/share/sql-bench`; do
dos2unixConversion "$i"
done
-%if ! 0%{cluster} > 0
-cat mysql-ndb-storage.files mysql-ndb-management.files \
- mysql-ndb-tools.files mysql-ndb-extra.files | \
- sed 's|^%%doc\ ||' | while read tmp; do
- cd '%buildroot'
- rm -f .$tmp
-done
-%endif
%if ! 0%{preferred} > 0
cat libmysqlclient-devel.files | sed 's|%%doc\ ||' | while read tmp; do
cd '%buildroot'
@@ -143,10 +119,6 @@
ln -s mysqlcheck '%buildroot'%_bindir/mysqlrepair
ln -s mysqlcheck '%buildroot'%_bindir/mysqlanalyze
ln -s mysqlcheck '%buildroot'%_bindir/mysqloptimize
-%if 0%{?cluster} > 1
-ln -s libndbclient.so.6.0.0 '%buildroot'%_libdir/libndbclient.so.6.0
-ln -s libndbclient.so.6.0.0 '%buildroot'%_libdir/libndbclient.so.6
-%endif
if [ -f '%buildroot'/usr/bin/mysqlaccess.conf ]; then
mv '%buildroot'/usr/bin/mysqlaccess.conf '%buildroot'/etc/mysqlaccess.conf
fi
@@ -154,15 +126,21 @@
rm -rf '%buildroot'/etc/my.cnf.d
mkdir -p '%buildroot'/etc/my.cnf.d
bzip2 -cd '%_sourcedir'/configuration-tweaks.tar.bz2 | tar -C '%buildroot'/etc/my.cnf.d -xvf -
-%if %have_info < 1
[ -z "`ls '%buildroot'/usr/share/info/mysql.info* 2> /dev/null`" ] || rm -f '%buildroot'/usr/share/info/mysql.info*
-%endif
[ -z "`ls '%buildroot'/usr/share/mysql-test/suite/innodb/t/*.zip`" ] || chmod a-x '%buildroot'/usr/share/mysql-test/suite/innodb/t/*.zip
if [ "`ls '%buildroot'%_libdir/mysql/plugin/dialog*.so 2> /dev/null`" ]; then
echo '%%dir %%_libdir/mysql' >> mysql-client.files
echo '%%dir %%_libdir/mysql/plugin' >> mysql-client.files
echo '%%_libdir/mysql/plugin/dialog*.so' >> mysql-client.files
fi
+if [ %{_defaultdocdir} \!= /usr/share/doc ]; then
rm -rf '%buildroot'/usr/share/doc/{mysql,mariadb}*
+fi
+if [ %{name} \!= mysql ]; then
+rm -rf '%buildroot'/usr/share/doc/mysql
+fi
+if [ %{name} \!= mariadb ]; then
+rm -rf '%buildroot'/usr/share/doc/mariadb
+fi
rm -f '%buildroot'/usr/share/doc/* 2> /dev/null || true
rm -rf '%buildroot'/usr/share/mysql/{solaris,SELinux}
++++++ mysql-patches.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/MAINTAINERS new/mysql-patches/MAINTAINERS
--- old/mysql-patches/MAINTAINERS 2014-05-20 17:34:25.000000000 +0200
+++ new/mysql-patches/MAINTAINERS 2014-11-14 20:41:53.000000000 +0100
@@ -1 +1,2 @@
Michal Hrusecky
+Kristýna Streitová
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/README new/mysql-patches/README
--- old/mysql-patches/README 2014-05-20 17:34:25.000000000 +0200
+++ new/mysql-patches/README 2014-11-14 20:41:53.000000000 +0100
@@ -1,13 +1,11 @@
MySQL patches
=============
-This repository contains set of patches for MySQL and it's different flavours.
-Main flavours supported are:
+This repository contains set of patches for MySQL and it's different
+flavours. Main flavours supported are:
* MySQL Community Server
http://dev.mysql.com/doc/
- * MySQL Cluster
- http://dev.mysql.com/doc/index-cluster.html
* MariaDB
http://mariadb.org/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/mysql-patches/mysql-community-server-5.1.31-shebang.patch new/mysql-patches/mysql-patches/mysql-community-server-5.1.31-shebang.patch
--- old/mysql-patches/mysql-patches/mysql-community-server-5.1.31-shebang.patch 2014-05-20 15:56:19.000000000 +0200
+++ new/mysql-patches/mysql-patches/mysql-community-server-5.1.31-shebang.patch 1970-01-01 01:00:00.000000000 +0100
@@ -1,31 +0,0 @@
-PATCH-P1-FIX-UPSTREAM: Adds shebangs
-BUGS: mysql#69820
-
-Shebangs were missing at various places, so we are adding them.
-
-Maintainer: Michal Hrusecky
-
-diff -Naru mysql-5.1.31-bak/mysql-test/t/long_tmpdir-master.sh mysql-5.1.31/mysql-test/t/long_tmpdir-master.sh
---- mysql-5.1.31-bak/mysql-test/t/long_tmpdir-master.sh 2009-02-23 17:18:48.000000000 +0100
-+++ mysql-5.1.31/mysql-test/t/long_tmpdir-master.sh 2009-02-24 17:57:42.000000000 +0100
-@@ -1,3 +1,4 @@
-+#!/bin/sh
- d="$MYSQLTEST_VARDIR/tmp/long_temporary_directory_path_123456789_123456789_123456789_123456789_123456789_123456789_123456789_123456789"
- test -d "$d" || mkdir "$d"
- rm -f "$d"/*
-diff -Naru mysql-5.1.31-bak/mysql-test/t/lowercase_mixed_tmpdir-master.sh mysql-5.1.31/mysql-test/t/lowercase_mixed_tmpdir-master.sh
---- mysql-5.1.31-bak/mysql-test/t/lowercase_mixed_tmpdir-master.sh 2009-02-23 17:18:48.000000000 +0100
-+++ mysql-5.1.31/mysql-test/t/lowercase_mixed_tmpdir-master.sh 2009-02-24 17:58:12.000000000 +0100
-@@ -1,3 +1,4 @@
-+#!/bin/sh
- # This test requires a non-lowercase tmpdir directory on a case-sensitive
- # filesystem.
-
-diff -Naru mysql-5.1.31-bak/sql-bench/graph-compare-results.sh mysql-5.1.31/sql-bench/graph-compare-results.sh
---- mysql-5.1.31-bak/sql-bench/graph-compare-results.sh 2009-02-23 17:18:49.000000000 +0100
-+++ mysql-5.1.31/sql-bench/graph-compare-results.sh 2009-02-24 18:00:16.000000000 +0100
-@@ -1,3 +1,4 @@
-+#/usr/bin/perl
- ####
- #### Hello ... this is a heavily hacked script by Luuk
- #### instead of printing the result it makes a nice gif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/mysql-patches/mysql-community-server-5.6.12-logrotate-su.patch new/mysql-patches/mysql-patches/mysql-community-server-5.6.12-logrotate-su.patch
--- old/mysql-patches/mysql-patches/mysql-community-server-5.6.12-logrotate-su.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/mysql-patches/mysql-patches/mysql-community-server-5.6.12-logrotate-su.patch 2015-04-13 15:11:26.000000000 +0200
@@ -0,0 +1,17 @@
+PATCH-P0-SUSE: Fix for logrorate config
+
+This patch fixes the logrotarte config file for mysql.
+Read more at https://www.novell.com/support/kb/doc.php?id=7005219
+
+Index: support-files/mysql-log-rotate.sh
+===================================================================
+--- support-files/mysql-log-rotate.sh.orig
++++ support-files/mysql-log-rotate.sh
+@@ -21,6 +21,7 @@
+
+ /var/log/mysql/mysqld.log {
+ # create 600 mysql mysql
++ su mysql mysql
+ notifempty
+ daily
+ rotate 5
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/mysql-patches/mysql-community-server-5.6.24-regex_heap_overflow.patch new/mysql-patches/mysql-patches/mysql-community-server-5.6.24-regex_heap_overflow.patch
--- old/mysql-patches/mysql-patches/mysql-community-server-5.6.24-regex_heap_overflow.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/mysql-patches/mysql-patches/mysql-community-server-5.6.24-regex_heap_overflow.patch 2015-06-23 11:00:06.000000000 +0200
@@ -0,0 +1,33 @@
+PATCH-P1-FIX-UPSTREAM: Fix heap overflow vulnerability in regex library
+BUGS: bnc#922043
+
+Description of the vulnerability from
+https://guidovranken.wordpress.com/2015/02/04/full-disclosure-heap-overflow-...
+"Fix heap overflow vulnerability in Henry Spencer’s regex library,
+affecting 32 bit systems only. Variable ‘len’ is here enlarged to such
+an extent that, in the process of enlarging (multiplication and addition),
+causes the 32 bit register/variable to overflow."
+
+Maintainer: Kristyna Streitova
+
+Index: mysql-5.5.43/regex/regcomp.c
+===================================================================
+--- mysql-5.5.43.orig/regex/regcomp.c
++++ mysql-5.5.43/regex/regcomp.c
+@@ -138,7 +138,15 @@ CHARSET_INFO *charset;
+ (NC-1)*sizeof(cat_t));
+ if (g == NULL)
+ return(MY_REG_ESPACE);
+- p->ssize = (long) (len/(size_t)2*(size_t)3 + (size_t)1); /* ugh */
++ {
++ /* Patched for CERT Vulnerability Note VU#695940, Feb 2015. */
++ size_t new_ssize = len/(size_t)2*(size_t)3 + (size_t)1; /* ugh */
++ if (new_ssize < len || new_ssize > LONG_MAX / sizeof(sop)) {
++ free((char *) g);
++ return MY_REG_INVARG;
++ }
++ p->ssize = (long) new_ssize;
++ }
+ p->strip = (sop *)malloc(p->ssize * sizeof(sop));
+ p->slen = 0;
+ if (p->strip == NULL) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mysql-patches/mysql-patches/mysql-community-server-5.6.24-static_library.patch new/mysql-patches/mysql-patches/mysql-community-server-5.6.24-static_library.patch
--- old/mysql-patches/mysql-patches/mysql-community-server-5.6.24-static_library.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/mysql-patches/mysql-patches/mysql-community-server-5.6.24-static_library.patch 2015-06-23 11:00:06.000000000 +0200
@@ -0,0 +1,48 @@
+PATCH-P1-FIX-UPSTREAM: Set some libraries as a static in CMakeLists.txt
+
+Set binlog, rpl, master, slave and mysqlservices as a static
+libraries to fix "Nothing provides" error during installation.
+
+Maintainer: Kristyna Streitova
+
+Index: mysql-5.6.24/sql/CMakeLists.txt
+===================================================================
+--- mysql-5.6.24.orig/sql/CMakeLists.txt
++++ mysql-5.6.24/sql/CMakeLists.txt
+@@ -245,20 +245,20 @@ SET (BINLOG_SOURCE uuid.cc rpl_gtid_misc
+ log_event.cc log_event_old.cc binlog.cc sql_binlog.cc
+ rpl_filter.cc rpl_record.cc rpl_record_old.cc rpl_utility.cc
+ rpl_injector.cc)
+-ADD_LIBRARY(binlog ${BINLOG_SOURCE})
++ADD_LIBRARY(binlog STATIC ${BINLOG_SOURCE})
+ SET (RPL_SOURCE rpl_handler.cc rpl_tblmap.cc)
+ ADD_DEPENDENCIES(binlog GenError)
+-ADD_LIBRARY(rpl ${RPL_SOURCE})
++ADD_LIBRARY(rpl STATIC ${RPL_SOURCE})
+ SET (MASTER_SOURCE rpl_master.cc)
+ ADD_DEPENDENCIES(rpl GenError)
+-ADD_LIBRARY(master ${MASTER_SOURCE})
++ADD_LIBRARY(master STATIC ${MASTER_SOURCE})
+ ADD_DEPENDENCIES(master GenError)
+ SET (SLAVE_SOURCE rpl_slave.cc rpl_reporting.cc rpl_mi.cc rpl_rli.cc
+ rpl_info_handler.cc rpl_info_file.cc rpl_info_table.cc
+ rpl_info_values.cc rpl_info.cc rpl_info_factory.cc
+ rpl_info_table_access.cc dynamic_ids.cc rpl_rli_pdb.cc
+ rpl_info_dummy.cc)
+-ADD_LIBRARY(slave ${SLAVE_SOURCE})
++ADD_LIBRARY(slave STATIC ${SLAVE_SOURCE})
+ ADD_DEPENDENCIES(slave GenError)
+ ADD_LIBRARY(sqlgunitlib
+ filesort_utils.cc mdl.cc sql_list.cc sql_string.cc thr_malloc.cc
+Index: mysql-5.6.24/libservices/CMakeLists.txt
+===================================================================
+--- mysql-5.6.24.orig/libservices/CMakeLists.txt
++++ mysql-5.6.24/libservices/CMakeLists.txt
+@@ -23,5 +23,5 @@ SET(MYSQLSERVICES_SOURCES
+ my_thread_scheduler_service.c
+ mysql_string_service.c)
+
+-ADD_LIBRARY(mysqlservices ${MYSQLSERVICES_SOURCES})
++ADD_LIBRARY(mysqlservices STATIC ${MYSQLSERVICES_SOURCES})
+ INSTALL(TARGETS mysqlservices DESTINATION ${INSTALL_LIBDIR} COMPONENT Development)
+
++++++ rc.mysql.systemd ++++++
--- /var/tmp/diff_new_pack.LIz5GX/_old 2015-06-24 20:57:39.000000000 +0200
+++ /var/tmp/diff_new_pack.LIz5GX/_new 2015-06-24 20:57:39.000000000 +0200
@@ -32,12 +32,16 @@
# rc_reset clear local rc status (overall remains)
# rc_exit exit appropriate to overall rc status
+_rc_status_ret=0
+_rc_status=$_rc_status_ret
+_rc_status_all=$_rc_status
+
rc_check ()
{
_rc_status_ret=$?
- test "_rc_status_ret" || _rc_status_ret=0
- test $_rc_status_ret -eq 0 || _rc_status=$_rc_status_ret
- test $_rc_status -eq 0 || _rc_status_all=$_rc_status
+ test "$_rc_status_ret" || _rc_status_ret=0
+ test 0$_rc_status_ret -eq 0 || _rc_status=$_rc_status_ret
+ test 0$_rc_status -eq 0 || _rc_status_all=$_rc_status
return 0$_rc_status_ret
}
@@ -45,21 +49,20 @@
{
rc_check
_rc_status_ret=$_rc_status
- local i
- for i ; do
- case "$i" in
- -v|-v[1-9]|-v[1-9][0-9])
- case "$_rc_status" in
- 0) echo "Everything is Ok" ;; # success
- *) echo "Something went wrong" ;; # failed
- esac
-
- # reset _rc_status to 0 after verbose case
- _rc_status=0 ;;
- -r) rc_reset ;;
- *) echo "rc_status: Usage: [-v[<num>] [-r]]" 1>&2 ; return 0 ;;
- esac
- done
+ if [ "$1" ]; then
+ case "$1" in
+ -v|-v[1-9]|-v[1-9][0-9])
+ case "$_rc_status" in
+ 0) echo "Everything is Ok" ;; # success
+ *) echo "Something went wrong" ;; # failed
+ esac
+
+ # reset _rc_status to 0 after verbose case
+ _rc_status=0 ;;
+ -r) rc_reset ;;
+ *) echo "rc_status: Usage: [-v[<num>] [-r]]" 1>&2 ; return 0 ;;
+ esac
+ fi
return $_rc_status_ret
}
@@ -302,9 +305,9 @@
unset MYSQLD
# use mysqld-debug only if explicitly requested (TODO: sysconfig variable?)
- if test "$MYSQLD_DEBUG" = yes -a -x /usr/sbin/mysqld-debug
+ if test "$MYSQLD_DEBUG" = yes -a -x /usr/sbin/mysqld
then
- MYSQLD=/usr/sbin/mysqld-debug
+ MYSQLD=/usr/sbin/mysqld
elif test -x /usr/sbin/mysqld-max
then
MYSQLD=/usr/sbin/mysqld-max
@@ -423,27 +426,12 @@
# Run mysql_upgrade on every package install/upgrade. Not always
# necessary, but doesn't do any harm. On big upgrade, require
# user confirmation.
- if [ -f "/var/lib/mysql/.run-mysql_upgrade" ]; then
- if [ \! -f "/var/lib/mysql/.force_upgrade" ] && \
- [ -f "$datadir/mysql_upgrade_info" ] && \
- [ -z "`grep "^$MYSQLVER" "$datadir/mysql_upgrade_info" 2> /dev/null`" ]; then
- echo
- echo "You are upgrading from different stable version of MySQL!"
- echo "Make sure you to make backup of your data (mostly $datadir)!"
- echo
- echo "If you want to continue upgrading your database, run following commands:"
- echo
- echo " touch /var/lib/mysql/.force_upgrade"
- echo " rcmysql restart"
- echo
- rc_failed; rc_status -v; rc_exit
-
- fi
+ if [ -f "$datadir/.run-mysql_upgrade" ]; then
echo > "$log_upgrade"
echo "`LANG="" date` - upgrading MySQL..." >> "$log_upgrade"
echo >> "$log_upgrade"
echo "Will update MySQL now, if you encounter any problems, please read following file:" | tee -a "$log_upgrade"
- echo " /usr/share/doc/packages/mysql/README.SuSE" | tee -a "$log_upgrade"
+ echo " /usr/share/doc/packages/mysql/README.SUSE" | tee -a "$log_upgrade"
sed -i -e 's|^\([[:blank:]]*\)skip-locking|\1skip-external-locking|' \
-e 's|^\([[:blank:]]*skip-federated\)|#\1|' /etc/my.cnf
[ -d /etc/mysql ] || \
@@ -503,8 +491,7 @@
}
echo "Running protected MySQL... " | tee -a "$log_upgrade"
- $SAFE_MYSQLD \
- --mysqld=${MYSQLD#/usr/sbin/} \
+ $MYSQLD \
$debug_flags \
--skip-networking \
--skip-grant-tables \
@@ -565,6 +552,8 @@
rm -f /var/lib/mysql/.run-mysql_upgrade
rm -f /var/lib/mysql/.force_upgrade
rm -f "$datadir"/{update-stamp-*,mysql/stamp-4.1} # used in the past
+ MYSQLVERSION="`mysqld --version 2> /dev/null | sed -n 's|mysqld[[:blank:]]\+Ver[[:blank:]]\+\([^[:blank:]]\+\)[[:blank:]].*|\1|p'`"
+ [ -z "$MYSQLVERSION" ] || echo "$MYSQLVERSION" > "$datadir"/mysql_upgrade_info
chown --no-dereference "$mysql_daemon_user:$mysql_daemon_group" "$log_upgrade"
chmod 640 "$log_upgrade"
fi
++++++ rc.mysql.sysvinit ++++++
--- /var/tmp/diff_new_pack.LIz5GX/_old 2015-06-24 20:57:39.000000000 +0200
+++ /var/tmp/diff_new_pack.LIz5GX/_new 2015-06-24 20:57:39.000000000 +0200
@@ -251,9 +251,9 @@
unset MYSQLD
# use mysqld-debug only if explicitly requested (TODO: sysconfig variable?)
- if test "$MYSQLD_DEBUG" = yes -a -x /usr/sbin/mysqld-debug
+ if test "$MYSQLD_DEBUG" = yes -a -x /usr/sbin/mysqld
then
- MYSQLD=/usr/sbin/mysqld-debug
+ MYSQLD=/usr/sbin/mysqld
elif test -x /usr/sbin/mysqld-max
then
MYSQLD=/usr/sbin/mysqld-max
@@ -372,27 +372,12 @@
# Run mysql_upgrade on every package install/upgrade. Not always
# necessary, but doesn't do any harm. On big upgrade, require
# user confirmation.
- if [ -f "/var/lib/mysql/.run-mysql_upgrade" ]; then
- if [ \! -f "/var/lib/mysql/.force_upgrade" ] && \
- [ -f "$datadir/mysql_upgrade_info" ] && \
- [ -z "`grep "^$MYSQLVER" "$datadir/mysql_upgrade_info" 2> /dev/null`" ]; then
- echo
- echo "You are upgrading from different stable version of MySQL!"
- echo "Make sure you to make backup of your data (mostly $datadir)!"
- echo
- echo "If you want to continue upgrading your database, run following commands:"
- echo
- echo " touch /var/lib/mysql/.force_upgrade"
- echo " rcmysql restart"
- echo
- rc_failed; rc_status -v; rc_exit
-
- fi
+ if [ -f "$datadir/.run-mysql_upgrade" ]; then
echo > "$log_upgrade"
echo "`LANG="" date` - upgrading MySQL..." >> "$log_upgrade"
echo >> "$log_upgrade"
echo "Will update MySQL now, if you encounter any problems, please read following file:" | tee -a "$log_upgrade"
- echo " /usr/share/doc/packages/mysql/README.SuSE" | tee -a "$log_upgrade"
+ echo " /usr/share/doc/packages/mysql/README.SUSE" | tee -a "$log_upgrade"
sed -i -e 's|^\([[:blank:]]*\)skip-locking|\1skip-external-locking|' \
-e 's|^\([[:blank:]]*skip-federated\)|#\1|' /etc/my.cnf
[ -d /etc/mysql ] || \
@@ -452,8 +437,7 @@
}
echo "Running protected MySQL... " | tee -a "$log_upgrade"
- $SAFE_MYSQLD \
- --mysqld=${MYSQLD#/usr/sbin/} \
+ $MYSQLD \
$debug_flags \
--skip-networking \
--skip-grant-tables \
@@ -514,6 +498,8 @@
rm -f /var/lib/mysql/.run-mysql_upgrade
rm -f /var/lib/mysql/.force_upgrade
rm -f "$datadir"/{update-stamp-*,mysql/stamp-4.1} # used in the past
+ MYSQLVERSION="`mysqld --version 2> /dev/null | sed -n 's|mysqld[[:blank:]]\+Ver[[:blank:]]\+\([^[:blank:]]\+\)[[:blank:]].*|\1|p'`"
+ [ -z "$MYSQLVERSION" ] || echo "$MYSQLVERSION" > "$datadir"/mysql_upgrade_info
chown --no-dereference "$mysql_daemon_user:$mysql_daemon_group" "$log_upgrade"
chmod 640 "$log_upgrade"
fi
++++++ series ++++++
--- /var/tmp/diff_new_pack.LIz5GX/_old 2015-06-24 20:57:39.000000000 +0200
+++ /var/tmp/diff_new_pack.LIz5GX/_new 2015-06-24 20:57:39.000000000 +0200
@@ -1,4 +1,3 @@
-mysql-community-server-5.1.31-shebang.patch
mysql-community-server-5.6.10-hotcopy.patch
mysql-community-server-5.6.10-group.patch
mysql-community-server-5.5.6-safe-process-in-bin.patch
@@ -10,3 +9,6 @@
mysql-community-server-5.6.12-deharcode-libdir.patch
mysql-community-server-5.6.12-upgrade-datadir.patch
mysql-community-server-5.6.12-srv_buf_size.patch
+mysql-community-server-5.6.12-logrotate-su.patch
+mysql-community-server-5.6.24-regex_heap_overflow.patch
+mysql-community-server-5.6.24-static_library.patch