The official document of mariadb does not mention the default CREATE TABLE options for tables using Aria Engine. The default options are list as below:
For the TRANSACTIONAL option, you may consider create a table as below(and ALTER the TRANSACTIONAL=1):
If you change the ROW_FORMAT to DYNAMIC or FIXED, everything just goes fine. But if you have ALTER the table with TRANSACTION=1 and change the ROW_FORMAT to DYNAMIC or FIXED, you may got a warning:
And the ROW_FORMAT will not be altered(remains PAGE). So you could draw the conclusion that the default is TRANSACTION=0.
- TRANSACTIONAL, the default value is TRANSACTIONAL=0, i.e., non-transactional.
- ROW_FORMAT, the default value is ROW_FORMAT=PAGE, which may suits both transactional and non-transactional tables.
- PAGE_CHECKSUM, the default value will follow aria_page_checksum system variable, which has default value ON.
For the TRANSACTIONAL option, you may consider create a table as below(and ALTER the TRANSACTIONAL=1):
CREATE TABLE `test_table` ( `id` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`id`) ) ENGINE=Aria;
If you change the ROW_FORMAT to DYNAMIC or FIXED, everything just goes fine. But if you have ALTER the table with TRANSACTION=1 and change the ROW_FORMAT to DYNAMIC or FIXED, you may got a warning:
SHOW WARNINGS; +-------+------+----------------------------------------------------------+ | Level | Code | Message | +-------+------+----------------------------------------------------------+ | Note | 1478 | Row format set to PAGE because of TRANSACTIONAL=1 option | +-------+------+----------------------------------------------------------+
And the ROW_FORMAT will not be altered(remains PAGE). So you could draw the conclusion that the default is TRANSACTION=0.
Comments