96ebf13bb4
brew/beehive builds more robust when retrying after a failure.
69 lines
2.7 KiB
Diff
69 lines
2.7 KiB
Diff
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 each arch, else they
|
|
will interfere with each other. Also, it's been observed that sometimes
|
|
the build environment fails to kill a test mysql daemon when a build is
|
|
stopped early due to build failure on another machine. To ensure subsequent
|
|
tests can succeed, kill off any such daemons.
|
|
|
|
We also have to hack the top-level Makefile to enable the openssl regression
|
|
tests. (Why doesn't this happen automatically given the configure option??)
|
|
|
|
Note: keep an eye on which version of "mysql-test-run" gets invoked by
|
|
the "make test" target. In the 4.1 branch this is now defaulting to the
|
|
perl script, but 5.0 is not (yet?) doing that; they also seem to be fooling
|
|
with a C-code version. Besides this patch, mysql-libtool.patch
|
|
would need to be changed to use either one.
|
|
|
|
|
|
diff -Naur mysql-5.0.22.orig/Makefile.am mysql-5.0.22/Makefile.am
|
|
--- mysql-5.0.22.orig/Makefile.am 2006-05-25 04:56:41.000000000 -0400
|
|
+++ mysql-5.0.22/Makefile.am 2006-06-10 13:13:34.000000000 -0400
|
|
@@ -106,8 +106,8 @@
|
|
|
|
test:
|
|
cd mysql-test ; \
|
|
- ./mysql-test-run && \
|
|
- ./mysql-test-run --ps-protocol
|
|
+ ./mysql-test-run --with-openssl && \
|
|
+ ./mysql-test-run --ps-protocol --with-openssl
|
|
|
|
test-force:
|
|
cd mysql-test; \
|
|
diff -Naur mysql-5.0.22.orig/mysql-test/mysql-test-run.sh mysql-5.0.22/mysql-test/mysql-test-run.sh
|
|
--- mysql-5.0.22.orig/mysql-test/mysql-test-run.sh 2006-05-25 04:56:49.000000000 -0400
|
|
+++ mysql-5.0.22/mysql-test/mysql-test-run.sh 2006-06-10 13:36:32.000000000 -0400
|
|
@@ -252,6 +252,16 @@
|
|
# 5.1 test run, even if different MTR_BUILD_THREAD is used. This means
|
|
# all port numbers might not be used in this version of the script.
|
|
#
|
|
+# hack to allow 32- and 64-bit tests to run concurrently on same build machine
|
|
+case `uname -m` in
|
|
+ ppc64 | s390x | x86_64)
|
|
+ MTR_BUILD_THREAD=7
|
|
+ ;;
|
|
+ *)
|
|
+ MTR_BUILD_THREAD=11
|
|
+ ;;
|
|
+esac
|
|
+
|
|
if [ -n "$MTR_BUILD_THREAD" ] ; then
|
|
MASTER_MYPORT=`expr $MTR_BUILD_THREAD '*' 10 + 10000`
|
|
MYSQL_MANAGER_PORT=`expr $MASTER_MYPORT + 2`
|
|
@@ -265,6 +275,14 @@
|
|
echo "Using NDBCLUSTER_PORT = $NDBCLUSTER_PORT"
|
|
fi
|
|
|
|
+#
|
|
+# If a previous build attempt failed it's possible that mysql daemons
|
|
+# launched by previous run of this script are still hanging around.
|
|
+# Kill 'em so we can re-use the ports.
|
|
+#
|
|
+ps auxww | grep "/sql/mysqld .*port=$MASTER_MYPORT" | awk '{print $2}' | xargs kill
|
|
+ps auxww | grep "/sql/mysqld .*port=$SLAVE_MYPORT" | awk '{print $2}' | xargs kill
|
|
+
|
|
NO_SLAVE=0
|
|
USER_TEST=
|
|
FAILED_CASES=
|