From a7d331a0c912d79a358be02fa0fc70dee68e3c78 Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@fedoraproject.org>
Date: Sat, 2 Jan 2010 01:44:16 +0000
Subject: [PATCH] Update to MySQL 5.1.42; also fix #547485

---
 .cvsignore             |  2 +-
 mysql-plugin-bug.patch | 12 ++++++------
 mysql-strmov.patch     |  6 ++++++
 mysql.init             |  4 +++-
 mysql.spec             | 10 ++++++++--
 sources                |  2 +-
 6 files changed, 25 insertions(+), 11 deletions(-)

diff --git a/.cvsignore b/.cvsignore
index 685b897..3b2788f 100644
--- a/.cvsignore
+++ b/.cvsignore
@@ -1 +1 @@
-mysql-5.1.41.tar.gz
+mysql-5.1.42.tar.gz
diff --git a/mysql-plugin-bug.patch b/mysql-plugin-bug.patch
index 865acf5..14e4e1a 100644
--- a/mysql-plugin-bug.patch
+++ b/mysql-plugin-bug.patch
@@ -11,13 +11,13 @@ platform-dependent results, with the "expected" results being arguably the
 wrong ones.  This is upstream at http://bugs.mysql.com/bug.php?id=46895
 
 
-diff -Naur mysql-5.1.41.orig/mysql-test/t/disabled.def mysql-5.1.41/mysql-test/t/disabled.def
---- mysql-5.1.41.orig/mysql-test/t/disabled.def	2009-11-04 14:00:39.000000000 -0500
-+++ mysql-5.1.41/mysql-test/t/disabled.def	2009-11-23 22:04:14.000000000 -0500
-@@ -15,3 +15,6 @@
- partition_innodb_plugin  : Bug#32430 2009-09-25 mattiasj Waiting for push of Innodb changes
- innodb-autoinc           : Bug#48482 2009-11-02 svoj innodb-autoinc.test fails with results difference
+diff -Naur mysql-5.1.42.orig/mysql-test/t/disabled.def mysql-5.1.42/mysql-test/t/disabled.def
+--- mysql-5.1.42.orig/mysql-test/t/disabled.def	2009-12-16 13:21:00.000000000 -0500
++++ mysql-5.1.42/mysql-test/t/disabled.def	2010-01-01 18:45:49.000000000 -0500
+@@ -13,3 +13,6 @@
+ query_cache_28249        : Bug#43861 2009-03-25 main.query_cache_28249 fails sporadically
  rpl_killed_ddl           : Bug#45520: rpl_killed_ddl fails sporadically in pb2
+ innodb-autoinc           : Bug#49267 2009-12-02 test fails on windows because of different case mode
 +#
 +plugin_load         : gives wrong answer on PPC64
 +outfile_loaddata    : gives different results on different platforms
diff --git a/mysql-strmov.patch b/mysql-strmov.patch
index c136f7a..a144d09 100644
--- a/mysql-strmov.patch
+++ b/mysql-strmov.patch
@@ -6,6 +6,12 @@ Deleting the definition is sufficient to make it fall back to a
 byte-at-a-time copy loop, which should consistently give the
 expected behavior.
 
+Note: the particular case that prompted this patch is reported and fixed
+at http://bugs.mysql.com/bug.php?id=48864.  However, my faith in upstream's
+ability to detect this type of error is low, and I also see little evidence
+of any real performance gain from optimizing these calls.  So I'm keeping
+this patch.
+
 
 diff -Naur mysql-5.1.37.orig/include/m_string.h mysql-5.1.37/include/m_string.h
 --- mysql-5.1.37.orig/include/m_string.h	2009-07-13 19:08:50.000000000 -0400
diff --git a/mysql.init b/mysql.init
index 3656a4a..50363b4 100644
--- a/mysql.init
+++ b/mysql.init
@@ -69,9 +69,11 @@ start(){
 	# but we need to be sure.  (An exception is that we don't force the
 	# log-error setting, since this script doesn't really depend on that,
 	# and some users might prefer to configure logging to syslog.)
+	# Note: set --basedir to prevent probes that might trigger SELinux
+	# alarms, per bug #547485
 	/usr/bin/mysqld_safe   --datadir="$datadir" --socket="$socketfile" \
 		--pid-file="$mypidfile" \
-		--user=mysql >/dev/null 2>&1 &
+		--basedir=/usr --user=mysql >/dev/null 2>&1 &
 	safe_pid=$!
 	# Spin for a maximum of N seconds waiting for the server to come up;
 	# exit the loop immediately if mysqld_safe process disappears.
diff --git a/mysql.spec b/mysql.spec
index 91661ba..167f5f8 100644
--- a/mysql.spec
+++ b/mysql.spec
@@ -1,6 +1,6 @@
 Name: mysql
-Version: 5.1.41
-Release: 2%{?dist}
+Version: 5.1.42
+Release: 1%{?dist}
 Summary: MySQL client programs and shared libraries
 Group: Applications/Databases
 URL: http://www.mysql.com
@@ -649,6 +649,12 @@ fi
 %{_mandir}/man1/mysql_client_test.1*
 
 %changelog
+* Fri Jan  1 2010 Tom Lane <tgl@redhat.com> 5.1.42-1
+- Update to MySQL 5.1.42, for various fixes described at
+  http://dev.mysql.com/doc/refman/5.1/en/news-5-1-42.html
+- Start mysqld_safe with --basedir=/usr, to avoid unwanted SELinux messages
+Resolves: #547485
+
 * Thu Dec 17 2009 Tom Lane <tgl@redhat.com> 5.1.41-2
 - Stop waiting during "service mysqld start" if mysqld_safe exits
 Resolves: #544095
diff --git a/sources b/sources
index c9d4caa..70ac5ca 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-b5d39e8789174753f3c782959729e68c  mysql-5.1.41.tar.gz
+b644b219e130b7c6bca81948f75d72d7  mysql-5.1.42.tar.gz