1MYSQL-TEST-RUN() MYSQL-TEST-RUN()
2
3
4
6 mysql-test-run.pl - run MariaDB test suite
7
9 mysql-test-run.pl [options]
10
12 The mysql-test-run.pl Perl script is the main application used to run
13 the MariaDB test suite. It invokes mysqltest to run individual test
14 cases.
15
16 Invoke mysql-test-run.pl in the mysql-test directory like this:
17
18 shell> mysql-test-run.pl [options] [test_name] ...
19
20 Each test_name argument names a test case. The test case file that
21 corresponds to the test name is t/test_name.test.
22
23 For each test_name argument, mysql-test-run.pl runs the named test
24 case. With no test_name arguments, mysql-test-run.pl runs all .test
25 files in the t subdirectory.
26
27 If no suffix is given for the test name, a suffix of .test is assumed.
28 Any leading path name is ignored. These commands are equivalent:
29
30 shell> mysql-test-run.pl mytest
31 shell> mysql-test-run.pl mytest.test
32 shell> mysql-test-run.pl t/mytest.test
33
34 A suite name can be given as part of the test name. That is, the syntax
35 for naming a test is:
36
37 [suite_name.]test_name[.suffix]
38
39 If a suite name is given, mysql-test-run.pl looks in that suite for the
40 test. The test file corresponding to a test named suite_name.test_name
41 is found in suite/suite_name/t/test_name.test. There is also an
42 implicit suite name main for the tests in the top t directory. With no
43 suite name, mysql-test-run.pl looks in the default list of suites for a
44 match and runs the test in any suites where it finds the test. Suppose
45 that the default suite list is main, binlog, rpl, and that a test
46 mytest.test exists in the main and rpl suites. With an argument of
47 mytest or mytest.test, mysql-test-run.pl will run mytest.test from the
48 main and rpl suites.
49
50 To run a family of test cases for which the names share a common
51 prefix, use the --do-test=prefix option. For example, --do-test=rpl
52 runs the replication tests (test cases that have names beginning with
53 rpl). --skip-test has the opposite effect of skipping test cases for
54 which the names share a common prefix.
55
56 The argument for the --do-test and --skip-test options also allows more
57 flexible specification of which tests to perform or skip. If the
58 argument contains a pattern metacharacter other than a lone period, it
59 is interpreted as a Perl regular expression and applies to test names
60 that match the pattern. If the argument contains a lone period or does
61 not contain any pattern metacharacters, it is interpreted the same way
62 as previously and matches test names that begin with the argument
63 value. For example, --do-test=testa matches tests that begin with
64 testa, --do-test=main.testa matches tests in the main test suite that
65 begin with testa, and --do-test=main.*testa matches test names that
66 contain main followed by testa with anything in between. In the latter
67 case, the pattern match is not anchored to the beginning of the test
68 name, so it also matches names such as xmainytesta.
69
70 To perform setup prior to running tests, mysql-test-run.pl needs to
71 invoke mysqld with the --bootstrap and --skip-grant-tables options. If
72 MySQL was configured with the --disable-grant-options option,
73 --bootstrap, --skip-grant-tables, and --init-file will be disabled. To
74 handle this, set the MYSQLD_BOOTSTRAP environment variable to the full
75 path name of a server that has all options enabled. mysql-test-run.pl
76 will use that server to perform setup; it is not used to run the tests.
77
78 The init_file test will fail if --init-file is disabled. This is an
79 expected failure that can be handled as follows:
80
81 shell> export MYSQLD_BOOTSTRAP
82 shell> MYSQLD_BOOTSTRAP=/full/path/to/mysqld
83 shell> make test force="--skip-test=init_file"
84
85 To run mysql-test-run.pl on Windows, you´ll need either Cygwin or
86 ActiveState Perl to run it. You may also need to install the modules
87 required by the script. To run the test script, change location into
88 the mysql-test directory, set the MTR_VS_CONFIG environment variable to
89 the configuration you selected earlier (or use the --vs-config option),
90 and invoke mysql-test-run.pl. For example (using Cygwin and the bash
91 shell):
92
93 shell> cd mysql-test
94 shell> export MTR_VS_CONFIG=debug
95 shell> ./mysqltest-run.pl --force --timer
96 shell> ./mysqltest-run.pl --force --timer --ps-protocol
97
98 mysql-test-run.pl uses several environment variables. Some of them are
99 listed in the following table. Some of these are set from the outside
100 and used by mysql-test-run.pl, others are set by mysql-test-run.pl
101 instead, and may be referred to in tests.
102
103 ┌─────────────────┬────────────────────────────────────┐
104 │Variable │ Meaning │
105 ├─────────────────┼────────────────────────────────────┤
106 │MTR_VERSION │ If set to 1, will run the │
107 │ │ older version 1 of │
108 │ │ mysql-test-run.pl. │
109 │ │ This will affect │
110 │ │ what │
111 │ │ functionailty is available │
112 │ │ and what command line │
113 │ │ options │
114 │ │ are supported. │
115 ├─────────────────┼────────────────────────────────────┤
116 │MTR_MEM │ If set to anything, will run tests │
117 │ │ with files in "memory" using tmpfs │
118 │ │ or │
119 │ │ ramdisk. Not │
120 │ │ available on Windows. Same as │
121 │ │ --mem option │
122 ├─────────────────┼────────────────────────────────────┤
123 │MTR_PARALLEL │ If set, defines number of parallel │
124 │ │ threads executing tests. Same as │
125 │ │ --parallel option │
126 ├─────────────────┼────────────────────────────────────┤
127 │MTR_BUILD_THREAD │ If set, defines which port number │
128 │ │ range is used for the server │
129 ├─────────────────┼────────────────────────────────────┤
130 │MTR_PORT_BASE │ If set, defines which port number │
131 │ │ range is used for the server │
132 ├─────────────────┼────────────────────────────────────┤
133 │MTR_NAME_TIMEOUT │ Setting of a timeout in minutes or │
134 │ │ seconds, corresponding to command │
135 │ │ line option │
136 │ │ --name-timeout. │
137 │ │ Available timeout │
138 │ │ names are TESTCASE, │
139 │ │ SUITE (both in │
140 │ │ minutes) and │
141 │ │ START, SHUTDOWN │
142 │ │ (both in seconds). │
143 │ │ These variables are supported from │
144 │ │ MySQL 5.1.44. │
145 ├─────────────────┼────────────────────────────────────┤
146 │MYSQL_TEST │ Path name to mysqltest binary │
147 ├─────────────────┼────────────────────────────────────┤
148 │MYSQLD_BOOTSTRAP │ Full path name to mysqld that has │
149 │ │ all options enabled │
150 ├─────────────────┼────────────────────────────────────┤
151 │MYSQLTEST_VARDIR │ Path name to the var directory │
152 │ │ that is used for │
153 │ │ logs, temporary │
154 │ │ files, and so forth │
155 ├─────────────────┼────────────────────────────────────┤
156 │MYSQL_TEST_DIR │ Full path to the mysql-test │
157 │ │ directory where tests │
158 │ │ are being run from │
159 ├─────────────────┼────────────────────────────────────┤
160 │MYSQL_TMP_DIR │ Path to temp directory used for │
161 │ │ temporary files during tests │
162 └─────────────────┴────────────────────────────────────┘
163
164 The variable MTR_PORT_BASE was added in MySQL 5.1.45 as a more logical
165 replacement for MTR_BUILD_THREAD. It gives the actual port number
166 directly (will be rounded down to a multiple of 10). If you use
167 MTR_BUILD_THREAD, the port number is found by multiplying this by 10
168 and adding 10000.
169
170 Tests sometimes rely on certain environment variables being defined.
171 For example, certain tests assume that MYSQL_TEST is defined so that
172 mysqltest can invoke itself with exec $MYSQL_TEST.
173
174 Other tests may refer to the last three variables listed in the
175 preceding table, to locate files to read or write. For example, tests
176 that need to create files will typically put them in
177 $MYSQL_TMP_DIR/file_name.
178
179 If you are running mysql-test-run.pl version 1 by setting MTR_VERSION,
180 note that this only affects the test driver, not the test client (and
181 its language) or the tests themselves.
182
183 A few tests might not run with version 1 because they depend on some
184 feature of version 2. You may have those tests skipped by adding the
185 test name to the file lib/v1/incompatible.tests. This feature is
186 available from MySQL 5.1.40.
187
188 mysql-test-run.pl supports the options in the following list. An
189 argument of -- tells mysql-test-run.pl not to process any following
190 arguments as options.
191
192 · --help, -h
193
194 Display a help message and exit.
195
196 · --big-test
197
198 Allow tests marked as "big" to run. Tests can be thus marked by
199 including the line --source include/big_test.inc, and they will
200 only be run if this option is given, or if the environment variable
201 BIG_TEST is set to 1. Repeat this option twice to run only "big"
202 tests.
203
204 This is typically used for tests that take a very long to run, or
205 that use many resources, so that they are not suitable for running
206 as part of a normal test suite run.
207
208 · --boot-dbx
209
210 Run the mysqld server used for bootstrapping the database through
211 the dbx debugger.
212
213 · --boot-ddd
214
215 Run the mysqld server used for bootstrapping the database through
216 the ddd debugger.
217
218 · --boot-gdb
219
220 Run the mysqld server used for bootstrapping the database through
221 the gdb debugger.
222
223 · --[mtr-]build-thread=number
224
225 Specify a number to calculate port numbers from. The formula is 10
226 * build_thread + 10000. Instead of a number, it can be set to auto,
227 which is also the default value, in which case mysql-test-run.pl
228 will allocate a number unique to this host.
229
230 The value (number or auto) can also be set with the
231 MTR_BUILD_THREAD environment variable.
232
233 The more logical --port-base is supported as an alternative.
234
235 · --callgrind
236
237 Instructs valgrind to use callgrind.
238
239 · --check-testcases
240
241 Check test cases for side effects. This is done by checking system
242 state before and after each test case; if there is any difference,
243 a warning to that effect will be written, but the test case will
244 not be marked as failed because of it. This check is enabled by
245 default.
246
247 · --client-bindir=path
248
249 The path to the directory where client binaries are located.
250
251 · --client-dbx
252
253 Start mysqltest in the dbx debugger.
254
255 · --client-ddd
256
257 Start mysqltest in the ddd debugger.
258
259 · --client-debugger=debugger
260
261 Start mysqltest in the named debugger.
262
263 · --client-gdb
264
265 Start mysqltest in the gdb debugger.
266
267 · --client-libdir=path
268
269 The path to the directory where client libraries are located.
270
271 · --combination=value
272
273 Extra options to pass to mysqld. The value should consist of one or
274 more comma-separated mysqld options. This option is similar to
275 --mysqld but should be given two or more times. mysql-test-run.pl
276 executes multiple test runs, using the options for each instance of
277 --combination in successive runs. If --combination is given only
278 once, it has no effect. For test runs specific to a given test
279 suite, an alternative to the use of --combination is to create a
280 combinations file in the suite directory. The file should contain a
281 section of options for each test run.
282
283 · --comment=str
284
285 Write str to the output within lines filled with #, as a form of
286 banner.
287
288 · --compress
289
290 Compress all information sent between the client and the server if
291 both support compression.
292
293 · --cursor-protocol
294
295 Use the cursor protocol between client and server (implies
296 --ps-protocol).
297
298 · --dbx
299
300 Start the mysqld(s) in the dbx debugger.
301
302 · --ddd
303
304 Start the mysqld(s) in the ddd debugger.
305
306 · --debug
307
308 Dump trace output for all clients and servers.
309
310 · --debug-common
311
312 Same as --debug, but sets the 'd' debug flags to
313 "query,info,error,enter,exit".
314
315 · --debug-server
316
317 Use debug version of server, but without turning on tracing.
318
319 · --debugger=debugger
320
321 Start mysqld using the named debugger.
322
323 · --debug-sync-timeout=N
324
325 Controls whether the Debug Sync facility for testing and debugging
326 is enabled. The option value is a timeout in seconds. The default
327 value is 300. A value of 0 disables Debug Sync. The value of this
328 option also becomes the default timeout for individual
329 synchronization points.
330
331 mysql-test-run.pl passes --loose-debug-sync-timeout=N to mysqld.
332 The --loose prefix is used so that mysqld does not fail if Debug
333 Sync is not compiled in.
334
335 · --defaults-file=file_name
336
337 Use the named file as fixed config file template for all tests.
338
339 · --defaults_extra_file=file_name
340
341 Add setting from the named file to all generated configs.
342
343 · --do-test=prefix|regex
344
345 Run all test cases having a name that begins with the given prefix
346 value, or fulfils the regex. This option provides a convenient way
347 to run a family of similarly named tests.
348
349 The argument for the --do-test option also allows more flexible
350 specification of which tests to perform. If the argument contains a
351 pattern metacharacter other than a lone period, it is interpreted
352 as a Perl regular expression and applies to test names that match
353 the pattern. If the argument contains a lone period or does not
354 contain any pattern metacharacters, it is interpreted the same way
355 as previously and matches test names that begin with the argument
356 value. For example, --do-test=testa matches tests that begin with
357 testa, --do-test=main.testa matches tests in the main test suite
358 that begin with testa, and --do-test=main.*testa matches test names
359 that contain main followed by testa with anything in between. In
360 the latter case, the pattern match is not anchored to the beginning
361 of the test name, so it also matches names such as xmainytestz.
362
363 · --dry-run
364
365 Don't run any tests, print the list of tests that were selected for
366 execution.
367
368 · --embedded-server
369
370 Use a version of mysqltest built with the embedded server.
371
372 · --enable-disabled
373
374 Ignore any disabled.def file, and also run tests marked as
375 disabled. Success or failure of those tests will be reported the
376 same way as other tests.
377
378 · --experimental=file_name
379
380 Specify a file that contains a list of test cases that should be
381 displayed with the [ exp-fail ] code rather than [ fail ] if they
382 fail.
383
384 For an example of a file that might be specified via this option,
385 see mysql-test/collections/default.experimental.
386
387 · --extern option=value
388
389 Use an already running server. The option/value pair is what is
390 needed by the mysql client to connect to the server. Each --extern
391 option can only take one option/value pair as an argument, so you
392 need to repeat --extern for each pair needed. Example:
393
394 ./mysql-test-run.pl --extern socket=var/tmp/mysqld.1.sock alias
395
396 Note: If a test case has an .opt file that requires the server to
397 be restarted with specific options, the file will not be used. The
398 test case likely will fail as a result.
399
400 · --fast
401
402 Do not perform controlled shutdown when servers need to be
403 restarted or at the end of the test run. This is equivalent to
404 using --shutdown-timeout=0.
405
406 · --force-restart
407
408 Always restart servers between tests.
409
410 · --force
411
412 Normally, mysql-test-run.pl exits if a test case fails. --force
413 causes execution to continue regardless of test case failure.
414
415 · --gcov
416
417 Collect coverage information after the test. The result is a gcov
418 file per source and header file.
419
420 · --gcov-src-dir
421
422 Colllect coverage only within the given subdirectory. For example,
423 if you're only developing the SQL layer, it makes sense to use
424 --gcov-src-dir=sql.
425
426 · --gdb
427
428 Start the mysqld(s) in the gdb debugger.
429
430 · --gprof
431
432 Collect profiling information using the gprof profiling tool.
433
434 · --manual-dbx
435
436 Use a server that has already been started by the user in the dbx
437 debugger.
438
439 · --manual-ddd
440
441 Use a server that has already been started by the user in the ddd
442 debugger.
443
444 · --manual-debug
445
446 Use a server that has already been started by the user in a
447 debugger.
448
449 · --manual-gdb
450
451 Use a server that has already been started by the user in the gdb
452 debugger.
453
454 · --manual-lldb
455
456 Use a server that has already been started by the user in the lldb
457 debugger.
458
459 · --mark-progress
460
461 Marks progress with timing (in milliseconds) and line number in
462 var/log/testname.progress.
463
464 · --max-connections=num
465
466 The maximum number of simultaneous server connections that may be
467 used per test. If not set, the maximum is 128. Minimum allowed
468 limit is 8, maximum is 5120. Corresponds to the same option for
469 mysqltest.
470
471 · --max-save-core=N
472
473 Limit the number of core files saved, to avoid filling up disks in
474 case of a frequently crashing server. Defaults to 5, set to 0 for
475 no limit. May also be set with the environment variable
476 MTR_MAX_SAVE_CORE
477
478 · --max-save-datadir=N
479
480 Limit the number of data directories saved after failed tests, to
481 avoid filling up disks in case of frequent failures. Defaults to
482 20, set to 0 for no limit. May also be set with the environment
483 variable MTR_MAX_SAVE_DATADIR
484
485 · --max-test-fail=N
486
487 Stop execution after the specified number of tests have failed, to
488 avoid using up resources (and time) in case of massive failures.
489 retries are not counted, nor are failures of tests marked
490 experimental. Defaults to 10, set to 0 for no limit. May also be
491 set with the environment variable MTR_MAX_TEST_FAIL
492
493 · --mem
494
495 This option is not supported on Windows.
496
497 Run the test suite in memory, using tmpfs or ramdisk. This can
498 decrease test times significantly, in particular if you would
499 otherwise be running over a remote file system. mysql-test-run.pl
500 attempts to find a suitable location using a built-in list of
501 standard locations for tmpfs and puts the var directory there. This
502 option also affects placement of temporary files, which are created
503 in var/tmp.
504
505 The default list includes /dev/shm. You can also enable this option
506 by setting the environment variable MTR_MEM[=dir_name]. If dir_name
507 is given, it is added to the beginning of the list of locations to
508 search, so it takes precedence over any built-in locations.
509
510 Once you have run tests with --mem within a mysql-testdirectory, a
511 soflink var will have been set up to the temporary directory, and
512 this will be re-used the next time, until the soflink is deleted.
513 Thus, you do not have to repeat the --mem option next time.
514
515 · --mysqld=value
516
517 Extra options to pass to mysqld. The value should consist of one or
518 more comma-separated mysqld options.
519
520 · --mysqld-env=VAR=VAL
521
522 Specify additional environment settings for "mysqld". Use
523 additional --mysqld-env options to set more than one variable.
524
525 · --nocheck-testcases
526
527 Disable the check for test case side effects; see --check-testcases
528 for a description.
529
530 · --noreorder
531
532 Do not reorder tests to reduce number of restarts, but run them in
533 exactly the order given. If a whole suite is to be run, the tests
534 are run in alphabetical order, though similar combinations will be
535 grouped together. If more than one suite is listed, the tests are
536 run one suite at a time, in the order listed.
537
538 · --notimer
539
540 Cause mysqltest not to generate a timing file. The effect of this
541 is that the report from each test case does not include the timing
542 in milliseconds as it normally does.
543
544 · --nowarnings
545
546 Do not look for and report errors and warning in the server logs.
547
548 · --parallel={N|auto}
549
550 Run tests using N parallel threads. By default, 1 thread is used.
551 Use --parallel=auto for auto-setting of N.
552
553 · --[mtr-]port-base=P
554
555 Specify base of port numbers to be used; a block of 10 will be
556 allocated. P should be divisible by 10; if it is not, it will be
557 rounded down. If running with more than one parallel test thread,
558 thread 2 will use the next block of 10 and so on.
559
560 If the port number is given as auto, which is also the default,
561 mysql-test-run.pl will allocate a number unique to this host. The
562 value may also be given with the environment variable
563 MTR_PORT_BASE.
564
565 If both --build-thread and --port-base are used, --port-base takes
566 precedence.
567
568 · --print-testcases
569
570 Do not run any tests, but print details about all tests, in the
571 order they would have been run.
572
573 · --ps-protocol
574
575 Use the binary protocol between client and server.
576
577 · --record
578
579 Pass the --record option to mysqltest. This option requires a
580 specific test case to be named on the command line.
581
582 · --reorder
583
584 Reorder tests to minimize the number of server restarts needed.
585 This is the default behavior. There is no guarantee that a
586 particular set of tests will always end up in the same order.
587
588 · --repeat=N
589
590 Run each test N number of times.
591
592 · --report-features
593
594 First run a "test" that reports MariaDB features, displaying the
595 output of SHOW ENGINES and SHOW VARIABLES. This can be used to
596 verify that binaries are built with all required features.
597
598 · --report-times
599
600 Report how much time has been spent on different phases of test
601 execution.
602
603 · --retry=N
604
605 If a test fails, it is retried up to a maximum of N runs (default
606 1). Retries are also limited by the maximum number of failures
607 before stopping, set with the --retry-failure option. This option
608 has no effect unless --force is also used; without it, test
609 execution will terminate after the first failure.
610
611 The --retry and --retry-failure options do not affect how many
612 times a test repeated with --repeat may fail in total, as each
613 repetition is considered a new test case, which may in turn be
614 retried if it fails.
615
616 · --retry-failure=N
617
618 When using the --retry option to retry failed tests, stop when N
619 failures have occurred (default 2). Setting it to 0 or 1
620 effectively turns off retries.
621
622 · --shutdown-timeout=SECONDS
623
624 Max number of seconds to wait for servers to do controlled shutdown
625 before killing them. Default is 10.
626
627 · --skip-combinations
628
629 Do not apply combinations; ignore combinations file or option.
630
631 · --skip-rpl
632
633 Skip replication test cases.
634
635 · --skip-ssl
636
637 Do not start mysqld with support for SSL connections.
638
639 · --skip-test=regex|regex
640
641 Specify a regular expression to be applied to test case names.
642 Cases with names that match the expression are skipped. tests to
643 skip.
644
645 The argument for the --skip-test option allows more flexible
646 specification of which tests to skip. If the argument contains a
647 pattern metacharacter other than a lone period, it is interpreted
648 as a Perl regular expression and applies to test names that match
649 the pattern. See the description of the --do-test option for
650 details.
651
652 · --skip-test-list=FILE
653
654 Skip the tests listed in FILE. Each line in the file is an entry
655 and should be formatted as: <TESTNAME> : <COMMENT>
656
657 · --skip-*
658
659 --skip-* options not otherwise recognized by mysql-test-run.pl are
660 passed to the master server.
661
662 · --sleep=N
663
664 Pass --sleep=N to mysqltest.
665
666 · --sp-protocol
667
668 Create a stored procedure to execute all queries.
669
670 · --ssl
671
672 If mysql-test-run.pl is started with the --ssl option, it sets up a
673 secure connection for all test cases. In this case, if mysqld does
674 not support SSL, mysql-test-run.pl exits with an error message:
675 Couldn´t find support for SSL
676
677 · --staging-run
678
679 Run a limited number of tests (no slow tests). Used for running
680 staging trees with valgrind.
681
682 · --start
683
684 Initialize and start servers with the startup settings for the
685 specified test case. You can use this option to start a server to
686 which you can connect later. For example, after building a source
687 distribution you can start a server and connect to it with the
688 mysql client like this:
689
690 shell> cd mysql-test
691 shell> ./mysql-test-run.pl --start alias &
692 shell> ../mysql -S ./var/tmp/master.sock -h localhost -u root
693
694 If no tests are named on the command line, the server(s) will be
695 started with settings for the first test that would have been run
696 without the --start option.
697
698 mysql-test-run.pl will stop once the server has been started, but
699 will terminate if the server dies. If killed, it will also shut
700 down the server.
701
702 · --start-and-exit
703
704 Same --start, but mysql-test-run terminates and leaves just the
705 server running.
706
707 · --start-dirty
708
709 This is similar to --start, but will skip the database
710 initialization phase and assume that database files are already
711 available. Usually this means you must have run another test first.
712
713 · --start-from=test_name
714
715 mysql-test-run.pl sorts the list of names of the test cases to be
716 run, and then begins with test_name.
717
718 · --strace
719
720 Run the "mysqld" executables using strace. Default options are -f
721 -o var/log/'mysqld-name'.strace.
722
723 · --strace-client
724
725 Create strace output for mysqltest, optionally specifying name and
726 path to the trace program to use.
727
728 Example: ./mysql-test-run.pl --strace-client=ktrace
729
730 · --strace-option=ARGS
731
732 Option to give strace, replaces default option(s).
733
734 · --stress=ARGS
735
736 Run stress test, providing options to mysql-stress-test.pl. Options
737 are separated by comma.
738
739 · --suite[s]=suite_name...
740
741 Comma separated list of suite names to run. The default is:
742 "main-,archive-,binlog-,csv-,federated-,funcs_1-,funcs_2-,
743 handler-,heap-,innodb-,innodb_fts-,innodb_zip-,maria-,
744 multi_source-,optimizer_unfixed_bugs-,parts-,perfschema-,
745 plugins-,roles-,rpl-,sys_vars-,unit-,vcol-".
746
747 · --stop-file=file
748
749 If this file is detected, mysqltest will not start new tests until
750 the file is removed (also MTR_STOP_FILE environment variable).
751
752 · --stop-keep-alive=sec
753
754 Works with --stop-file, print messages every sec seconds when
755 mysqltest is waiting to remove the file (for buildbot) (also
756 MTR_STOP_KEEP_ALIVE environment variable).
757
758 · --suite-timeout=minutes
759
760 Specify the maximum test suite runtime in minutes. The default is
761 360.
762
763 · --testcase-timeout
764
765 Specify the maximum test case runtime in minutes. The default is
766 15.
767
768 · --timediff
769
770 Used with --timestamp, also print time passed since the previous
771 test started.
772
773 · --timer
774
775 Cause mysqltest to generate a timing file. The default file is
776 named ./var/log/timer.
777
778 · --timestamp
779
780 Prints a timestamp before the test case name in each test report
781 line, showing when the test ended.
782
783 · --tmpdir=path
784
785 The directory where temporary file are stored. The default location
786 is ./var/tmp. The environment variable MYSQL_TMP_DIR will be set to
787 the path for this directory, whether it has the default value or
788 has been set explicitly. This may be referred to in tests.
789
790 · --user=user_name
791
792 The MariaDB user name to use when connecting to the server (default
793 root).
794
795 · --user-args
796
797 In combination with start* and no test name, drops arguments to
798 mysqld except those specified with --mysqld (if any).
799
800 · --valgrind[-all]
801
802 Run mysqltest and mysqld with valgrind. This and the following
803 --valgrind options require that the executables have been built
804 with valgrind support.
805
806 · --valgrind-mysqld
807
808 Run the mysqld server with valgrind.
809
810 · --valgrind-mysqltest
811
812 Run the mysqltest and mysql_client_test executables with valgrind.
813
814 · --valgrind-option=str
815
816 Option to give valgrind. Replaces default option(s). Can be
817 specified more then once&.
818
819 · --valgrind-path=path
820
821 Path to the valgrind executable.
822
823 · --vardir=path
824
825 Specify the path where files generated during the test run are
826 stored. The default location is ./var. The environment variable
827 MYSQLTEST_VARDIR will be set to the path for this directory,
828 whether it has the default value or has been set explicitly. This
829 may be referred to in tests.
830
831 · --verbose
832
833 Give more verbose output regarding test execution. Use the option
834 twice to get even more output. Note that the output generated
835 within each test case is not affected.
836
837 · --verbose-restart
838
839 Write when and why servers are restarted between test cases.
840
841 · --view-protocol
842
843 Create a view to execute all non updating queries.
844
845 · --vs-config=config_val
846
847 Visual Studio configuration used to create executables (default:
848 MTR_VS_CONFIG environment variable) This option is for Windows
849 only.
850
851 · --wait-all
852
853 If --start or --start-dirty is used, wait for all servers to exit
854 before termination. Otherwise, it will terminate if one (of
855 several) servers is restarted.
856
857 · --warnings
858
859 Search the server log for errors or warning after each test and
860 report any suspicious ones; if any are found, the test will be
861 marked as failed. This is the default behavior, it may be turned
862 off with --nowarnings.
863
864
866 Copyright © 2007, 2010, Oracle and/or its affiliates, 2010-2015 MariaDB
867 Foundation
868
869 This documentation is free software; you can redistribute it and/or
870 modify it only under the terms of the GNU General Public License as
871 published by the Free Software Foundation; version 2 of the License.
872
873 This documentation is distributed in the hope that it will be useful,
874 but WITHOUT ANY WARRANTY; without even the implied warranty of
875 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
876 General Public License for more details.
877
878 You should have received a copy of the GNU General Public License along
879 with the program; if not, write to the Free Software Foundation, Inc.,
880 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see
881 http://www.gnu.org/licenses/.
882
883
885 For more information, please refer to the MariaDB Knowledge Base,
886 available online at https://mariadb.com/kb/
887
889 MariaDB Foundation (http://www.mariadb.org/).
890
891
892
893 MYSQL-TEST-RUN()