Documentation Home
MySQL Internals Manual

MySQL Internals Manual  /  ...  /  Variation of the Storage Engine

26.5.1 Variation of the Storage Engine

  • Checks of the INFORMATION_SCHEMA

The storage engines to be used for information_schema tables are hardcoded. Therefore tests focussed on permissions, optimizer strategies, column data types etc. when selecting on INFORMATION_SCHEMA tables should not run with storage engine variations.

  • Please prepare the scripts at least for use with different storage engines.

That means mostly:

DO NOT use hardcoded storage engine assignments within CREATE TABLE statements.

  • If you assume that there is no significant impact of storage engines on your testing object,

create/run with storage engine variants and check this.

Solution 1:

Do not assign the storage engine within your CREATE TABLE statements at all. The default storage engine MyISAM will be used for your tables. Check your assumption with:

./ --mysqld="--default-storage-engine=<engine>" <test_case>

Solution 2:

Assign the storage engine to be used via $variable.

Top level script:

let $engine_type= MyISAM;

The same script or a sourced script:

eval CREATE TABLE .... ENGINE = $engine_type ...

Check your assumption by creating and running storage engine variants of the top level test.

--source include/
let $engine_type= Falcon;