1 2 3 4This directory includes a set of three test suites aimed as testing functionality 5in an engine independent way, that is - the tests should work identically against 6different engines. 7 8 9The following suites are included: 10 111) 'funcs' suite 12 ------------- 13 A collection of functional tests covering basic engine and server functionality that can be run 14 against iany engine. 15 16 To run the test suite: 17 cd INSTALL_DIR/mysql-test 18 run: perl ./mysql-test-run.pl --suite=engines/funcs --mysqld=--default-storage-engine=<engine> 19 202) 'iuds' suite 21 ------------ 22 Similar to the above focused on insert/update/delete operations of different different data types. 23 24 To run the test suite: 25 cd INSTALL_DIR/mysql-test 26 run: perl ./mysql-test-run.pl --suite=engines/iuds --mysqld=--default-storage-engine=<engine> 27 283) 'rr_trx' suite (transactional engines only) 29 -------------- 30 A scenario of multiple client connections verifying transactions with repeatable read isolation level 31 32 To run the test suite with innodb: 33 cd INSTALL_DIR/mysql-test 34 run: perl ./suite/engines/rr_trx/run_stress_tx_rr.pl --engine=<engine> [--duration=<nn>] 35 [--threads=<nn>] [--try] [--help] 36 37 This test is can be run against any transactional engine. However scripts need to be modified in order 38 to support such engines (current scripts support only InnoDB). 39 In order to add support for a new engine, you will need to modify scripts as follows: 40 1) cd to INSTALL_DIR/mysql-test/suite/engines/rr_trx 41 2) Modify the 'run_stress_rr.pl' file by adding an 'elsif' section for your engine and have it 42 include specific values required to be passed as startup parameters to the MySQL server by 43 specifying them using "--mysqld" options (see InnoDB example). 44 3) Copy the 'init_innodb.txt' file to 'init_<engine>.txt file and change its content to be "init_<engine>". 45 4) In the 't' directory copy the "init_innodb.test" file to "init_<engine>.test" and change the value of 46 the '$engine' variable to <engine>. 47 5) In the 'r' directory copy "the init_innodb.result" file to "init_<engine>.result" and change refrences 48 to 'InnoDB' to <engine>. 49 50 51Known Issues 52------------ 531) The folowing tests in the 'iuds' suite: 54 - delete_decimal 55 - insert_decimal 56 - update_decimal 57 will return a 'Warning 1264 - Out of range value...' warning if run in a 32-bit environment. 58 Add the '--force' option to prevent the test run from aborting. 59 602) The following tests in the 'funcs' suite will fail when run against the innodb_plugin: 61 - crash_manycolumns_string (bug 50495) 62 - ix_unique_lob (bug 52056, masked by an 'Out of memory error' on some 32-bit platforms) 63 - ix_unique_string_length (bug 52056, masked by an 'Out of memory error' on some 32-bit platforms) 64 Add the '--force' option to prevent the test run from aborting. 65 663) Some of the rpl_xxx tests in the 'funcs' suite require a secific binlog_forat setting and will be 67 skipped otherwise. 68 694) Some of the rpl_xxx tests in the 'funcs' suite will report a 'Statement unsafe for replication' warning 70 when run againsr a server configured to use statement based replication. 71 72