you beat me in replying, and saved me from typing the analysis - thanks!
Michael Stassen wrote:
> The test suite is broken.
Well, I would not put it that way - a diplomatic wording is:
"The tool to run the test suite does not run as it should."
I understand that the effect for Hugh and you is the same ;-)
> The archive test is meant to test the archive table engine, but the
> archive engine is not built into mysql by default. You have to add the
> --with-archive-storage-engine if you want it. You didn't do that, so
> the archive test should have been skipped.
> With mysql 4.1.12, `make -n test` reveals
> cd mysql-test; ./mysql-test-run && ./mysql-test-run --ps-protocol
> With 4.1.14, that has changed to
> cd mysql-test; perl mysql-test-run.pl && perl mysql-test-run.pl
> Apparently, the test program shell script, mysql-test-run, has been
> rewritten as a perl script, though there is no mention of this in the
> change log <http://dev.mysql.com/doc/mysql/en/news-4-1-x.html>. A quick
> glance at the source shows that the perl script is not finished -- it
> has quite a few commented-out, "fix me" sections.
Correct. A Perl script for the test suite is being worked on. Reasons:
1) A shell script will never work for "native" Windoes users who do not
install Cygwwin, MinGW, MKS or similar suites.
2) The shell script lacks some functionality which is needed, and it is
already too convoluted.
So that Perl script is "work in progress" which we needed to test on all
build platforms. It was an oversight that it got included in the source
tree in the current status, the tests have also been done using the old
> There's a second way, which I think is better. It turns out that the
> old shell-script test suite is still built. Hence, you can still test
> the old way.
> cd mysql-test && ./mysql-test-run --force
Right, this is what I recommend.
To be a bit picky: There is one standard test suite only (which is
included in the source tar-ball), but there are currently two different
scripts to run it, the (old) shell and the (new) Perl script.
The specific error causing your and Hugh's problem, the incorrect
skipping of tests which are not applicable to the server to be tested,
has been fixed, but maybe this version has not yet been pushed to the
> As the old test script is still built and the new test script is
> unfinished, undocumented, and broken, I am suspicious that the real
> problem is that make was prematurely (accidentally?) changed to use the
> new one before it was ready. I've copied the bugs list in hopes of an
Both "yes" and "no":
"yes" in the sense that the new suite (as included in the 4.1.14 tree)
is not yet correct.
"no" in the sense that the change to use it _internally_ was deliberate
in order to get full platform coverage.
We are sorry it caused you inconveniences!