Fix things so that MySQL tests can be run concurrently in 32- and 64-bit

chroots.
This commit is contained in:
Tom Lane 2004-12-21 21:02:47 +00:00 committed by Michal Schorm
parent a7768d6f9e
commit 801031f3ed
2 changed files with 59 additions and 2 deletions

53
mysql-testing.patch Normal file
View File

@ -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

View File

@ -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 <tgl@redhat.com> 4.1.7-8
- Run make test on all archs
* Mon Dec 13 2004 Tom Lane <tgl@redhat.com> 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 <tgl@redhat.com> 4.1.7-6
- Fix init script to not need a valid username for startup check (bz#142328)