Mailinglist Archive: opensuse-commit (914 mails)

< Previous Next >
commit mysql-community-server for openSUSE:11.3

Hello community,

here is the log from the commit of package mysql-community-server for
openSUSE:11.3
checked in at Tue Jun 7 04:05:34 CEST 2011.



--------
--- old-versions/11.3/all/mysql-community-server/mysql-community-server.changes
2010-05-07 11:32:26.000000000 +0200
+++ 11.3/mysql-community-server/mysql-community-server.changes 2011-05-09
15:30:24.000000000 +0200
@@ -1,0 +2,62 @@
+Mon May 9 15:29:24 CEST 2011 - mhrusecky@xxxxxxx
+
+- replaced 'skip-locking' with 'skip-external-locking' in default
+ configuration files
+
+-------------------------------------------------------------------
+Fri May 6 20:26:40 CEST 2011 - mhrusecky@xxxxxxx
+
+- updated to 5.1.57, see
+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-57.html
+
+-------------------------------------------------------------------
+Mon Apr 11 09:28:33 CEST 2011 - mhrusecky@xxxxxxx
+
+- updated to 5.1.56, see
+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-52.html
+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-53.html
+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-54.html
+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-55.html
+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-56.html
+- replaced patches by patches from 11.4
+ - different naming scheme and annotation
+
+-------------------------------------------------------------------
+Wed Sep 29 12:49:25 CEST 2010 - mhrusecky@xxxxxxx
+
+- fixed init script to work on SELinux machines (bnc#635645)
+
+-------------------------------------------------------------------
+Wed Sep 29 11:47:47 CEST 2010 - mhrusecky@xxxxxxx
+
+- updated to 5.1.51, see
+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-51.html
+
+-------------------------------------------------------------------
+Tue Aug 24 14:57:04 CEST 2010 - mhrusecky@xxxxxxx
+
+- updated to 5.1.50, see
+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-50.html
+
+-------------------------------------------------------------------
+Tue Aug 08 10:19:39 CEST 2010 - mhrusecky@xxxxxxx
+
+- updated to 5.1.49 (bnc#584287), see
+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-49.html
+ - includes several security fixes
+
+-------------------------------------------------------------------
+Tue Jun 29 10:23:34 CEST 2010 - mhrusecky@xxxxxxx
+
+- updated to 5.1.48 (bnc#584287), see
+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-48.html
+ - fixes bnc#619097
+
+-------------------------------------------------------------------
+Mon May 24 11:44:57 CEST 2010 - mhrusecky@xxxxxxx
+
+- updated to 5.1.47 (bnc#584287), see
+ http://dev.mysql.com/doc/refman/5.1/en/news-5-1-47.html
+ - fixes bnc#609551: CVE-2010-1848, CVE-2010-1849, CVE-2010-1850
+
+-------------------------------------------------------------------

Package does not exist at destination yet. Using Fallback
old-versions/11.3/all/mysql-community-server
Destination is old-versions/11.3/UPDATES/all/mysql-community-server
calling whatdependson for 11.3-i586


Old:
----
abi_test.patch
libmysql-no-pkglibdir.patch
mysql-5.1.30-federated-workaround.patch
mysql-5.1.31-shebang.patch
mysql-5.1.33-scripts-paths.patch
mysql-5.1.33-ssl-lib64-macro.patch
mysql-5.1.35-test-utf8.patch
mysql-5.1.35-test-variables-big.patch
mysql-5.1.36-bmove512.patch
mysql-5.1.36-hotcopy.patch
mysql-5.1.42-myslq-test.patch
mysql-5.1.45-safe-process-in-bin.patch
mysql-5.1.46.tar.bz2
mysql-cnf.patch
mysql-enable-plugins.patch
mysql-group.patch
mysql-install_db-quiet.patch
mysql-logrotate.patch
mysql-multi-configuration.patch
mysql-plugins-avoid-version.patch
mysql_config.patch
mysql_upgrade-exit-status.patch
mysqld_multi.patch

New:
----
mysql-5.1.57.tar.bz2
mysql-community-server-5.1.30-federated-workaround.patch
mysql-community-server-5.1.31-shebang.patch
mysql-community-server-5.1.33-scripts-paths.patch
mysql-community-server-5.1.33-ssl-lib64-macro.patch
mysql-community-server-5.1.36-bmove512.patch
mysql-community-server-5.1.36-hotcopy.patch
mysql-community-server-5.1.45-cnf.patch
mysql-community-server-5.1.45-group.patch
mysql-community-server-5.1.45-multi-configuration.patch
mysql-community-server-5.1.45-safe-process-in-bin.patch
mysql-community-server-5.1.46-logrotate.patch
mysql-community-server-5.1.50-strncat-overflow.patch
mysql-community-server-5.1.51-install_db-quiet.patch
mysql-community-server-5.1.51-libmysql-no-pkglibdir.patch
mysql-community-server-5.1.51-myslq-test.patch
mysql-community-server-5.1.51-mysql_config.patch
mysql-community-server-5.1.51-mysqld_multi-features.patch
mysql-community-server-5.1.51-plugins-avoid-version.patch
mysql-community-server-5.1.51-upgrade-exit-status.patch
mysql-community-server-5.1.52-utf8-test-results.patch
mysql-community-server-5.1.53-ssl-compilation-fix.patch
mysql-community-server-5.1.56-compilation-fix.patch
mysql-community-server-5.1.57-external-locking.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ mysql-community-server.spec ++++++
--- /var/tmp/diff_new_pack.dYClLA/_old 2011-06-07 03:25:15.000000000 +0200
+++ /var/tmp/diff_new_pack.dYClLA/_new 2011-06-07 03:25:15.000000000 +0200
@@ -1,7 +1,7 @@
#
-# spec file for package mysql-community-server (Version 5.1.46)
+# spec file for package mysql-community-server
#
-# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -20,7 +20,7 @@
# Few definitions which will alter build
%define prefered 1
%define cluster 0
-%define srv_vers 5.1.46
+%define srv_vers 5.1.57

%if %{?rel:0}%{!?rel:1}
%define rel 1
@@ -31,8 +31,8 @@

Name: mysql-community-server
Summary: A True Multiuser, Multithreaded SQL Database Server
-Version: 5.1.46
-Release: 2
+Version: 5.1.57
+Release: 0.<RELEASE2>
License: GPLv2 ; with additional permissions: EXCEPTIONS-CLIENT
Group: Productivity/Databases/Servers
Url: http://www.mysql.com
@@ -44,52 +44,29 @@
Source5: mysql.SuSEfirewall2
Source7: rc.mysql-multi
Source8: README.SuSE
-# Polishing default config file
-Patch2: mysql-cnf.patch
-Patch3: mysql-multi-configuration.patch
-# Adds option to set group to something else similarly to the user settings
-Patch4: mysql-group.patch
-# Warning about initscript in mysql_install_db disabled, since the SUSE RPM
comes with an init script installed
-Patch5: mysql-install_db-quiet.patch
-# Checks flush-logs exit status in support-files/mysql-log-rotate.sh
-Patch7: mysql-logrotate.patch
-# Adds reload funcionality to mysqld_multi.sh perl script and adds --datadir
support
-Patch8: mysqld_multi.patch
-# Disables failure on one test during update and improves error message during
update a little bit
-Patch13: mysql_upgrade-exit-status.patch
-# Changes pkglib_LIBRARIES into lib_LIBRARIES in libmysql
-Patch18: libmysql-no-pkglibdir.patch
-# Adds option -avoid-version to LDFLAGS for plugins blackhole, archive and
example
-Patch19: mysql-plugins-avoid-version.patch
-# This patch loads plugins by default if there is no settings regarding
plugins.
-Patch23: mysql-enable-plugins.patch
-# Really ugly patch which fixes federated to work as a plugin. We should get
rid of this asap.
-Patch24: mysql-5.1.30-federated-workaround.patch
-# PATCH-FIX-UPSTREAM mysql-5.1.31-shebang.patch [] mhrusecky@xxxxxxx -- adds
mising shebangs
-Patch25: mysql-5.1.31-shebang.patch
-# PATCH-FIX-UPSTREAM mysql-5.1.35-test-variables-big.patch [upstream bug
#38811] -- different way to test whether server crashed
-# http://bugs.mysql.com/bug.php?id=38811
-Patch27: mysql-5.1.35-test-variables-big.patch
-# PATCH-FIX-SUSE mysql-5.1.32-myslq-test.patch mhrusecky@xxxxxxx -- installs
tests into datadir not into prefix
-Patch28: mysql-5.1.42-myslq-test.patch
-# PATCH-FIX-UPSTREAM mysql-5.1.33-scripts-paths.patch [ upstream#45616 ]
mhrusecky@xxxxxxx -- fixes build of scripts when compilation occurs somewhere
else
-# http://bugs.mysql.com/bug.php?id=45616
-Patch29: mysql-5.1.33-scripts-paths.patch
-# PATCH-FIX-SUSE mysql-5.1.45-safe-process-in-bin.patch [] mhrusecky@xxxxxxx
-- this will let us move one binary to /usr/bin instead of
/usr/share/mysql-test/...
-Patch30: mysql-5.1.45-safe-process-in-bin.patch
-# PATCH-FIX-SUSE mysql-5.1.33-ssl-lib64-macro.patch [] mhrusecky@xxxxxxx --
search for ssl libraries also in lib64
-Patch31: mysql-5.1.33-ssl-lib64-macro.patch
-# PATCH-FIX-SUSE mysql-5.1.35-test-utf8.patch [] mhrusecky@xxxxxxx -- we use
utf-8 by default which produces different output with few tests
-Patch35: mysql-5.1.35-test-utf8.patch
-# PATCH-FIX-UPSTREAM mysql-5.1.36-bmove512.patch [ upstream#19975 ]
mhrusecky@xxxxxxx -- using standard memcpy instead of bmove512 as it should be
beeter
-# http://bugs.mysql.com/bug.php?id=19975
-Patch37: mysql-5.1.36-bmove512.patch
-# PATCH-FIX-UPSTREAM mysql-5.1.36-hotcopy.patch [ upstream#43594, bnc#525325 ]
mhrusecky@xxxxxxx -- hotcopy ignores log tables
-# http://bugs.mysql.com/bug.php?id=43594
-Patch38: mysql-5.1.36-hotcopy.patch
-# PATCH-FIX-UPSTREAM mysql_config.patch [ upstream#39175, bnc#420313 ]
mhrusecky@xxxxxxx -- Fix linking options.
-Patch39: mysql_config.patch
-Patch45: abi_test.patch
+Patch1: mysql-community-server-5.1.30-federated-workaround.patch
+Patch2: mysql-community-server-5.1.31-shebang.patch
+Patch3: mysql-community-server-5.1.33-scripts-paths.patch
+Patch4: mysql-community-server-5.1.33-ssl-lib64-macro.patch
+Patch5: mysql-community-server-5.1.36-bmove512.patch
+Patch6: mysql-community-server-5.1.36-hotcopy.patch
+Patch7: mysql-community-server-5.1.45-cnf.patch
+Patch8: mysql-community-server-5.1.45-group.patch
+Patch9: mysql-community-server-5.1.45-multi-configuration.patch
+Patch10: mysql-community-server-5.1.45-safe-process-in-bin.patch
+Patch11: mysql-community-server-5.1.46-logrotate.patch
+Patch12: mysql-community-server-5.1.50-strncat-overflow.patch
+Patch13: mysql-community-server-5.1.51-install_db-quiet.patch
+Patch14: mysql-community-server-5.1.51-libmysql-no-pkglibdir.patch
+Patch15: mysql-community-server-5.1.51-myslq-test.patch
+Patch16: mysql-community-server-5.1.51-mysql_config.patch
+Patch17: mysql-community-server-5.1.51-mysqld_multi-features.patch
+Patch18: mysql-community-server-5.1.51-plugins-avoid-version.patch
+Patch19: mysql-community-server-5.1.51-upgrade-exit-status.patch
+Patch20: mysql-community-server-5.1.52-utf8-test-results.patch
+Patch21: mysql-community-server-5.1.56-compilation-fix.patch
+Patch22: mysql-community-server-5.1.53-ssl-compilation-fix.patch
+Patch23: mysql-community-server-5.1.57-external-locking.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if 0%{?suse_version}
PreReq: pwdutils
@@ -417,28 +394,29 @@
%setup -q -n mysql-%version
cp %_sourcedir/README.SuSE .
cp %_sourcedir/suse-test-run .
-%patch2
+%patch1
+%patch2 -p1
%patch3
%patch4
%patch5
+%patch6
%patch7
%patch8
+%patch9
+%patch10
+%patch11
+%patch12
%patch13
+%patch14
+%patch15
+%patch16
+%patch17
%patch18
%patch19
+%patch20
+%patch21
+%patch22
%patch23
-%patch24
-%patch25 -p1
-%patch27
-%patch28
-%patch29
-%patch30
-%patch31
-%patch35
-%patch37
-%patch38
-%patch39
-%patch45 -p1
# remove unneeded manpages ('make install' basically installs everything under
# man/*)
rm -f man/mysqlman.1 # dummy fallback manpage
@@ -606,7 +584,9 @@
%endif
install -m 660 _build/support-files/my-medium.cnf %buildroot/etc/my.cnf
install -m 640 scripts/mysqlaccess.conf %buildroot/etc/mysqlaccess.conf
-install -m 644 "${DOCS[@]}" ${DOCDIR}
+for i in "${DOCS[@]}"; do
+ install -m 644 "${i}" ${DOCDIR} || true
+done
install -m 755 %_sourcedir/rc.mysql-multi %buildroot/etc/init.d/mysql
ln -sf ../../etc/init.d/mysql %buildroot/usr/sbin/rcmysql
# this is used by the init script

++++++ mysql-5.1.46.tar.bz2 -> mysql-5.1.57.tar.bz2 ++++++
old-versions/11.3/all/mysql-community-server/mysql-5.1.46.tar.bz2
11.3/mysql-community-server/mysql-5.1.57.tar.bz2 differ: char 11, line 1

++++++ mysql-community-server-5.1.30-federated-workaround.patch ++++++
PATCH-P0-HACK-UPSTREAM: Make federated plugin to compile

Really ugly way to force federated plugin to compile if it is choosed to be
dynamically loadable.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

--- storage/federated/ha_federated.cc
+++ storage/federated/ha_federated.cc
@@ -385,6 +385,12 @@

#include <mysql/plugin.h>

+
+// Quick and ugly plugin workaround
+#ifdef MYSQL_DYNAMIC_PLUGIN
+#include "../../mysys/string.c"
+#endif
+
/* Variables for federated share methods */
static HASH federated_open_tables; // To track open tables
pthread_mutex_t federated_mutex; // To init the hash
++++++ mysql-community-server-5.1.31-shebang.patch ++++++
PATCH-P1-FIX-UPSTREAM: Adds shebangs

Shebangs were missing at various places, so we are adding them.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

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
++++++ mysql-community-server-5.1.33-scripts-paths.patch ++++++
PATCH-P0-FIX-UPSTREAM: Fix building in different directory
BUGS: upstream#45616

Makes it possible to run compilation somewhere else then source code is.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

--- scripts/Makefile.am 2009-04-02 18:29:00.292563355 +0200
+++ scripts/Makefile.am 2009-04-02 18:21:50.462559739 +0200
@@ -110,7 +110,7 @@
mysql_fix_privilege_tables.sql: mysql_system_tables.sql \
mysql_system_tables_fix.sql
@echo "Building $@";
- @cat mysql_system_tables.sql mysql_system_tables_fix.sql > $@
+ @cat $(top_srcdir)/scripts/mysql_system_tables.sql
$(top_srcdir)/scripts/mysql_system_tables_fix.sql > $@

#
# Build mysql_fix_privilege_tables_sql.c from
@@ -123,7 +123,7 @@
sleep 2
$(top_builddir)/scripts/comp_sql$(EXEEXT) \
mysql_fix_privilege_tables \
- $(top_srcdir)/scripts/mysql_fix_privilege_tables.sql $@
+ $(top_builddir)/scripts/mysql_fix_privilege_tables.sql $@


SUFFIXES = .sh
++++++ mysql-community-server-5.1.33-ssl-lib64-macro.patch ++++++
PATCH-P0-HACK-UPSTREAM: Add lib64 dir to the library path

On x86_64 systems openssl library is installed into /usr/lib64 directory and
MySQL couldn't find as it was searching only in /usr/lib. We can add it quite
safelly even on i586 as this directory wouldn't exist on them so no harm done.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

--- config/ac-macros/ssl.m4 2009-04-10 14:05:07.000000000 +0200
+++ config/ac-macros/ssl.m4 2009-04-10 14:15:15.000000000 +0200
@@ -102,7 +102,7 @@
#
# Try to link with openSSL libs in <location>
#
- openssl_libs="-L$location/lib/ -lssl -lcrypto"
+ openssl_libs="-L$location/lib -L$location/lib64 -lssl -lcrypto"
MYSQL_CHECK_SSL_DIR([$openssl_includes], [$openssl_libs])

if test "$mysql_ssl_found" == "no"
++++++ mysql-community-server-5.1.36-bmove512.patch ++++++
PATCH-P0-FEATURE-UPSTREAM: Better handling of memcpy
BUGS: upstream#19975

Standard memcpy should behave better then self made one.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: mysys/mf_keycache.c
===================================================================
--- mysys/mf_keycache.c.orig
+++ mysys/mf_keycache.c
@@ -2646,10 +2646,7 @@ uchar *key_cache_read(KEY_CACHE *keycach
#endif

/* Copy data from the cache buffer */
- if (!(read_length & 511))
- bmove512(buff, block->buffer+offset, read_length);
- else
- memcpy(buff, block->buffer+offset, (size_t) read_length);
+ memcpy(buff, block->buffer+offset, (size_t) read_length);

#if !defined(SERIALIZED_READ_FROM_CACHE)
keycache_pthread_mutex_lock(&keycache->cache_lock);
@@ -2857,10 +2854,7 @@ int key_cache_insert(KEY_CACHE *keycache
#endif

/* Copy data from buff */
- if (!(read_length & 511))
- bmove512(block->buffer+offset, buff, read_length);
- else
- memcpy(block->buffer+offset, buff, (size_t) read_length);
+ memcpy(block->buffer+offset, buff, (size_t) read_length);

#if !defined(SERIALIZED_READ_FROM_CACHE)
keycache_pthread_mutex_lock(&keycache->cache_lock);
@@ -3164,10 +3158,7 @@ int key_cache_write(KEY_CACHE *keycache,
#if !defined(SERIALIZED_READ_FROM_CACHE)
keycache_pthread_mutex_unlock(&keycache->cache_lock);
#endif
- if (!(read_length & 511))
- bmove512(block->buffer+offset, buff, read_length);
- else
- memcpy(block->buffer+offset, buff, (size_t) read_length);
+ memcpy(block->buffer+offset, buff, (size_t) read_length);

#if !defined(SERIALIZED_READ_FROM_CACHE)
keycache_pthread_mutex_lock(&keycache->cache_lock);
++++++ mysql-community-server-5.1.36-hotcopy.patch ++++++
PATCH-P0-FIX-UPSTREAM: Makes hotcopy to ignores log tables
BUGS: upstream#43594, bnc#525325

If you are running hotcopy, you probably want to ignore all
log tables.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

=== modified file 'scripts/mysqlhotcopy.sh'
--- scripts/mysqlhotcopy.sh 2008-03-07 20:45:40 +0000
+++ scripts/mysqlhotcopy.sh 2009-03-12 13:06:42 +0000
@@ -777,7 +777,24 @@ sub get_list_of_tables {
} || [];
warn "Unable to retrieve list of tables in $db: $@" if $@;

- return (map { $_->[0] } @$tables);
+ my @ignore_tables = ();
+
+ # Ignore tables for the mysql database
+ if ($db eq 'mysql') {
+ @ignore_tables = qw(general_log slow_log schema apply_status);
+ }
+
+ my @res = ();
+ if ($#ignore_tables > 1) {
+ my @tmp = (map { $_->[0] } @$tables);
+ for my $t (@tmp) {
+ push(@res, $t) if not exists { map { $_=>1 } @ignore_tables }->{$t};
+ }
+ } else {
+ @res = (map { $_->[0] } @$tables);
+ }
+
+ return @res;
}

sub quote_names {

++++++ mysql-community-server-5.1.45-cnf.patch ++++++
PATCH-P0-FIX-SUSE: Tweak default configuration

This patch adds log file locations and socket location as they should be in
SuSE to the default configuration files.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: support-files/my-huge.cnf.sh
===================================================================
--- support-files/my-huge.cnf.sh.orig
+++ support-files/my-huge.cnf.sh
@@ -131,7 +131,15 @@ server-id = 1
#innodb_flush_log_at_trx_commit = 1
#innodb_lock_wait_timeout = 50

+# The safe_mysqld script
+[safe_mysqld]
+log-error=/var/log/mysql/mysqld.log
+socket = @MYSQL_UNIX_ADDR@
+
+!include_dir /etc/mysql
+
[mysqldump]
+socket = @MYSQL_UNIX_ADDR@
quick
max_allowed_packet = 16M

Index: support-files/my-large.cnf.sh
===================================================================
--- support-files/my-large.cnf.sh.orig
+++ support-files/my-large.cnf.sh
@@ -131,7 +131,15 @@ server-id = 1
#innodb_flush_log_at_trx_commit = 1
#innodb_lock_wait_timeout = 50

+# The safe_mysqld script
+[safe_mysqld]
+log-error=/var/log/mysql/mysqld.log
+socket = @MYSQL_UNIX_ADDR@
+
+!include_dir /etc/mysql
+
[mysqldump]
+socket = @MYSQL_UNIX_ADDR@
quick
max_allowed_packet = 16M

Index: support-files/my-medium.cnf.sh
===================================================================
--- support-files/my-medium.cnf.sh.orig
+++ support-files/my-medium.cnf.sh
@@ -26,6 +26,8 @@ socket = @MYSQL_UNIX_ADDR@
[mysqld]
port = @MYSQL_TCP_PORT@
socket = @MYSQL_UNIX_ADDR@
+# Change following line if you want to store your database elsewhere
+datadir = /var/lib/mysql
skip-locking
key_buffer_size = 16M
max_allowed_packet = 1M
@@ -129,7 +131,15 @@ server-id = 1
#innodb_flush_log_at_trx_commit = 1
#innodb_lock_wait_timeout = 50

+# The safe_mysqld script
+[safe_mysqld]
+log-error = /var/log/mysql/mysqld.log
+socket = @MYSQL_UNIX_ADDR@
+
+!include_dir /etc/mysql
+
[mysqldump]
+socket = @MYSQL_UNIX_ADDR@
quick
max_allowed_packet = 16M

Index: support-files/my-small.cnf.sh
===================================================================
--- support-files/my-small.cnf.sh.orig
+++ support-files/my-small.cnf.sh
@@ -65,7 +65,15 @@ server-id = 1
#innodb_flush_log_at_trx_commit = 1
#innodb_lock_wait_timeout = 50

+# The safe_mysqld script
+[safe_mysqld]
+log-error = /var/log/mysql/mysqld.log
+socket = @MYSQL_UNIX_ADDR@
+
+!include_dir /etc/mysql
+
[mysqldump]
+socket = @MYSQL_UNIX_ADDR@
quick
max_allowed_packet = 16M

++++++ mysql-community-server-5.1.45-group.patch ++++++
PATCH-P0-FEATURE-UPSTREAM: Adds group option

This patch let's you specify not only user to use but also group that MySQL
should use.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: configure.in
===================================================================
--- configure.in.orig
+++ configure.in
@@ -793,6 +793,14 @@ AC_ARG_WITH(mysqld-user,
[ MYSQLD_USER=mysql ]
)
AC_SUBST(MYSQLD_USER)
+AC_ARG_WITH(mysqld-group,
+ [ --with-mysqld-group=groupname
+ What group the mysqld daemon shall be run as.],
+ [ MYSQLD_GROUP=$withval ],
+ [ MYSQLD_GROUP=mysql ]
+ )
+AC_SUBST(MYSQLD_GROUP)
+

# If we should allow LOAD DATA LOCAL
AC_MSG_CHECKING(If we should should enable LOAD DATA LOCAL by default)
Index: scripts/Makefile.am
===================================================================
--- scripts/Makefile.am.orig
+++ scripts/Makefile.am
@@ -185,6 +185,7 @@ SUFFIXES = .sh
-e 's!@''TARGET_LINUX''@!@TARGET_LINUX@!' \
-e "s!@""CONF_COMMAND""@!@CONF_COMMAND@!" \
-e 's!@''MYSQLD_USER''@!@MYSQLD_USER@!' \
+ -e 's!@''MYSQLD_GROUP''@!@MYSQLD_GROUP@!' \
-e 's!@''STATIC_NSS_FLAGS''@!@STATIC_NSS_FLAGS@!' \
-e 's!@''NON_THREADED_LIBS''@!@NON_THREADED_LIBS@!' \
-e 's!@''ZLIB_DEPS''@!@ZLIB_DEPS@!' \
Index: scripts/mysqld_safe.sh
===================================================================
--- scripts/mysqld_safe.sh.orig
+++ scripts/mysqld_safe.sh
@@ -19,6 +19,7 @@ logging=init
want_syslog=0
syslog_tag=
user='@MYSQLD_USER@'
+group='@MYSQLD_GROUP@'
pid_file=
err_log=

@@ -162,6 +163,7 @@ parse_arguments() {
--datadir=*) DATADIR="$val" ;;
--pid-file=*) pid_file="$val" ;;
--user=*) user="$val"; SET_USER=1 ;;
+ --group=*) group="$val"; SET_USER=1 ;;

# 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
@@ -388,11 +390,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
touch "$err_log"
- chown $user "$err_log"
+ if [ "$user" -a "$group" ]; then
+ chown $user:$group $err_log
+ else
+ [ "$user" ] && chown $user $err_log
+ [ "$group" ] && chgrp $group $err_log
+ fi
fi
if test -n "$open_files"
then
@@ -407,7 +415,12 @@ mysql_unix_port_dir=`dirname $safe_mysql
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
fi

Index: scripts/mysql_install_db.sh
===================================================================
--- scripts/mysql_install_db.sh.orig
+++ scripts/mysql_install_db.sh
@@ -28,6 +28,7 @@ args=""
defaults=""
mysqld_opt=""
user=""
+group=""

force=0
in_rpm=0
@@ -63,6 +64,11 @@ Usage: $0 [OPTIONS]
user. You must be root to use this option. By default
mysqld runs using your current login name and files and
directories that it creates will be owned by you.
+ --group=group_name The login group to use for running mysqld. Files and
+ directories created by mysqld will be owned by this
+ group. You must be root to use this option. By default
+ mysqld runs using your current group and files and
+ directories that it creates will be owned by you.

All other options are passed to the mysqld program

@@ -103,11 +109,11 @@ parse_arguments()
--builddir=*) builddir=`parse_arg "$arg"` ;;
--srcdir=*) srcdir=`parse_arg "$arg"` ;;
--ldata=*|--datadir=*) ldata=`parse_arg "$arg"` ;;
- --user=*)
# Note that the user will be passed to mysqld so that it runs
# as 'user' (crucial e.g. if log-bin=/some_other_path/
# where a chown of datadir won't help)
- user=`parse_arg "$arg"` ;;
+ --user=*) user=`parse_arg "$arg"` ;;
+ --group=*) group=`parse_arg "$arg"` ;;
--skip-name-resolve) ip_only=1 ;;
--verbose) verbose=1 ;; # Obsolete
--rpm) in_rpm=1 ;;
@@ -360,7 +366,12 @@ do
fi
if test -w / -a ! -z "$user"
then
- chown $user $dir
+ if test -z "$group"
+ then
+ chown $user $dir
+ else
+ chown $user:$group $dir
+ fi
fi
done

@@ -369,6 +380,11 @@ then
args="$args --user=$user"
fi

+if test -n "$group"
+then
+ args="$args --group=$group"
+fi
+
# When doing a "cross bootstrap" install, no reference to the current
# host should be added to the system tables. So we filter out any
# lines which contain the current host name.
++++++ mysql-community-server-5.1.45-multi-configuration.patch ++++++
PATCH-P0-FEATURE-SUSE: Add multi configuration

This patch adds example of how to setup multiple running MySQL servers. It is
by default commented out, but it can be used as an example and help people
start with new configuration.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: support-files/my-medium.cnf.sh
===================================================================
--- support-files/my-medium.cnf.sh.orig
+++ support-files/my-medium.cnf.sh
@@ -154,3 +154,46 @@ write_buffer = 2M

[mysqlhotcopy]
interactive-timeout
+
+[mysqld_multi]
+mysqld = /usr/bin/mysqld_safe
+mysqladmin = /usr/bin/mysqladmin
+log = /var/log/mysqld_multi.log
+# user = multi_admin
+# password = secret
+
+# If you want to use mysqld_multi uncomment 1 or more mysqld sections
+# below or add your own ones.
+
+# WARNING
+# --------
+# If you uncomment mysqld1 than make absolutely sure, that database mysql,
+# configured above, is not started. This may result in corrupted data!
+# [mysqld1]
+# port = @MYSQL_TCP_PORT@
+# datadir = /var/lib/mysql
+# pid-file = /var/lib/mysql/mysqld.pid
+# socket = /var/lib/mysql/mysql.sock
+# user = mysql
+
+# [mysqld2]
+# port = 3307
+# datadir = /var/lib/mysql-databases/mysqld2
+# pid-file = /var/lib/mysql-databases/mysqld2/mysql.pid
+# socket = /var/lib/mysql-databases/mysqld2/mysql.sock
+# user = mysql
+
+# [mysqld3]
+# port = 3308
+# datadir = /var/lib/mysql-databases/mysqld3
+# pid-file = /var/lib/mysql-databases/mysqld3/mysql.pid
+# socket = /var/lib/mysql-databases/mysqld3/mysql.sock
+# user = mysql
+
+# [mysqld6]
+# port = 3309
+# datadir = /var/lib/mysql-databases/mysqld6
+# pid-file = /var/lib/mysql-databases/mysqld6/mysql.pid
+# socket = /var/lib/mysql-databases/mysqld6/mysql.sock
+# user = mysql
+
++++++ mysql-community-server-5.1.45-safe-process-in-bin.patch ++++++
PATCH-P0-FEATURE-SUSE: Moving SafeProcess to /usr/bin

We prefer to have this script somewhere else, so we moved it out of
the mysql-test directory.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: mysql-test/lib/My/SafeProcess.pm
===================================================================
--- mysql-test/lib/My/SafeProcess.pm.orig
+++ mysql-test/lib/My/SafeProcess.pm
@@ -89,7 +89,7 @@ sub find_bin {
if (IS_WIN32PERL or IS_CYGWIN)
{
# Use my_safe_process.exe
- my $exe= my_find_bin(".", ["lib/My/SafeProcess", "My/SafeProcess"],
+ my $exe= my_find_bin(".", ["../../bin", "lib/My/SafeProcess",
"My/SafeProcess"],
"my_safe_process");
push(@safe_process_cmd, $exe);

@@ -99,7 +99,7 @@ sub find_bin {
else
{
# Use my_safe_process
- my $exe= my_find_bin(".", ["lib/My/SafeProcess", "My/SafeProcess"],
+ my $exe= my_find_bin(".", ["../../bin", "lib/My/SafeProcess",
"My/SafeProcess"],
"my_safe_process");
push(@safe_process_cmd, $exe);
}
++++++ mysql-community-server-5.1.46-logrotate.patch ++++++
PATCH-P0-FIX-SUSE: Fix log file path for logrotate

In SUSE we've got MySQL log in different directory. It's located in
/var/log/mysql by default. It also adds some extra error message.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: support-files/mysql-log-rotate.sh
===================================================================
--- support-files/mysql-log-rotate.sh.orig
+++ support-files/mysql-log-rotate.sh
@@ -18,7 +18,7 @@
# ATTENTION: This /root/.my.cnf should be readable ONLY
# for root !

-@localstatedir@/mysqld.log {
+/var/log/mysql/mysqld.log {
# create 600 mysql mysql
notifempty
daily
@@ -31,6 +31,14 @@
@bindir@/mysqladmin ping &>/dev/null
then
@bindir@/mysqladmin flush-logs
+ ret=$?
+ if test $ret -ne 0
+ then
+ echo "@sysconfdir@/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
+ exit $ret
+ fi
fi
endscript
}
++++++ mysql-community-server-5.1.50-strncat-overflow.patch ++++++
PATCH-P0-FIX-UPSTREAM: Fix possible buffer overflow

strncat function is used with n not depending on current length of string we
are appending to. Result might be buffer overflow.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: mysys/mf_loadpath.c
===================================================================
--- mysys/mf_loadpath.c.orig
+++ mysys/mf_loadpath.c
@@ -42,7 +42,7 @@ char * my_load_path(char * to, const cha
if (is_cur)
is_cur=2; /* Remove current dir */
if (! my_getwd(buff,(uint) (FN_REFLEN-strlen(path)+is_cur),MYF(0)))
- VOID(strncat(buff, path+is_cur, FN_REFLEN-1));
+ VOID(strncat(buff, path+is_cur, FN_REFLEN-strlen(buff)-1));
else
VOID(strnmov(buff, path, FN_REFLEN)); /* Return org file name */
}
++++++ mysql-community-server-5.1.51-install_db-quiet.patch ++++++
PATCH-P0-FEATURE-SUSE: Use better comments in install_db

We ship init script so we don't need to warn user to install one and we also
have a testsuite in separate packege.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: scripts/mysql_install_db.sh
===================================================================
--- scripts/mysql_install_db.sh.orig
+++ scripts/mysql_install_db.sh
@@ -452,9 +452,10 @@ fi
# the screen.
if test "$cross_bootstrap" -eq 0 && test -z "$srcdir"
then
- s_echo
- s_echo "To start mysqld at boot time you have to copy"
- s_echo "support-files/mysql.server to the right place for your system"
+# Output disabled, since the SUSE RPM comes with an init script installed
+# s_echo
+# s_echo "To start mysqld at boot time you have to copy"
+# s_echo "support-files/mysql.server to the right place for your system"

echo
echo "PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !"
@@ -476,10 +477,10 @@ then
then
echo
echo "You can start the MySQL daemon with:"
- echo "cd $basedir ; $bindir/mysqld_safe &"
+ echo "rcmysql start"
echo
- echo "You can test the MySQL daemon with mysql-test-run.pl"
- echo "cd $basedir/mysql-test ; perl mysql-test-run.pl"
+ echo "You can test the MySQL daemon with mysql-test package"
+# echo "cd $basedir/mysql-test ; perl mysql-test-run.pl"
fi

echo
++++++ mysql-community-server-5.1.51-libmysql-no-pkglibdir.patch ++++++
PATCH-P0-FIX-UPSTREAM: Use lib_LIBRARIES instead of pkglib_LIBRARIES

Make more sense and is more intuitive when compiling.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: libmysql/Makefile.shared
===================================================================
--- libmysql/Makefile.shared.orig
+++ libmysql/Makefile.shared
@@ -26,7 +26,7 @@ MYSQLBASEdir= $(prefix)
## We'll use CLIENT_EXTRA_LDFLAGS for threaded and non-threaded
## until someone complains that they need separate options.
LDADD = @CLIENT_EXTRA_LDFLAGS@ $(target)
-pkglib_LTLIBRARIES = $(target)
+lib_LTLIBRARIES = $(target)

noinst_PROGRAMS = conf_to_src

Index: libmysqld/Makefile.am
===================================================================
--- libmysqld/Makefile.am.orig
+++ libmysqld/Makefile.am
@@ -37,7 +37,7 @@ INCLUDES= -I$(top_builddir)/include -I$
@condition_dependent_plugin_includes@

noinst_LIBRARIES = libmysqld_int.a
-pkglib_LIBRARIES = libmysqld.a
+lib_LIBRARIES = libmysqld.a
SUBDIRS = . examples
libmysqld_sources= libmysqld.c lib_sql.cc emb_qcache.cc
libmysqlsources = errmsg.c get_password.c libmysql.c client.c pack.c \
++++++ mysql-community-server-5.1.51-myslq-test.patch ++++++
PATCH-P0-FEATURE-SUSE: Tests in $(datadir)

By default tests would get installed to /usr and as we want it LSB compilant,
we install them into /usr/share.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: mysql-test/Makefile.am
===================================================================
--- mysql-test/Makefile.am.orig
+++ mysql-test/Makefile.am
@@ -17,7 +17,7 @@

## Process this file with automake to create Makefile.in

-testroot = $(prefix)
+testroot = $(datadir)
testdir = $(testroot)/mysql-test

test_SCRIPTS = mtr \
Index: mysql-test/lib/My/SafeProcess/Makefile.am
===================================================================
--- mysql-test/lib/My/SafeProcess/Makefile.am.orig
+++ mysql-test/lib/My/SafeProcess/Makefile.am
@@ -13,7 +13,7 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

-testroot = $(prefix)
+testroot = $(datadir)
safedir = $(testroot)/mysql-test/lib/My/SafeProcess
#nobase_bin_PROGRAMS = ...
safe_PROGRAMS = my_safe_process
++++++ mysql-community-server-5.1.51-mysql_config.patch ++++++
PATCH-P0-FIX-UPSTREAM: Fix linking options
BUGS: upstream#39175, bnc#420313

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: scripts/mysql_config.sh
===================================================================
--- scripts/mysql_config.sh.orig
+++ scripts/mysql_config.sh
@@ -94,7 +94,7 @@ fix_path pkgincludedir include/mysql inc

version='@VERSION@'
socket='@MYSQL_UNIX_ADDR@'
-ldflags='@LDFLAGS@'
+ldflags='@SAVE_LDFLAGS@'

if [ @MYSQL_TCP_PORT_DEFAULT@ -eq 0 ]; then
port=0
++++++ mysql-community-server-5.1.51-mysqld_multi-features.patch ++++++
PATCH-P0-FEATURE-UPSTREAM: Add more functionality to mysqld_multi script

Adds reload funcionality to mysqld_multi.sh perl script and adds --datadir
support.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: scripts/mysqld_multi.sh
===================================================================
--- scripts/mysqld_multi.sh.orig
+++ scripts/mysqld_multi.sh
@@ -2,6 +2,7 @@

use Getopt::Long;
use POSIX qw(strftime getcwd);
+use File::Path qw(mkpath);

$|=1;
$VER="2.16";
@@ -125,6 +126,7 @@ sub main
usage() if (!defined($ARGV[0]) ||
(!($ARGV[0] =~ m/^start$/i) &&
!($ARGV[0] =~ m/^stop$/i) &&
+ !($ARGV[0] =~ m/^reload$/i) &&
!($ARGV[0] =~ m/^report$/i)));

if (!$opt_no_log)
@@ -138,7 +140,7 @@ sub main
print strftime "%a %b %e %H:%M:%S %Y", localtime;
print "\n";
}
- if ($ARGV[0] =~ m/^start$/i)
+ if (($ARGV[0] =~ m/^start$/i) || ($ARGV[0] =~ m/^reload$/i))
{
if (!defined(($mysqld= my_which($opt_mysqld))) && $opt_verbose)
{
@@ -147,7 +149,11 @@ sub main
print "This is OK, if you are using option \"mysqld=...\" in ";
print "groups [mysqldN] separately for each.\n\n";
}
- start_mysqlds();
+ if ($ARGV[0] =~ m/^start$/i) {
+ start_mysqlds();
+ } elsif ($ARGV[0] =~ m/^reload$/i) {
+ reload_mysqlds();
+ }
}
else
{
@@ -303,6 +309,39 @@ sub start_mysqlds()
$com= "$mysqld";
for ($j = 0, $tmp= ""; defined($options[$j]); $j++)
{
+ if ("--datadir=" eq substr($options[$j], 0, 10)) {
+ $datadir = $options[$j];
+ $datadir =~ s/\-\-datadir\=//;
+ eval { mkpath($datadir) };
+ if ($@) {
+ print "FATAL ERROR: Cannot create data directory $datadir: $!\n";
+ exit(1);
+ }
+ if (! -d $datadir."/mysql") {
+ if (-w $datadir) {
+ print "\n\nInstalling new database in $datadir\n\n";
+ $install_cmd="@bindir@/mysql_install_db ";
+ $install_cmd.="--user=mysql ";
+ $install_cmd.="--datadir=$datadir";
+ system($install_cmd);
+ } else {
+ print "\n";
+ print "FATAL ERROR: Tried to create mysqld under group
[$groups[$i]],\n";
+ print "but the data directory is not writable.\n";
+ print "data directory used: $datadir\n";
+ exit(1);
+ }
+ }
+
+ if (! -d $datadir."/mysql") {
+ print "\n";
+ print "FATAL ERROR: Tried to start mysqld under group
[$groups[$i]],\n";
+ print "but no data directory was found or could be created.\n";
+ print "data directory used: $datadir\n";
+ exit(1);
+ }
+ }
+
if ("--mysqladmin=" eq substr($options[$j], 0, 13))
{
# catch this and ignore
@@ -367,6 +406,58 @@ sub start_mysqlds()
}

####
+#### reload multiple servers
+####
+
+sub reload_mysqlds()
+{
+ my (@groups, $com, $tmp, $i, @options, $j);
+
+ if (!$opt_no_log)
+ {
+ w2log("\nReloading MySQL servers\n","$opt_log",0,0);
+ }
+ else
+ {
+ print "\nReloading MySQL servers\n";
+ }
+ @groups = &find_groups($groupids);
+ for ($i = 0; defined($groups[$i]); $i++)
+ {
+ $mysqld_server = $mysqld;
+ @options = defaults_for_group($groups[$i]);
+
+ for ($j = 0, $tmp= ""; defined($options[$j]); $j++)
+ {
+ if ("--mysqladmin=" eq substr($options[$j], 0, 13))
+ {
+ # catch this and ignore
+ }
+ elsif ("--mysqld=" eq substr($options[$j], 0, 9))
+ {
+ $options[$j] =~ s/\-\-mysqld\=//;
+ $mysqld_server = $options[$j];
+ }
+ elsif ("--pid-file=" eq substr($options[$j], 0, 11))
+ {
+ $options[$j] =~ s/\-\-pid-file\=//;
+ $pid_file = $options[$j];
+ }
+ }
+ $com = "killproc -p $pid_file -HUP $mysqld_server";
+ system($com);
+
+ $com = "touch $pid_file";
+ system($com);
+ }
+ if (!$i && !$opt_no_log)
+ {
+ w2log("No MySQL servers to be reloaded (check your GNRs)",
+ "$opt_log", 0, 0);
+ }
+}
+
+###
#### stop multiple servers
####

@@ -729,7 +820,7 @@ sub usage
$my_progname version $VER by Jani Tolonen

Description:
-$my_progname can be used to start, or stop any number of separate
+$my_progname can be used to start, reload, or stop any number of separate
mysqld processes running in different TCP/IP ports and UNIX sockets.

$my_progname can read group [mysqld_multi] from my.cnf file. You may
@@ -747,16 +838,16 @@ starting from 1. These groups should be
[mysqld] group, but with those port, socket and any other options
that are to be used with each separate mysqld process. The number
in the group name has another function; it can be used for starting,
-stopping, or reporting any specific mysqld server.
+reloading, stopping, or reporting any specific mysqld server.

-Usage: $my_progname [OPTIONS] {start|stop|report} [GNR,GNR,GNR...]
-or $my_progname [OPTIONS] {start|stop|report} [GNR-GNR,GNR,GNR-GNR,...]
+Usage: $my_progname [OPTIONS] {start|reload|stop|report} [GNR,GNR,GNR...]
+or $my_progname [OPTIONS] {start|reload|stop|report}
[GNR-GNR,GNR,GNR-GNR,...]

-The GNR means the group number. You can start, stop or report any GNR,
+The GNR means the group number. You can start, reload, stop or report any GNR,
or several of them at the same time. (See --example) The GNRs list can
be comma separated or a dash combined. The latter means that all the
GNRs between GNR1-GNR2 will be affected. Without GNR argument all the
-groups found will either be started, stopped, or reported. Note that
+groups found will either be started, reloaded, stopped, or reported. Note that
syntax for specifying GNRs must appear without spaces.

Options:
++++++ mysql-community-server-5.1.51-plugins-avoid-version.patch ++++++
PATCH-P0-FEATURE-SUSE: Avoid version for all plugins

Making all storage plugins unversioned.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: storage/blackhole/Makefile.am
===================================================================
--- storage/blackhole/Makefile.am.orig
+++ storage/blackhole/Makefile.am
@@ -34,7 +34,7 @@ noinst_HEADERS = ha_blackhole.h

EXTRA_LTLIBRARIES = ha_blackhole.la
pkgplugin_LTLIBRARIES = @plugin_blackhole_shared_target@
-ha_blackhole_la_LDFLAGS=-module -rpath $(pkgplugindir)
+ha_blackhole_la_LDFLAGS=-module -avoid-version -rpath $(pkgplugindir)
ha_blackhole_la_CXXFLAGS=$(AM_CXXFLAGS) -DMYSQL_DYNAMIC_PLUGIN
ha_blackhole_la_CFLAGS= $(AM_CFLAGS) -DMYSQL_DYNAMIC_PLUGIN
ha_blackhole_la_SOURCES=ha_blackhole.cc
Index: storage/archive/Makefile.am
===================================================================
--- storage/archive/Makefile.am.orig
+++ storage/archive/Makefile.am
@@ -35,7 +35,7 @@ noinst_PROGRAMS = archive_test archive_r

EXTRA_LTLIBRARIES = ha_archive.la
pkgplugin_LTLIBRARIES = @plugin_archive_shared_target@
-ha_archive_la_LDFLAGS = -module -rpath $(pkgplugindir)
+ha_archive_la_LDFLAGS = -module -avoid-version -rpath $(pkgplugindir)
ha_archive_la_CXXFLAGS= $(AM_CXXFLAGS) -DMYSQL_DYNAMIC_PLUGIN
ha_archive_la_CFLAGS = $(AM_CFLAGS) -DMYSQL_DYNAMIC_PLUGIN
ha_archive_la_SOURCES = ha_archive.cc azio.c
Index: storage/example/Makefile.am
===================================================================
--- storage/example/Makefile.am.orig
+++ storage/example/Makefile.am
@@ -34,7 +34,7 @@ noinst_HEADERS = ha_example.h

EXTRA_LTLIBRARIES = ha_example.la
pkgplugin_LTLIBRARIES = @plugin_example_shared_target@
-ha_example_la_LDFLAGS = -module -rpath $(pkgplugindir)
+ha_example_la_LDFLAGS = -module -avoid-version -rpath $(pkgplugindir)
ha_example_la_CXXFLAGS= $(AM_CXXFLAGS) -DMYSQL_DYNAMIC_PLUGIN
ha_example_la_CFLAGS = $(AM_CFLAGS) -DMYSQL_DYNAMIC_PLUGIN
ha_example_la_SOURCES = ha_example.cc
Index: storage/federated/Makefile.am
===================================================================
--- storage/federated/Makefile.am.orig
+++ storage/federated/Makefile.am
@@ -34,7 +34,7 @@ noinst_HEADERS = ha_federated.h

EXTRA_LTLIBRARIES = ha_federated.la
pkgplugin_LTLIBRARIES = @plugin_federated_shared_target@
-ha_federated_la_LDFLAGS = -module -rpath $(pkgplugindir)
+ha_federated_la_LDFLAGS = -module -avoid-version -rpath $(pkgplugindir)
ha_federated_la_CXXFLAGS= $(AM_CXXFLAGS) -DMYSQL_DYNAMIC_PLUGIN
ha_federated_la_CFLAGS = $(AM_CFLAGS) -DMYSQL_DYNAMIC_PLUGIN
ha_federated_la_SOURCES = ha_federated.cc
Index: storage/innodb_plugin/Makefile.am
===================================================================
--- storage/innodb_plugin/Makefile.am.orig
+++ storage/innodb_plugin/Makefile.am
@@ -331,7 +331,7 @@ libinnobase_a_CFLAGS= $(AM_CFLAGS)
EXTRA_LTLIBRARIES= ha_innodb_plugin.la
pkgplugin_LTLIBRARIES= @plugin_innodb_plugin_shared_target@

-ha_innodb_plugin_la_LDFLAGS= -module -rpath $(pkgplugindir)
+ha_innodb_plugin_la_LDFLAGS= -module -avoid-version -rpath $(pkgplugindir)
ha_innodb_plugin_la_CXXFLAGS= $(AM_CXXFLAGS) $(INNODB_DYNAMIC_CFLAGS)
ha_innodb_plugin_la_CFLAGS= $(AM_CFLAGS) $(INNODB_DYNAMIC_CFLAGS)
ha_innodb_plugin_la_SOURCES= $(libinnobase_a_SOURCES)
++++++ mysql-community-server-5.1.51-upgrade-exit-status.patch ++++++
PATCH-P0-FEATURE-SUSE: Returning 0 when already upgraded.

Returning non-zero exit status in this case is not nice to scripts using
mysql_upgrade (eg. our init script)

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: client/mysql_upgrade.c
===================================================================
--- client/mysql_upgrade.c.orig
+++ client/mysql_upgrade.c
@@ -858,7 +858,9 @@ int main(int argc, char **argv)
printf("This installation of MySQL is already upgraded to %s, "
"use --force if you still need to run mysql_upgrade\n",
MYSQL_SERVER_VERSION);
- die(NULL);
+ free_used_memory();
+ my_end(MY_CHECK_ERROR);
+ exit(0);
}

/*
Index: mysql-test/t/mysql_upgrade.test
===================================================================
--- mysql-test/t/mysql_upgrade.test.orig
+++ mysql-test/t/mysql_upgrade.test
@@ -40,7 +40,7 @@ file_exists $MYSQLD_DATADIR/mysql_upgrad

--echo Run it again - should say already completed
--replace_result $MYSQL_SERVER_VERSION VERSION
---error 1
+--error 0
--exec $MYSQL_UPGRADE --skip-verbose 2>&1

# It should have created a file in the MySQL Servers datadir
++++++ mysql-community-server-5.1.52-utf8-test-results.patch ++++++
PATCH-P0-FIX-SUSE: Fix test results confused by utf-8

We are using utf-8 as a default charset during the compilation and it has some
effect on the test results. Correct sollution would be to make these results
charset independent, but easiest one is obviously to modify them to reflect our
default settings.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: mysql-test/r/information_schema.result
===================================================================
--- mysql-test/r/information_schema.result.orig
+++ mysql-test/r/information_schema.result
@@ -9,7 +9,7 @@ create user mysqltest_3@localhost;
create user mysqltest_3;
select * from information_schema.SCHEMATA where schema_name > 'm';
CATALOG_NAME SCHEMA_NAME DEFAULT_CHARACTER_SET_NAME
DEFAULT_COLLATION_NAME SQL_PATH
-NULL mtr latin1 latin1_swedish_ci NULL
+NULL mtr utf8 utf8_unicode_ci NULL
NULL mysql latin1 latin1_swedish_ci NULL
NULL test latin1 latin1_swedish_ci NULL
select schema_name from information_schema.schemata;
Index: mysql-test/r/mysql_comments.result
===================================================================
--- mysql-test/r/mysql_comments.result.orig
+++ mysql-test/r/mysql_comments.result
@@ -13,23 +13,23 @@ drop trigger if exists t1_bi;
foofct("call 1")
call 1
Function sql_mode Create Function character_set_client
collation_connection Database Collation
-foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20))
RETURNS char(20) CHARSET latin1\nreturn\n\n\n\nx latin1
latin1_swedish_ci latin1_swedish_ci
+foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20))
RETURNS char(20) CHARSET latin1\nreturn\n\n\n\nx utf8 utf8_unicode_ci
latin1_swedish_ci
foofct("call 2")
call 2
Function sql_mode Create Function character_set_client
collation_connection Database Collation
-foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20))
RETURNS char(20) CHARSET latin1\nbegin\n \n \n \n\n \n\n \n return
x;\nend latin1 latin1_swedish_ci latin1_swedish_ci
+foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20))
RETURNS char(20) CHARSET latin1\nbegin\n \n \n \n\n \n\n \n return
x;\nend utf8 utf8_unicode_ci latin1_swedish_ci
Procedure sql_mode Create Procedure character_set_client
collation_connection Database Collation
-empty CREATE DEFINER=`root`@`localhost` PROCEDURE
`empty`()\nbegin\nend latin1 latin1_swedish_ci latin1_swedish_ci
+empty CREATE DEFINER=`root`@`localhost` PROCEDURE
`empty`()\nbegin\nend utf8 utf8_unicode_ci latin1_swedish_ci
id data
foo 42
Procedure sql_mode Create Procedure character_set_client
collation_connection Database Collation
-foosp CREATE DEFINER=`root`@`localhost` PROCEDURE `foosp`()\ninsert
into test.t1\n\n\n\n\n \n\n \n values ("foo", 42) latin1
latin1_swedish_ci latin1_swedish_ci
+foosp CREATE DEFINER=`root`@`localhost` PROCEDURE `foosp`()\ninsert
into test.t1\n\n\n\n\n \n\n \n values ("foo", 42) utf8
utf8_unicode_ci latin1_swedish_ci
Procedure sql_mode Create Procedure character_set_client
collation_connection Database Collation
-nicesp CREATE DEFINER=`root`@`localhost` PROCEDURE `nicesp`(a
int)\nbegin\n \n declare b int;\n declare c float;\n\n \n \n\n \nend
latin1 latin1_swedish_ci latin1_swedish_ci
+nicesp CREATE DEFINER=`root`@`localhost` PROCEDURE `nicesp`(a
int)\nbegin\n \n declare b int;\n declare c float;\n\n \n \n\n \nend
utf8 utf8_unicode_ci latin1_swedish_ci
Trigger sql_mode SQL Original Statement character_set_client
collation_connection Database Collation
-t1_empty CREATE DEFINER=`root`@`localhost` trigger t1_empty
after delete on t1\nfor each row\nbegin\nend latin1 latin1_swedish_ci
latin1_swedish_ci
+t1_empty CREATE DEFINER=`root`@`localhost` trigger t1_empty
after delete on t1\nfor each row\nbegin\nend utf8 utf8_unicode_ci
latin1_swedish_ci
Trigger sql_mode SQL Original Statement character_set_client
collation_connection Database Collation
-t1_bi CREATE DEFINER=`root`@`localhost` trigger t1_bi before insert
on t1\nfor each row\nbegin\n\n\n\n \n declare b int;\n declare c float;\n\n
\n \n\n \n set NEW.data := 12;\nend latin1 latin1_swedish_ci
latin1_swedish_ci
+t1_bi CREATE DEFINER=`root`@`localhost` trigger t1_bi before insert
on t1\nfor each row\nbegin\n\n\n\n \n declare b int;\n declare c float;\n\n
\n \n\n \n set NEW.data := 12;\nend utf8 utf8_unicode_ci
latin1_swedish_ci
id data
trig 12
"Pass 2 : --enable-comments"
@@ -40,23 +40,23 @@ trig 12
foofct("call 1")
call 1
Function sql_mode Create Function character_set_client
collation_connection Database Collation
-foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20))
RETURNS char(20) CHARSET latin1\nreturn\n-- comment 1a\n# comment 1b\n/*
comment 1c */\nx # after body, on same line latin1 latin1_swedish_ci
latin1_swedish_ci
+foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20))
RETURNS char(20) CHARSET latin1\nreturn\n-- comment 1a\n# comment 1b\n/*
comment 1c */\nx # after body, on same line utf8 utf8_unicode_ci
latin1_swedish_ci
foofct("call 2")
call 2
Function sql_mode Create Function character_set_client
collation_connection Database Collation
-foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20))
RETURNS char(20) CHARSET latin1\nbegin\n -- comment 1a\n # comment 1b\n /*\n
comment 1c\n */\n\n -- empty line below\n\n -- empty line above\n
return x;\nend latin1 latin1_swedish_ci latin1_swedish_ci
+foofct CREATE DEFINER=`root`@`localhost` FUNCTION `foofct`(x char(20))
RETURNS char(20) CHARSET latin1\nbegin\n -- comment 1a\n # comment 1b\n /*\n
comment 1c\n */\n\n -- empty line below\n\n -- empty line above\n
return x;\nend utf8 utf8_unicode_ci latin1_swedish_ci
Procedure sql_mode Create Procedure character_set_client
collation_connection Database Collation
-empty CREATE DEFINER=`root`@`localhost` PROCEDURE
`empty`()\nbegin\nend latin1 latin1_swedish_ci latin1_swedish_ci
+empty CREATE DEFINER=`root`@`localhost` PROCEDURE
`empty`()\nbegin\nend utf8 utf8_unicode_ci latin1_swedish_ci
id data
foo 42
Procedure sql_mode Create Procedure character_set_client
collation_connection Database Collation
-foosp CREATE DEFINER=`root`@`localhost` PROCEDURE `foosp`()\ninsert
into test.t1\n## These comments are part of the procedure body, and should be
kept.\n# Comment 2a\n-- Comment 2b\n/* Comment 2c */\n -- empty line below\n\n
-- empty line above\n values ("foo", 42) # comment 3, still part of the body
latin1 latin1_swedish_ci latin1_swedish_ci
+foosp CREATE DEFINER=`root`@`localhost` PROCEDURE `foosp`()\ninsert
into test.t1\n## These comments are part of the procedure body, and should be
kept.\n# Comment 2a\n-- Comment 2b\n/* Comment 2c */\n -- empty line below\n\n
-- empty line above\n values ("foo", 42) # comment 3, still part of the body
utf8 utf8_unicode_ci latin1_swedish_ci
Procedure sql_mode Create Procedure character_set_client
collation_connection Database Collation
-nicesp CREATE DEFINER=`root`@`localhost` PROCEDURE `nicesp`(a
int)\nbegin\n -- declare some variables here\n declare b int;\n declare c
float;\n\n -- do more stuff here\n -- commented nicely and so on\n\n --
famous last words ...\nend latin1 latin1_swedish_ci
latin1_swedish_ci
+nicesp CREATE DEFINER=`root`@`localhost` PROCEDURE `nicesp`(a
int)\nbegin\n -- declare some variables here\n declare b int;\n declare c
float;\n\n -- do more stuff here\n -- commented nicely and so on\n\n --
famous last words ...\nend utf8 utf8_unicode_ci latin1_swedish_ci
Trigger sql_mode SQL Original Statement character_set_client
collation_connection Database Collation
-t1_empty CREATE DEFINER=`root`@`localhost` trigger t1_empty
after delete on t1\nfor each row\nbegin\nend latin1 latin1_swedish_ci
latin1_swedish_ci
+t1_empty CREATE DEFINER=`root`@`localhost` trigger t1_empty
after delete on t1\nfor each row\nbegin\nend utf8 utf8_unicode_ci
latin1_swedish_ci
Trigger sql_mode SQL Original Statement character_set_client
collation_connection Database Collation
-t1_bi CREATE DEFINER=`root`@`localhost` trigger t1_bi before insert
on t1\nfor each row\nbegin\n# comment 1a\n-- comment 1b\n/*\n comment
1c\n*/\n -- declare some variables here\n declare b int;\n declare c
float;\n\n -- do more stuff here\n -- commented nicely and so on\n\n --
famous last words ...\n set NEW.data := 12;\nend latin1
latin1_swedish_ci latin1_swedish_ci
+t1_bi CREATE DEFINER=`root`@`localhost` trigger t1_bi before insert
on t1\nfor each row\nbegin\n# comment 1a\n-- comment 1b\n/*\n comment
1c\n*/\n -- declare some variables here\n declare b int;\n declare c
float;\n\n -- do more stuff here\n -- commented nicely and so on\n\n --
famous last words ...\n set NEW.data := 12;\nend utf8 utf8_unicode_ci
latin1_swedish_ci
id data
trig 12
End of 5.0 tests
Index: mysql-test/r/mysql_upgrade.result
===================================================================
--- mysql-test/r/mysql_upgrade.result.orig
+++ mysql-test/r/mysql_upgrade.result
@@ -166,8 +166,8 @@ mysql.time_zone_transition_type
mysql.user OK
CALL testproc();
DROP PROCEDURE testproc;
-WARNING: NULL values of the 'character_set_client' column ('mysql.proc' table)
have been updated with a default value (latin1). Please verify if necessary.
-WARNING: NULL values of the 'collation_connection' column ('mysql.proc' table)
have been updated with a default value (latin1_swedish_ci). Please verify if
necessary.
+WARNING: NULL values of the 'character_set_client' column ('mysql.proc' table)
have been updated with a default value (utf8). Please verify if necessary.
+WARNING: NULL values of the 'collation_connection' column ('mysql.proc' table)
have been updated with a default value (utf8_unicode_ci). Please verify if
necessary.
WARNING: NULL values of the 'db_collation' column ('mysql.proc' table) have
been updated with default values. Please verify if necessary.
#
# Bug #53613: mysql_upgrade incorrectly revokes
++++++ mysql-community-server-5.1.53-ssl-compilation-fix.patch ++++++
PATCH-P0-FIX-UPSTREAM: Incompatible types in ssl

Sometimes argument of this function can be const and function doesn't change
the variable so there is no reason not to make that argument const;

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: vio/viosslfactories.c
===================================================================
--- vio/viosslfactories.c.orig
+++ vio/viosslfactories.c
@@ -198,7 +198,7 @@ static void check_ssl_init()
static struct st_VioSSLFd *
new_VioSSLFd(const char *key_file, const char *cert_file,
const char *ca_file, const char *ca_path,
- const char *cipher, SSL_METHOD *method,
+ const char *cipher, const SSL_METHOD *method,
enum enum_ssl_init_error* error)
{
DH *dh;
++++++ mysql-community-server-5.1.56-compilation-fix.patch ++++++
PATCH-P0-HACK-SUSE: Fixing few compilation problems

Mostly minor things. Mostly just to make compiler happy as it can't determine
that everything is ok. But few things might actually worth reporting as they
could be handled better (mostly the write calls).

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: client/readline.cc
===================================================================
--- client/readline.cc.orig
+++ client/readline.cc
@@ -55,7 +55,7 @@ LINE_BUFFER *batch_readline_init(ulong m
char *batch_readline(LINE_BUFFER *line_buff)
{
char *pos;
- ulong out_length;
+ ulong out_length=0;

if (!(pos=intern_read_line(line_buff, &out_length)))
return 0;
Index: storage/innobase/ut/ut0ut.c
===================================================================
--- storage/innobase/ut/ut0ut.c.orig
+++ storage/innobase/ut/ut0ut.c
@@ -495,7 +495,9 @@ ut_print_namel(
trx ? trx->mysql_thd : NULL,
table_id);

- fwrite(buf, 1, bufend - buf, f);
+ if(fwrite(buf, 1, bufend - buf, f) != (size_t)max(0,(bufend - buf))) {
+ fprintf(stderr, "fwrite failed in ut_print_namel!!!\n");
+ }
}

/**************************************************************************
@@ -516,7 +518,8 @@ ut_copy_file(
? (size_t) len
: sizeof buf;
size_t size = fread(buf, 1, maxs, src);
- fwrite(buf, 1, size, dest);
+ if(fwrite(buf, size, 1, dest)<size)
+ break;
len -= (long) size;
if (size < maxs) {
break;
Index: storage/innodb_plugin/ut/ut0ut.c
===================================================================
--- storage/innodb_plugin/ut/ut0ut.c.orig
+++ storage/innodb_plugin/ut/ut0ut.c
@@ -553,7 +553,9 @@ ut_print_namel(
trx ? trx->mysql_thd : NULL,
table_id);

- fwrite(buf, 1, bufend - buf, f);
+ if(fwrite(buf, 1, bufend - buf, f) != (size_t)max(0,(bufend - buf))) {
+ fprintf(stderr, "fwrite failed in ut_print_namel!!!\n");
+ }
}

/**********************************************************************//**
@@ -574,7 +576,8 @@ ut_copy_file(
? (size_t) len
: sizeof buf;
size_t size = fread(buf, 1, maxs, src);
- fwrite(buf, 1, size, dest);
+ if(fwrite(buf, size, 1, dest)<size)
+ break;
len -= (long) size;
if (size < maxs) {
break;
Index: storage/ndb/src/common/util/ndb_init.c
===================================================================
--- storage/ndb/src/common/util/ndb_init.c.orig
+++ storage/ndb/src/common/util/ndb_init.c
@@ -31,7 +31,7 @@ ndb_init()
{
if (my_init()) {
const char* err = "my_init() failed - exit\n";
- write(2, err, strlen(err));
+ fprintf(stderr, err, strlen(err));
exit(1);
}
ndb_init_internal();
Index: sql/log.cc
===================================================================
--- sql/log.cc.orig
+++ sql/log.cc
@@ -1854,7 +1854,7 @@ static void setup_windows_event_source()

static int find_uniq_filename(char *name)
{
- long number;
+ long number=0;
uint i;
char buff[FN_REFLEN];
struct st_my_dir *dir_info;
Index: sql/filesort.cc
===================================================================
--- sql/filesort.cc.orig
+++ sql/filesort.cc
@@ -438,16 +438,20 @@ static void dbug_print_record(TABLE *tab
Field *field= *pfield;

if (field->is_null())
- fwrite("NULL", sizeof(char), 4, DBUG_FILE);
+ if(fwrite("NULL", sizeof(char), 4, DBUG_FILE) != sizeof(char) * 4)
+ break;

if (field->type() == MYSQL_TYPE_BIT)
(void) field->val_int_as_str(&tmp, 1);
else
field->val_str(&tmp);

- fwrite(tmp.ptr(),sizeof(char),tmp.length(),DBUG_FILE);
+ if(fwrite(tmp.ptr(),sizeof(char),tmp.length(),DBUG_FILE) !=
+ sizeof(char) * tmp.length())
+ break;
if (pfield[1])
- fwrite(", ", sizeof(char), 2, DBUG_FILE);
+ if(fwrite(", ", sizeof(char), 2, DBUG_FILE) != sizeof(char) * 2)
+ break;
}
fprintf(DBUG_FILE, ")");
if (print_rowid)
Index: sql/opt_range.cc
===================================================================
--- sql/opt_range.cc.orig
+++ sql/opt_range.cc
@@ -11344,7 +11344,8 @@ print_key(KEY_PART *key_part, const ucha
{
if (*key)
{
- fwrite("NULL",sizeof(char),4,DBUG_FILE);
+ if(fwrite("NULL",sizeof(char),4,DBUG_FILE)!=4*sizeof(char))
+ break;
continue;
}
key++; // Skip null byte
@@ -11355,7 +11356,8 @@ print_key(KEY_PART *key_part, const ucha
(void) field->val_int_as_str(&tmp, 1);
else
field->val_str(&tmp);
- fwrite(tmp.ptr(),sizeof(char),tmp.length(),DBUG_FILE);
+
if(fwrite(tmp.ptr(),sizeof(char),tmp.length(),DBUG_FILE)!=sizeof(char)*tmp.length())
+ break;
if (key+store_length < key_end)
fputc('/',DBUG_FILE);
}
Index: sql/sql_table.cc
===================================================================
--- sql/sql_table.cc.orig
+++ sql/sql_table.cc
@@ -6955,7 +6955,7 @@ view_err:
need_copy_table= ALTER_TABLE_DATA_CHANGED;
else
{
- enum_alter_table_change_level need_copy_table_res;
+ enum_alter_table_change_level need_copy_table_res =
ALTER_TABLE_DATA_CHANGED;
/* Check how much the tables differ. */
if (compare_tables(table, alter_info,
create_info, order_num,
Index: sql/debug_sync.cc
===================================================================
--- sql/debug_sync.cc.orig
+++ sql/debug_sync.cc
@@ -1721,6 +1721,7 @@ static void debug_sync_execute(THD *thd,
const char *UNINIT_VAR(old_proc_info);

action->execute--;
+ old_proc_info = NULL;

/*
If we will be going to wait, set proc_info for the PROCESSLIST table.
++++++ mysql-community-server-5.1.57-external-locking.patch ++++++
PATCH-P0-FIX-UPSTREAM: Replacing skip-locking with skip-external-locking

Option 'skip-locking' is getting deprecated so we are replacing it in default
configuration files with option 'skip-external-locking'.

Maintainer: Michal Hrusecky <mhrusecky@xxxxxxx>

Index: support-files/my-huge.cnf.sh
===================================================================
--- support-files/my-huge.cnf.sh.orig
+++ support-files/my-huge.cnf.sh
@@ -25,7 +25,7 @@ socket = @MYSQL_UNIX_ADDR@
[mysqld]
port = @MYSQL_TCP_PORT@
socket = @MYSQL_UNIX_ADDR@
-skip-locking
+skip-external-locking
key_buffer_size = 384M
max_allowed_packet = 1M
table_open_cache = 512
Index: support-files/my-large.cnf.sh
===================================================================
--- support-files/my-large.cnf.sh.orig
+++ support-files/my-large.cnf.sh
@@ -25,7 +25,7 @@ socket = @MYSQL_UNIX_ADDR@
[mysqld]
port = @MYSQL_TCP_PORT@
socket = @MYSQL_UNIX_ADDR@
-skip-locking
+skip-external-locking
key_buffer_size = 256M
max_allowed_packet = 1M
table_open_cache = 256
Index: support-files/my-medium.cnf.sh
===================================================================
--- support-files/my-medium.cnf.sh.orig
+++ support-files/my-medium.cnf.sh
@@ -28,7 +28,7 @@ port = @MYSQL_TCP_PORT@
socket = @MYSQL_UNIX_ADDR@
# Change following line if you want to store your database elsewhere
datadir = /var/lib/mysql
-skip-locking
+skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
Index: support-files/my-small.cnf.sh
===================================================================
--- support-files/my-small.cnf.sh.orig
+++ support-files/my-small.cnf.sh
@@ -26,7 +26,7 @@ socket = @MYSQL_UNIX_ADDR@
[mysqld]
port = @MYSQL_TCP_PORT@
socket = @MYSQL_UNIX_ADDR@
-skip-locking
+skip-external-locking
key_buffer_size = 16K
max_allowed_packet = 1M
table_open_cache = 4
++++++ rc.mysql-multi ++++++
--- /var/tmp/diff_new_pack.dYClLA/_old 2011-06-07 03:25:15.000000000 +0200
+++ /var/tmp/diff_new_pack.dYClLA/_new 2011-06-07 03:25:15.000000000 +0200
@@ -280,12 +280,12 @@

# prepare tmp dir
if [ "$TMPDIR" ] && [ -d "$TMPDIR" ] && \
- [ "`ls -ld "$TMPDIR" | grep
"^drwx------[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`"
]; then
+ [ "`ls -ld "$TMPDIR" | grep
"^drwx------[\\.\+]\?[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`"
]; then
rm -rf "$TMPDIR"
fi
TMPDIR="`mktemp -d -p /var/tmp mysql.XXXXXX | tee
/var/run/mysql/tmpdir`"
[ -z "$TMPDIR" ] || chown
"$mysql_daemon_user:$mysql_daemon_group" "$TMPDIR"
- [ "`ls -ld "$TMPDIR" | grep
"^drwx------[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`"
] || {
+ [ "`ls -ld "$TMPDIR" | grep
"^drwx------[\\.\+]\?[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`"
] || {
echo "Can't create secure $TMPDIR"
rc_failed; rc_status -v; rc_exit;
}
@@ -379,7 +379,7 @@
fi
protected="`mktemp -d -p /var/tmp
mysql-protected.XXXXXX | tee /var/run/mysql/protecteddir`"
[ -z "$protected" ] || chown
"$mysql_daemon_user:$mysql_daemon_group" "$protected"
- [ "`ls -ld "$protected" | grep
"^drwx------[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`"
] || {
+ [ "`ls -ld "$protected" | grep
"^drwx------[\\.\+]\?[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`"
] || {
echo "Can't create secure $protected" | tee -a
"$log_upgrade"
rc_failed; rc_status -v; rc_exit;
}
@@ -444,7 +444,7 @@
echo -n "Shutting down service MySQL "
kill_mysql
if [ "$TMPDIR" ] && [ -d "$TMPDIR" ] && \
- [ "`ls -ld "$TMPDIR" | grep
"^drwx------[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`"
]; then
+ [ "`ls -ld "$TMPDIR" | grep
"^drwx------[\\.\+]\?[[:blank:]]\+[0-9]\+[[:blank:]]\+$mysql_daemon_user[[:blank:]]\+$mysql_daemon_group[[:blank:]]\+.*"`"
]; then
rm -rf "$TMPDIR"
fi
# Remember status and be verbose

++++++ suse-test-run ++++++
--- /var/tmp/diff_new_pack.dYClLA/_old 2011-06-07 03:25:15.000000000 +0200
+++ /var/tmp/diff_new_pack.dYClLA/_new 2011-06-07 03:25:15.000000000 +0200
@@ -13,5 +13,6 @@
}

chdir($dir) or die "can't cd to $dir: $!";
+$ENV{'MYSQL_TEST_DIR'}=$dir;
exec("./mysql-test-run.pl", "--big-test", @ARGV);
die "can't execute mysql-test-run.pl: $!";


++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Remember to have fun...

--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-commit+help@xxxxxxxxxxxx

< Previous Next >
This Thread
  • No further messages