From 801031f3ed3d90a3eb346751ff935fc7778ab360 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 21 Dec 2004 21:02:47 +0000 Subject: [PATCH] Fix things so that MySQL tests can be run concurrently in 32- and 64-bit chroots. --- mysql-testing.patch | 53 +++++++++++++++++++++++++++++++++++++++++++++ mysql.spec | 8 +++++-- 2 files changed, 59 insertions(+), 2 deletions(-) create mode 100644 mysql-testing.patch diff --git a/mysql-testing.patch b/mysql-testing.patch new file mode 100644 index 0000000..fefbe49 --- /dev/null +++ b/mysql-testing.patch @@ -0,0 +1,53 @@ +This patch is needed to improve the probability that the MySQL tests pass +in Red Hat's build environment. The 32-bit and 64-bit variants of a single +architecture may be built on the same machine at the same time, so we have +to ensure that the tests use different port numbers on a 64-bit arch than +on a 32-bit, else they will interfere with each other. Also increase a +timeout that has been observed to get violated under heavy load. + + +diff -Naur mysql-4.1.7.orig/mysql-test/mysql-test-run.sh mysql-4.1.7/mysql-test/mysql-test-run.sh +--- mysql-4.1.7.orig/mysql-test/mysql-test-run.sh 2004-10-23 03:28:47.000000000 -0400 ++++ mysql-4.1.7/mysql-test/mysql-test-run.sh 2004-12-21 15:51:11.000000000 -0500 +@@ -199,12 +199,24 @@ + + MASTER_RUNNING=0 + MASTER1_RUNNING=0 +-MASTER_MYPORT=9306 +-MASTER_MYPORT1=9307 + SLAVE_RUNNING=0 +-SLAVE_MYPORT=9308 # leave room for 2 masters for cluster tests +-MYSQL_MANAGER_PORT=9305 # needs to be out of the way of slaves +-NDBCLUSTER_PORT=9350 ++# hack to allow 32- and 64-bit tests to run concurrently on same build machine ++case `uname -m` in ++ ppc64 | s390x | x86_64) ++ MASTER_MYPORT=9406 ++ MASTER_MYPORT1=9407 ++ SLAVE_MYPORT=9408 # leave room for 2 masters for cluster tests ++ MYSQL_MANAGER_PORT=9405 # needs to be out of the way of slaves ++ NDBCLUSTER_PORT=9450 ++ ;; ++ *) ++ MASTER_MYPORT=9306 ++ MASTER_MYPORT1=9307 ++ SLAVE_MYPORT=9308 # leave room for 2 masters for cluster tests ++ MYSQL_MANAGER_PORT=9305 # needs to be out of the way of slaves ++ NDBCLUSTER_PORT=9350 ++ ;; ++esac + MYSQL_MANAGER_PW_FILE=$MYSQL_TEST_DIR/var/tmp/manager.pwd + MYSQL_MANAGER_LOG=$MYSQL_TEST_DIR/var/log/manager.log + MYSQL_MANAGER_USER=root +@@ -227,9 +239,9 @@ + SLEEP_TIME_AFTER_RESTART=1 + SLEEP_TIME_FOR_DELETE=10 + SLEEP_TIME_FOR_FIRST_MASTER=400 # Enough time to create innodb tables +-SLEEP_TIME_FOR_SECOND_MASTER=30 ++SLEEP_TIME_FOR_SECOND_MASTER=60 + SLEEP_TIME_FOR_FIRST_SLAVE=400 +-SLEEP_TIME_FOR_SECOND_SLAVE=30 ++SLEEP_TIME_FOR_SECOND_SLAVE=60 + CHARACTER_SET=latin1 + DBUSER="" + START_WAIT_TIMEOUT=10 diff --git a/mysql.spec b/mysql.spec index a9b3cac..3a2a5f4 100644 --- a/mysql.spec +++ b/mysql.spec @@ -1,6 +1,6 @@ Name: mysql Version: 4.1.7 -Release: 7 +Release: 8 Source0: http://dev.mysql.com/get/Downloads/MySQL-4.1/mysql-%{version}.tar.gz Source1: mysql.init Source2: mysql.logrotate @@ -11,6 +11,7 @@ Source999: filter-requires-mysql.sh Patch1: mysql-libdir.patch Patch2: mysql-errno.patch Patch3: mysql-libtool.patch +Patch4: mysql-testing.patch URL: http://www.mysql.com BuildRoot: %{_tmppath}/%{name}-%{version}-root Summary: MySQL client programs and shared libraries. @@ -85,6 +86,7 @@ MySQL. %patch1 -p1 %patch2 -p1 %patch3 -p1 +%patch4 -p1 libtoolize --force aclocal @@ -353,9 +355,11 @@ fi %{_datadir}/sql-bench %changelog +* Tue Dec 21 2004 Tom Lane 4.1.7-8 +- Run make test on all archs + * Mon Dec 13 2004 Tom Lane 4.1.7-7 - Suppress someone's silly idea that libtool overhead can be skipped -- Run make test on all archs * Sun Dec 12 2004 Tom Lane 4.1.7-6 - Fix init script to not need a valid username for startup check (bz#142328)