summaryrefslogtreecommitdiff
path: root/mysql-test/suite/innodb/t/xa_debug.test
Commit message (Collapse)AuthorAgeFilesLines
* MDEV-15772: Clean up the testmariadb-5.5.64Marko Mäkelä2019-04-261-0/+1
| | | | | | Before killing the server, we must issue FLUSH TABLES in order to cleanly close any MyISAM system tables, to avoid warnings about them when restarting.
* MDEV-15772 Potential list overrun during XA recoveryThirunarayanan Balathandayuthapani2019-04-241-0/+45
InnoDB could return the same list again and again if the buffer passed to trx_recover_for_mysql() is smaller than the number of transactions that InnoDB recovered in XA PREPARE state. We introduce the transaction state TRX_PREPARED_RECOVERED, which is like TRX_PREPARED, but will be set during trx_recover_for_mysql() so that each transaction will only be returned once. Because init_server_components() is invoking ha_recover() twice, we must reset the state of the transactions back to TRX_PREPARED after returning the complete list, so that repeated traversals will see the complete list again, instead of seeing an empty list. Without this tweak, the test main.tc_heuristic_recover would hang in MariaDB 10.1.