mirror of
https://github.com/MariaDB/server.git
synced 2025-01-30 10:31:54 +01:00
1145 lines
26 KiB
Groff
1145 lines
26 KiB
Groff
.\" Title: \fBmysql\-test\-run.pl\fR
|
|
.\" Author:
|
|
.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
|
|
.\" Date: 03/27/2009
|
|
.\" Manual: MySQL Database System
|
|
.\" Source: MySQL
|
|
.\"
|
|
.TH "\fBMYSQL\-TEST\-RUN.PL" "1" "03/27/2009" "MySQL" "MySQL Database System"
|
|
.\" disable hyphenation
|
|
.nh
|
|
.\" disable justification (adjust text to left margin only)
|
|
.ad l
|
|
.SH "NAME"
|
|
mysql\-test\-run.pl \- run MySQL test suite
|
|
.SH "SYNOPSIS"
|
|
.HP 28
|
|
\fBmysql\-test\-run.pl [\fR\fB\fIoptions\fR\fR\fB]\fR
|
|
.SH "DESCRIPTION"
|
|
.PP
|
|
The
|
|
\fBmysql\-test\-run.pl\fR
|
|
Perl script is the main application used to run the MySQL test suite. It invokes
|
|
\fBmysqltest\fR
|
|
to run individual test cases. (Prior to MySQL 4.1, a similar shell script,
|
|
\fBmysql\-test\-run\fR, can be used instead.)
|
|
.PP
|
|
Invoke
|
|
\fBmysql\-test\-run.pl\fR
|
|
in the
|
|
\fImysql\-test\fR
|
|
directory like this:
|
|
.sp
|
|
.RS 3n
|
|
.nf
|
|
shell> \fBmysql\-test\-run.pl [\fR\fB\fIoptions\fR\fR\fB] [\fR\fB\fItest_name\fR\fR\fB] ...\fR
|
|
.fi
|
|
.RE
|
|
.PP
|
|
Each
|
|
\fItest_name\fR
|
|
argument names a test case. The test case file that corresponds to the test name is
|
|
\fIt/\fR\fI\fItest_name\fR\fR\fI.test\fR.
|
|
.PP
|
|
For each
|
|
\fItest_name\fR
|
|
argument,
|
|
\fBmysql\-test\-run.pl\fR
|
|
runs the named test case. With no
|
|
\fItest_name\fR
|
|
arguments,
|
|
\fBmysql\-test\-run.pl\fR
|
|
runs all
|
|
\fI.test\fR
|
|
files in the
|
|
\fIt\fR
|
|
subdirectory.
|
|
.PP
|
|
If no suffix is given for the test name, a suffix of
|
|
\fI.test\fR
|
|
is assumed. Any leading path name is ignored. These commands are equivalent:
|
|
.sp
|
|
.RS 3n
|
|
.nf
|
|
shell> \fBmysql\-test\-run.pl mytest\fR
|
|
shell> \fBmysql\-test\-run.pl mytest.test\fR
|
|
shell> \fBmysql\-test\-run.pl t/mytest.test\fR
|
|
.fi
|
|
.RE
|
|
.PP
|
|
As of MySQL 5.1.23, a suite name can be given as part of the test name. That is, the syntax for naming a test is:
|
|
.sp
|
|
.RS 3n
|
|
.nf
|
|
[\fIsuite_name\fR.]\fItest_name\fR[.\fIsuffix\fR]
|
|
.fi
|
|
.RE
|
|
.PP
|
|
If a suite name is given,
|
|
\fBmysql\-test\-run.pl\fR
|
|
looks in that suite for the test. With no suite name,
|
|
\fBmysql\-test\-run.pl\fR
|
|
looks in the default list of suites for a match and runs the test in any suites where it finds the test. Suppose that the default suite list is
|
|
main,
|
|
binlog,
|
|
rpl, and that a test
|
|
\fImytest.test\fR
|
|
exists in the
|
|
main
|
|
and
|
|
rpl
|
|
suites. With an argument of
|
|
mytest
|
|
or
|
|
mytest.test,
|
|
\fBmysql\-test\-run.pl\fR
|
|
will run
|
|
\fImytest.test\fR
|
|
from the
|
|
main
|
|
and
|
|
rpl
|
|
suites.
|
|
.PP
|
|
To run a family of test cases for which the names share a common prefix, use the
|
|
\fB\-\-do\-test=\fR\fB\fIprefix\fR\fR
|
|
option. For example,
|
|
\fB\-\-do\-test=rpl\fR
|
|
runs the replication tests (test cases that have names beginning with
|
|
rpl).
|
|
\fB\-\-skip\-test\fR
|
|
has the opposite effect of skipping test cases for which the names share a common prefix.
|
|
.PP
|
|
As of MySQL 5.0.54/5.1.23/6.0.5, the argument for the
|
|
\fB\-\-do\-test\fR
|
|
and
|
|
\fB\-\-skip\-test\fR
|
|
options allows more flexible specification of which tests to perform or skip. If the argument contains a pattern metacharacter other than a lone period, it is interpreted as a Perl regular expression and applies to test names that match the pattern. If the argument contains a lone period or does not contain any pattern metacharacters, it is interpreted the same way as previously and matches test names that begin with the argument value. For example,
|
|
\fB\-\-do\-test=testa\fR
|
|
matches tests that begin with
|
|
testa,
|
|
\fB\-\-do\-test=main.testa\fR
|
|
matches tests in the
|
|
main
|
|
test suite that begin with
|
|
testa, and
|
|
\fB\-\-do\-test=main.*testa\fR
|
|
matches test names that contain
|
|
main
|
|
followed by
|
|
testa
|
|
with anything in between. In the latter case, the pattern match is not anchored to the beginning of the test name, so it also matches names such as
|
|
xmainytestz.
|
|
.PP
|
|
To perform setup prior to running tests,
|
|
\fBmysql\-test\-run.pl\fR
|
|
needs to invoke
|
|
\fBmysqld\fR
|
|
with the
|
|
\fB\-\-bootstrap\fR
|
|
and
|
|
\fB\-\-skip\-grant\-tables\fR
|
|
options (see
|
|
[1]\&\fITypical \fBconfigure\fR Options\fR). If MySQL was configured with the
|
|
\fB\-\-disable\-grant\-options\fR
|
|
option,
|
|
\fB\-\-bootstrap\fR,
|
|
\fB\-\-skip\-grant\-tables\fR, and
|
|
\fB\-\-init\-file\fR
|
|
will be disabled. To handle this, set the
|
|
MYSQLD_BOOTSTRAP
|
|
environment variable to the full path name of a server that has all options enabled.
|
|
\fBmysql\-test\-run.pl\fR
|
|
will use that server to perform setup; it is not used to run the tests.
|
|
.PP
|
|
The
|
|
init_file
|
|
test will fail if
|
|
\fB\-\-init\-file\fR
|
|
is disabled. This is an expected failure that can be handled as follows:
|
|
.sp
|
|
.RS 3n
|
|
.nf
|
|
shell> \fBexport MYSQLD_BOOTSTRAP\fR
|
|
shell> \fBMYSQLD_BOOTSTRAP=/full/path/to/mysqld\fR
|
|
shell> \fBmake test force="\-\-skip\-test=init_file"\fR
|
|
.fi
|
|
.RE
|
|
.PP
|
|
To run
|
|
\fBmysql\-test\-run.pl\fR
|
|
on Windows, you'll need either Cygwin or ActiveState Perl to run it. You may also need to install the modules required by the script. To run the test script, change location into the
|
|
\fImysql\-test\fR
|
|
directory, set the
|
|
MTR_VS_CONFIG
|
|
environment variable to the configuration you selected earlier (or use the
|
|
\fB\-\-vs\-config\fR
|
|
option), and invoke
|
|
\fBmysql\-test\-run.pl\fR. For example (using Cygwin and the
|
|
\fBbash\fR
|
|
shell):
|
|
.sp
|
|
.RS 3n
|
|
.nf
|
|
shell> \fBcd mysql\-test\fR
|
|
shell> \fBexport MTS_VS_CONFIG=debug\fR
|
|
shell> \fB./mysqltest\-run.pl \-\-force \-\-timer\fR
|
|
shell> \fB./mysqltest\-run.pl \-\-force \-\-timer \-\-ps\-protocol\fR
|
|
.fi
|
|
.RE
|
|
.PP
|
|
If you have a copy of
|
|
\fBmysqld\fR
|
|
running on the machine where you want to run the test suite, you do not have to stop it, as long as it is not using ports
|
|
9306
|
|
or
|
|
9307. If either of those ports is taken, you should set the
|
|
MTR_BUILD_THREAD
|
|
environment variable to an appropriate value, and the test suite will use a different set of ports for master, slave, NDB, and Instance Manager). For example:
|
|
.sp
|
|
.RS 3n
|
|
.nf
|
|
shell> \fBexport MTR_BUILD_THREAD=31\fR
|
|
shell> \fB./mysql\-test\-run.pl [\fR\fB\fIoptions\fR\fR\fB] [\fR\fB\fItest_name\fR\fR\fB]\fR
|
|
.fi
|
|
.RE
|
|
.PP
|
|
\fBmysql\-test\-run.pl\fR
|
|
defines several environment variables. Some of them are listed in the following table.
|
|
.TS
|
|
allbox tab(:);
|
|
l l
|
|
l l
|
|
l l
|
|
l l
|
|
l l
|
|
l l.
|
|
T{
|
|
\fBVariable\fR
|
|
T}:T{
|
|
\fBMeaning\fR
|
|
T}
|
|
T{
|
|
MYSQL_TEST
|
|
T}:T{
|
|
Path name to \fBmysqltest\fR binary
|
|
T}
|
|
T{
|
|
MYSQLTEST_VARDIR
|
|
T}:T{
|
|
Path name to the \fIvar\fR directory that is used for
|
|
logs, temporary files, and so forth
|
|
T}
|
|
T{
|
|
MYSQLD_BOOTSTRAP
|
|
T}:T{
|
|
Full path name to \fBmysqld\fR that has all options enabled
|
|
T}
|
|
T{
|
|
MASTER_MYPORT
|
|
T}:T{
|
|
???
|
|
T}
|
|
T{
|
|
MASTER_MYSOCK
|
|
T}:T{
|
|
???
|
|
T}
|
|
.TE
|
|
.sp
|
|
.PP
|
|
Tests sometimes rely on certain environment variables being defined. For example, certain tests assume that
|
|
MYSQL_TEST
|
|
is defined so that
|
|
\fBmysqltest\fR
|
|
can invoke itself with
|
|
exec $MYSQL_TEST.
|
|
.PP
|
|
\fBmysql\-test\-run.pl\fR
|
|
supports the options in the following list. An argument of
|
|
\fB\-\-\fR
|
|
tells
|
|
\fBmysql\-test\-run.pl\fR
|
|
not to process any following arguments as options. (A description of differences between the options supported by
|
|
\fBmysql\-test\-run.pl\fR
|
|
and
|
|
\fBmysql\-test\-run\fR
|
|
appears following the list.)
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-help\fR,
|
|
\fB\-h\fR
|
|
.sp
|
|
Display a help message and exit.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-bench\fR
|
|
.sp
|
|
Run the benchmark suite.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-benchdir=\fR\fB\fIpath\fR\fR
|
|
.sp
|
|
The directory where the benchmark suite is located. The default path is
|
|
\fI../../mysql\-bench\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-big\-test\fR
|
|
.sp
|
|
Pass the
|
|
\fB\-\-big\-test\fR
|
|
option to
|
|
\fBmysqltest\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-check\-testcases\fR
|
|
.sp
|
|
Check test cases for side effects.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-client\-bindir\fR
|
|
.sp
|
|
The path to the directory where client binaries are located. This option was added in MySQL 5.0.66/5.1.27.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-client\-ddd\fR
|
|
.sp
|
|
Start
|
|
\fBmysqltest\fR
|
|
in the
|
|
\fBddd\fR
|
|
debugger.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-client\-debugger\fR
|
|
.sp
|
|
Start
|
|
\fBmysqltest\fR
|
|
in the named debugger.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-client\-gdb\fR
|
|
.sp
|
|
Start
|
|
\fBmysqltest\fR
|
|
in the
|
|
\fBgdb\fR
|
|
debugger.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-client\-libdir\fR
|
|
.sp
|
|
The path to the directory where client libraries are located. This option was added in MySQL 5.0.66/5.1.27.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-combination=\fR\fB\fIvalue\fR\fR
|
|
.sp
|
|
Extra options to pass to
|
|
\fBmysqld\fR. The value should consist of one or more comma\-separated
|
|
\fBmysqld\fR
|
|
options. This option is similar to
|
|
\fB\-\-mysqld\fR
|
|
but should be given two or more times.
|
|
\fBmysql\-test\-run.pl\fR
|
|
executes multiple test runs, using the options for each instance of
|
|
\fB\-\-combination\fR
|
|
in successive runs. If
|
|
\fB\-\-combination\fR
|
|
is given only once, it has no effect. For test runs specific to a given test suite, an alternative to the use of
|
|
\fB\-\-combination\fR
|
|
is to create a
|
|
\fIcombinations\fR
|
|
file in the suite directory. The file should contain a section of options for each test run. See
|
|
Section\ 4.9, \(lqPassing Options from \fBmysql\-test\-run.pl\fR to \fBmysqld\fR or \fBmysqltest\fR\(rq.
|
|
.sp
|
|
This option was added in MySQL 5.1.23/6.0.4.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-comment=\fR\fB\fIstr\fR\fR
|
|
.sp
|
|
Write
|
|
\fIstr\fR
|
|
to the output.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-compress\fR
|
|
.sp
|
|
Compress all information sent between the client and the server if both support compression.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-cursor\-protocol\fR
|
|
.sp
|
|
Pass the
|
|
\fB\-\-cursor\-protocol\fR
|
|
option to
|
|
\fBmysqltest\fR
|
|
(implies
|
|
\fB\-\-ps\-protocol\fR).
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-ddd\fR
|
|
.sp
|
|
Start
|
|
\fBmysqld\fR
|
|
in the
|
|
\fBddd\fR
|
|
debugger.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-debug\fR
|
|
.sp
|
|
Dump trace output for all clients and servers.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-debugger\fR
|
|
.sp
|
|
Start
|
|
\fBmysqld\fR
|
|
using the named debugger.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-debug\-sync\-timeout=\fR\fB\fIN\fR\fR
|
|
.sp
|
|
Controls whether the Debug Sync facility for testing and debugging is enabled. The option value is a timeout in seconds. The default value is 300. A value of 0 disables Debug Sync. The value of this option also becomes the default timeout for individual synchronization points.
|
|
.sp
|
|
\fBmysql\-test\-run.pl\fR
|
|
passes
|
|
\fB\-\-loose\-debug\-sync\-timeout=\fR\fB\fIN\fR\fR
|
|
to
|
|
\fBmysqld\fR. The
|
|
\fB\-\-loose\fR
|
|
prefix is used so that
|
|
\fBmysqld\fR
|
|
does not fail if Debug Sync is not compiled in.
|
|
.sp
|
|
For information about using the Debug Sync facility for testing, see
|
|
Section\ 4.14, \(lqThread Synchronization in Test Cases\(rq.
|
|
.sp
|
|
This option was added in MySQL 6.0.6.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-do\-test=\fR\fB\fIprefix\fR\fR
|
|
.sp
|
|
Run all test cases having a name that begins with the given
|
|
\fIprefix\fR
|
|
value. This option provides a convenient way to run a family of similarly named tests.
|
|
.sp
|
|
As of MySQL 5.0.54/5.1.23/6.0.5, the argument for the
|
|
\fB\-\-do\-test\fR
|
|
option allows more flexible specification of which tests to perform. If the argument contains a pattern metacharacter other than a lone period, it is interpreted as a Perl regular expression and applies to test names that match the pattern. If the argument contains a lone period or does not contain any pattern metacharacters, it is interpreted the same way as previously and matches test names that begin with the argument value. For example,
|
|
\fB\-\-do\-test=testa\fR
|
|
matches tests that begin with
|
|
testa,
|
|
\fB\-\-do\-test=main.testa\fR
|
|
matches tests in the
|
|
main
|
|
test suite that begin with
|
|
testa, and
|
|
\fB\-\-do\-test=main.*testa\fR
|
|
matches test names that contain
|
|
main
|
|
followed by
|
|
testa
|
|
with anything in between. In the latter case, the pattern match is not anchored to the beginning of the test name, so it also matches names such as
|
|
xmainytestz.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-embedded\-server\fR
|
|
.sp
|
|
Use a version of
|
|
\fBmysqltest\fR
|
|
built with the embedded server.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-experimental=\fR\fB\fIfile_name\fR\fR
|
|
.sp
|
|
Specify a file that contains a list of test cases that should be displayed with the
|
|
[ exp\-fail ]
|
|
code rather than
|
|
[ fail ]
|
|
if they fail. This option was added in MySQL 5.1.33/6.0.11.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-extern\fR
|
|
.sp
|
|
Use an already running server.
|
|
.sp
|
|
Note: If a test case has an
|
|
\fI.opt\fR
|
|
file that requires the server to be restarted with specific options, the file will not be used. The test case likely will fail as a result.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-fast\fR
|
|
.sp
|
|
Do not clean up from earlier test runs.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-force\fR
|
|
.sp
|
|
Normally,
|
|
\fBmysql\-test\-run.pl\fR
|
|
exits if a test case fails.
|
|
\fB\-\-force\fR
|
|
causes execution to continue regardless of test case failure.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-gcov\fR
|
|
.sp
|
|
Run tests with the
|
|
\fBgcov\fR
|
|
test coverage tool.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-gdb\fR
|
|
.sp
|
|
Start
|
|
\fBmysqld\fR
|
|
in the
|
|
\fBgdb\fR
|
|
debugger.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-gprof\fR
|
|
.sp
|
|
Run tests with the
|
|
\fBgprof\fR
|
|
profiling tool.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-im\-mysqld1\-port\fR
|
|
.sp
|
|
TCP/IP port number to use for the first
|
|
\fBmysqld\fR, controlled by Instance Manager.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-im\-mysqld2\-port\fR
|
|
.sp
|
|
TCP/IP port number to use for the second
|
|
\fBmysqld\fR, controlled by Instance Manager.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-im\-port\fR
|
|
.sp
|
|
TCP/IP port number to use for
|
|
\fBmysqld\fR, controlled by Instance Manager.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-log\-warnings\fR
|
|
.sp
|
|
Pass the
|
|
\fB\-\-log\-warnings\fR
|
|
option to
|
|
\fBmysqld\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-manual\-debug\fR
|
|
.sp
|
|
Use a server that has already been started by the user in a debugger.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-manual\-gdb\fR
|
|
.sp
|
|
Use a server that has already been started by the user in the
|
|
\fBgdb\fR
|
|
debugger.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-master\-binary=\fR\fB\fIpath\fR\fR
|
|
.sp
|
|
Specify the path of the
|
|
\fBmysqld\fR
|
|
binary to use for master servers.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-master_port=\fR\fB\fIport_num\fR\fR
|
|
.sp
|
|
Specify the TCP/IP port number for the first master server to use. Observe that the option name has an underscore and not a dash.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-mem\fR
|
|
.sp
|
|
Run the test suite in memory, using tmpfs or ramdisk. This can decrease test times significantly.
|
|
\fBmysql\-test\-run.pl\fR
|
|
attempts to find a suitable location using a built\-in list of standard locations for tmpfs and puts the
|
|
\fIvar\fR
|
|
directory there. This option also affects placement of temporary files, which are created in
|
|
\fIvar/tmp\fR.
|
|
.sp
|
|
The default list includes
|
|
\fI/dev/shm\fR. You can also enable this option by setting the environment variable
|
|
MTR_MEM[=\fIdir_name\fR]. If
|
|
\fIdir_name\fR
|
|
is given, it is added to the beginning of the list of locations to search, so it takes precedence over any built\-in locations.
|
|
.sp
|
|
This option was added in MySQL 4.1.22, 5.0.30, and 5.1.13.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-mysqld=\fR\fB\fIvalue\fR\fR
|
|
.sp
|
|
Extra options to pass to
|
|
\fBmysqld\fR. The value should consist of one or more comma\-separated
|
|
\fBmysqld\fR
|
|
options. See
|
|
Section\ 4.9, \(lqPassing Options from \fBmysql\-test\-run.pl\fR to \fBmysqld\fR or \fBmysqltest\fR\(rq.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-mysqltest=\fR\fB\fIvalue\fR\fR
|
|
.sp
|
|
Extra options to pass to
|
|
\fBmysqltest\fR. The value should consist of one or more comma\-separated
|
|
\fBmysqltest\fR
|
|
options. See
|
|
Section\ 4.9, \(lqPassing Options from \fBmysql\-test\-run.pl\fR to \fBmysqld\fR or \fBmysqltest\fR\(rq. This option was added in MySQL 6.0.6.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-ndb\-connectstring=\fR\fB\fIstr\fR\fR
|
|
.sp
|
|
Pass
|
|
\fB\-\-ndb\-connectstring=\fR\fB\fIstr\fR\fR
|
|
to the master MySQL server. This option also prevents
|
|
\fBmysql\-test\-run.pl\fR
|
|
from starting a cluster. It is assumed that there is already a cluster running to which the server can connect with the given connectstring.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-ndb\-connectstring\-slave=\fR\fB\fIstr\fR\fR
|
|
.sp
|
|
Pass
|
|
\fB\-\-ndb\-connectstring=\fR\fB\fIstr\fR\fR
|
|
to slave MySQL servers. This option also prevents
|
|
\fBmysql\-test\-run.pl\fR
|
|
from starting a cluster. It is assumed that there is already a cluster running to which the server can connect with the given connectstring.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-ndb\-extra\-test\fR
|
|
.sp
|
|
Unknown.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-ndbcluster\-port=\fR\fB\fIport_num\fR\fR,
|
|
\fB\-\-ndbcluster_port=\fR\fB\fIport_num\fR\fR
|
|
.sp
|
|
Specify the TCP/IP port number that NDB Cluster should use.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-ndbcluster\-port\-slave=\fR\fB\fIport_num\fR\fR
|
|
.sp
|
|
Specify the TCP/IP port number that the slave NDB Cluster should use.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-netware\fR
|
|
.sp
|
|
Run
|
|
\fBmysqld\fR
|
|
with options needed on NetWare.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-notimer\fR
|
|
.sp
|
|
Cause
|
|
\fBmysqltest\fR
|
|
not to generate a timing file.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-ps\-protocol\fR
|
|
.sp
|
|
Pass the
|
|
\fB\-\-ps\-protocol\fR
|
|
option to
|
|
\fBmysqltest\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-record\fR
|
|
.sp
|
|
Pass the
|
|
\fB\-\-record\fR
|
|
option to
|
|
\fBmysqltest\fR. This option requires a specific test case to be named on the command line.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-reorder\fR
|
|
.sp
|
|
Reorder tests to minimize the number of server restarts needed.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-report\-features\fR
|
|
.sp
|
|
Display the output of
|
|
SHOW ENGINES
|
|
and
|
|
SHOW VARIABLES. This can be used to verify that binaries are built with all required features.
|
|
.sp
|
|
This option was added in MySQL 4.1.23, 5.0.30, and 5.1.14.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-script\-debug\fR
|
|
.sp
|
|
Enable debug output for
|
|
\fBmysql\-test\-run.pl\fR
|
|
itself.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-skip\-im\fR
|
|
.sp
|
|
Do not start Instance Manager; skip Instance Manager test cases.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-skip\-master\-binlog\fR
|
|
.sp
|
|
Do not enable master server binary logging.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-skip\-ndbcluster\fR,
|
|
\fB\-\-skip\-ndb\fR
|
|
.sp
|
|
Do not start NDB Cluster; skip Cluster test cases.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-skip\-ndbcluster\-slave\fR,
|
|
\fB\-\-skip\-ndb\-slave\fR
|
|
.sp
|
|
Do not start an NDB Cluster slave.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-skip\-rpl\fR
|
|
.sp
|
|
Skip replication test cases.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-skip\-slave\-binlog\fR
|
|
.sp
|
|
Do not enable master server binary logging.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-skip\-ssl\fR
|
|
.sp
|
|
Do not start
|
|
\fBmysqld\fR
|
|
with support for SSL connections.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-skip\-test=\fR\fB\fIregex\fR\fR
|
|
.sp
|
|
Specify a regular expression to be applied to test case names. Cases with names that match the expression are skipped. tests to skip.
|
|
.sp
|
|
As of MySQL 5.0.54/5.1.23/6.0.5, the argument for the
|
|
\fB\-\-skip\-test\fR
|
|
option allows more flexible specification of which tests to skip. If the argument contains a pattern metacharacter other than a lone period, it is interpreted as a Perl regular expression and applies to test names that match the pattern. See the description of the
|
|
\fB\-\-do\-test\fR
|
|
option for details.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-skip\-*\fR
|
|
.sp
|
|
\fB\-\-skip\-*\fR
|
|
options not otherwise recognized by
|
|
\fBmysql\-test\-run.pl\fR
|
|
are passed to the master server.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-slave\-binary=\fR\fB\fIpath\fR\fR
|
|
.sp
|
|
Specify the path of the
|
|
\fBmysqld\fR
|
|
binary to use for slave servers.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-slave_port=\fR\fB\fIport_num\fR\fR
|
|
.sp
|
|
Specify the TCP/IP port number for the first master server to use. Observe that the option name has an underscore and not a dash.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-sleep=\fR\fB\fIN\fR\fR
|
|
.sp
|
|
Pass
|
|
\fB\-\-sleep=\fR\fB\fIN\fR\fR
|
|
to
|
|
\fBmysqltest\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-small\-bench\fR
|
|
.sp
|
|
Run the benchmarks with the
|
|
\fB\-\-small\-tests\fR
|
|
and
|
|
\fB\-\-small\-tables\fR
|
|
options.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-socket=\fR\fB\fIfile_name\fR\fR
|
|
.sp
|
|
For connections to
|
|
localhost, the Unix socket file to use, or, on Windows, the name of the named pipe to use.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-sp\-protocol\fR
|
|
.sp
|
|
Pass the
|
|
\fB\-\-sp\-protocol\fR
|
|
option to
|
|
\fBmysqltest\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-ssl\fR
|
|
.sp
|
|
If
|
|
\fBmysql\-test\-run.pl\fR
|
|
is started with the
|
|
\fB\-\-ssl\fR
|
|
option, it sets up a secure conection for all test cases. In this case, if
|
|
\fBmysqld\fR
|
|
does not support SSL,
|
|
\fBmysql\-test\-run.pl\fR
|
|
exits with an error message:
|
|
Couldn't find support for SSL
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-start\fR
|
|
.sp
|
|
Initialize and start servers with the startup settings for the first specified test case. For example:
|
|
.sp
|
|
.RS 3n
|
|
.nf
|
|
shell> \fBcd mysql\-test\fR
|
|
shell> \fB./mysql\-test\-run.pl \-\-start alias &\fR
|
|
.fi
|
|
.RE
|
|
This option was added in MySQL 5.1.32/6.0.11.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-start\-and\-exit\fR
|
|
.sp
|
|
Initialize and start servers with the startup settings for the specified test case or cases, if any, and then exit. You can use this option to start a server to which you can connect later. For example, after building a source distribution you can start a server and connect to it with the
|
|
\fBmysql\fR
|
|
client like this:
|
|
.sp
|
|
.RS 3n
|
|
.nf
|
|
shell> \fBcd mysql\-test\fR
|
|
shell> \fB./mysql\-test\-run.pl \-\-start\-and\-exit\fR
|
|
shell> \fB../mysql \-S ./var/tmp/master.sock \-h localhost \-u root\fR
|
|
.fi
|
|
.RE
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-start\-dirty\fR
|
|
.sp
|
|
Start servers (without initialization) for the specified test case or cases, if any, and then exit. You can then manually run the test cases.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-start\-from=\fR\fB\fItest_name\fR\fR
|
|
.sp
|
|
\fBmysql\-test\-run.pl\fR
|
|
sorts the list of names of the test cases to be run, and then begins with
|
|
\fItest_name\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-strace\-client\fR
|
|
.sp
|
|
Create
|
|
\fBstrace\fR
|
|
output for
|
|
\fBmysqltest\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-stress\fR
|
|
.sp
|
|
Run the stress test. The other
|
|
\fB\-\-stress\-\fR\fB\fIxxx\fR\fR
|
|
options apply in this case.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-stress\-init\-file=\fR\fB\fIfile_name\fR\fR
|
|
.sp
|
|
\fIfile_name\fR
|
|
is the location of the file that contains the list of tests. The default file is
|
|
\fIstress_init.txt\fR
|
|
in the test suite directory.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-stress\-loop\-count=\fR\fB\fIN\fR\fR
|
|
.sp
|
|
In sequential stress\-test mode, the number of loops to execute before exiting.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-stress\-mode=\fR\fB\fImode\fR\fR
|
|
.sp
|
|
This option indicates the test order in stress\-test mode. The
|
|
\fImode\fR
|
|
value is either
|
|
random
|
|
to select tests in random order or
|
|
seq
|
|
to run tests in each thread in the order specified in the test list file. The default mode is
|
|
random.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-stress\-suite=\fR\fB\fIsuite_name\fR\fR
|
|
.sp
|
|
The name of the test suite to use for stress testing. The default suite name is
|
|
main
|
|
(the regular test suite located in the
|
|
\fImysql\-test\fR
|
|
directory).
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-stress\-test\-count=\fR\fB\fIN\fR\fR
|
|
.sp
|
|
For stress testing, the number of tests to execute before exiting.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-stress\-test\-duration=\fR\fB\fIN\fR\fR
|
|
.sp
|
|
For stress testing, the duration of stress testing in seconds.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-stress\-test\-file=\fR\fB\fIfile_name\fR\fR
|
|
.sp
|
|
The file that contains the list of tests to use in stress testing. The tests should be named without the
|
|
\fI.test\fR
|
|
extension. The default file is
|
|
\fIstress_tests.txt\fR
|
|
in the test suite directory.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-stress\-threads=\fR\fB\fIN\fR\fR
|
|
.sp
|
|
The number of threads to use in stress testing. The default is 5.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-suite=\fR\fB\fIsuite_name\fR\fR
|
|
.sp
|
|
Run the named test suite. The default name is
|
|
main
|
|
(the regular test suite located in the
|
|
\fImysql\-test\fR
|
|
directory).
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-suite\-timeout=\fR\fB\fIminutes\fR\fR
|
|
.sp
|
|
Specify the maximum test suite runtime.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-testcase\-timeout\fR
|
|
.sp
|
|
Specify the maximum test case runtime.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-timer\fR
|
|
.sp
|
|
Cause
|
|
\fBmysqltest\fR
|
|
to generate a timing file. The default file is named
|
|
\fI./var/log/timer\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-tmpdir=\fR\fB\fIpath\fR\fR
|
|
.sp
|
|
The directory where temporary file are stored. The default location is
|
|
\fI./var/tmp\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-unified\-diff\fR,
|
|
\fB\-\-udiff\fR
|
|
.sp
|
|
Use unified diff format when presenting differences between expected and actual test case results.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-use\-old\-data\fR
|
|
.sp
|
|
Do not install the test databases. (Use existing ones.)
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-user\-test=\fR\fB\fIval\fR\fR
|
|
.sp
|
|
Unused.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-user=\fR\fB\fIuser_name\fR\fR
|
|
.sp
|
|
The MySQL user name to use when connecting to the server.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-valgrind\fR
|
|
.sp
|
|
Run
|
|
\fBmysqltest\fR
|
|
and
|
|
\fBmysqld\fR
|
|
with
|
|
\fBvalgrind\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-valgrind\-all\fR
|
|
.sp
|
|
Like
|
|
\fB\-\-valgrind\fR, but passes the
|
|
\fB\-\-verbose\fR
|
|
and
|
|
\fB\-\-show\-reachable\fR
|
|
options to
|
|
\fBvalgrind\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-valgrind\-mysqltest\fR
|
|
.sp
|
|
Run
|
|
\fBmysqltest\fR
|
|
with
|
|
\fBvalgrind\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-valgrind\-mysqltest\-all\fR
|
|
.sp
|
|
Like
|
|
\fB\-\-valgrind\-mysqltest\fR, but passes the
|
|
\fB\-\-verbose\fR
|
|
and
|
|
\fB\-\-show\-reachable\fR
|
|
options to
|
|
\fBvalgrind\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-valgrind\-options=\fR\fB\fIstr\fR\fR
|
|
.sp
|
|
Extra options to pass to
|
|
\fBvalgrind\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-valgrind\-path=\fR\fB\fIpath\fR\fR
|
|
.sp
|
|
Specify the path name to the
|
|
\fBvalgrind\fR
|
|
executable.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-vardir=\fR\fB\fIpath\fR\fR
|
|
.sp
|
|
Specify the path where files generated during the test run are stored. The default location is
|
|
\fI./var\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-view\-protocol\fR
|
|
.sp
|
|
Pass the
|
|
\fB\-\-view\-protocol\fR
|
|
option to
|
|
\fBmysqltest\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-vs\-config=\fR\fB\fIconfig_val\fR\fR
|
|
.sp
|
|
Specify the configuration used to build MySQL (for example,
|
|
\fB\-\-vs\-config=debug\fR
|
|
\fB\-\-vs\-config=release\fR). This option is for Windows only. It is available as of MySQL 4.1.23, 5.0.30, and 5.1.14.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-wait\-timeout=\fR\fB\fIN\fR\fR
|
|
.sp
|
|
Unused?
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-warnings\fR
|
|
.sp
|
|
This option is a synonym for
|
|
\fB\-\-log\-warnings\fR.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-with\-ndbcluster\fR
|
|
.sp
|
|
Use NDB Cluster and enable test cases that require it.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-with\-ndbcluster\-all\fR
|
|
.sp
|
|
Use NDB Cluster in all tests.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-with\-ndbcluster\-only\fR
|
|
.sp
|
|
Run only test cases that have
|
|
ndb
|
|
in their name.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-with\-ndbcluster\-slave\fR
|
|
.sp
|
|
Unknown.
|
|
.TP 3n
|
|
\(bu
|
|
\fB\-\-with\-openssl\fR
|
|
.sp
|
|
This option is a synonym for
|
|
\fB\-\-ssl\fR.
|
|
.sp
|
|
.RE
|
|
.sp
|
|
.it 1 an-trap
|
|
.nr an-no-space-flag 1
|
|
.nr an-break-flag 1
|
|
.br
|
|
\fBNote\fR
|
|
.PP
|
|
\fBmysql\-test\-run\fR
|
|
supports the following options not supported by
|
|
\fBmysql\-test\-run.pl\fR:
|
|
\fB\-\-local\fR,
|
|
\fB\-\-local\-master\fR,
|
|
\fB\-\-ndb\-verbose\fR,
|
|
\fB\-\-ndb_mgm\-extra\-opts\fR,
|
|
\fB\-\-ndb_mgmd\-extra\-opts\fR,
|
|
\fB\-\-ndbd\-extra\-opts\fR,
|
|
\fB\-\-old\-master\fR,
|
|
\fB\-\-purify\fR,
|
|
\fB\-\-use\-old\-data\fR,
|
|
\fB\-\-valgrind\-mysqltest\-all\fR.
|
|
.PP
|
|
Conversely,
|
|
\fBmysql\-test\-run.pl\fR
|
|
supports the following options not supported by
|
|
\fBmysql\-test\-run\fR:
|
|
\fB\-\-benchdir\fR,
|
|
\fB\-\-check\-testcases\fR,
|
|
\fB\-\-client\-ddd\fR,
|
|
\fB\-\-client\-debugger\fR,
|
|
\fB\-\-cursor\-protocol\fR,
|
|
\fB\-\-debugger\fR,
|
|
\fB\-\-im\-mysqld1\-port\fR,
|
|
\fB\-\-im\-mysqld2\-port\fR,
|
|
\fB\-\-im\-port\fR,
|
|
\fB\-\-manual\-debug\fR,
|
|
\fB\-\-netware\fR,
|
|
\fB\-\-notimer\fR,
|
|
\fB\-\-reorder\fR,
|
|
\fB\-\-script\-debug\fR,
|
|
\fB\-\-skip\-im\fR,
|
|
\fB\-\-skip\-ssl\fR,
|
|
\fB\-\-sp\-protocol\fR,
|
|
\fB\-\-start\-dirty\fR,
|
|
\fB\-\-suite\fR,
|
|
\fB\-\-suite\-timeout\fR,
|
|
\fB\-\-testcase\-timeout\fR,
|
|
\fB\-\-udiff\fR,
|
|
\fB\-\-unified\-diff\fR,,
|
|
\fB\-\-valgrind\-path\fR,
|
|
\fB\-\-vardir\fR,
|
|
\fB\-\-view\-protocol\fR.
|
|
.SH "COPYRIGHT"
|
|
.PP
|
|
Copyright 2007\-2008 MySQL AB, 2009 Sun Microsystems, Inc.
|
|
.PP
|
|
This documentation is free software; you can redistribute it and/or modify it only under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License.
|
|
.PP
|
|
This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
|
.PP
|
|
You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110\-1301 USA or see http://www.gnu.org/licenses/.
|
|
.SH "REFERENCES"
|
|
.TP 3
|
|
1.\ Typical configure Options
|
|
\%http://dev.mysql.com/doc/refman/5.1/en/configure\-options.html
|
|
.SH "SEE ALSO"
|
|
For more information, please refer to the MySQL Reference Manual,
|
|
which may already be installed locally and which is also available
|
|
online at http://dev.mysql.com/doc/.
|
|
.SH AUTHOR
|
|
MySQL AB (http://www.mysql.com/).
|