(mysql.info.gz) InnoDB Error handling
Info Catalog
(mysql.info.gz) File space management
(mysql.info.gz) InnoDB
(mysql.info.gz) InnoDB restrictions
15.16 Error Handling
====================
Error handling in `InnoDB' is not always the same as specified in the
SQL standard. According to the standard, any error during an SQL
statement should cause the rollback of that statement. `InnoDB'
sometimes rolls back only part of the statement, or the whole
transaction. The following items describe how `InnoDB' performs error
handling:
* If you run out of file space in the tablespace, you will get the
MySQL `Table is full' error and `InnoDB' rolls back the SQL
statement.
* A transaction deadlock or a timeout in a lock wait causes `InnoDB'
to roll back the whole transaction.
* A duplicate-key error rolls back only the insert of that
particular row, even in a statement like `INSERT INTO ... SELECT'.
This will probably change so that the SQL statement will be rolled
back if you have not specified the `IGNORE' option in your
statement.
* A "row too long" error rolls back the SQL statement.
* Other errors are mostly detected by the MySQL layer of code (above
the `InnoDB' storage engine level), and they roll back the
corresponding SQL statement.
During such implicit rollbacks, as well as during the explicit
`ROLLBACK' SQL command, `SHOW PROCESSLIST' will display "Rolling back"
in the `State' column for the connection (starting from MySQL 4.1.8).
Menu
* InnoDB error codes `InnoDB' Error Codes
* Operating System error codes Operating System Error Codes
Info Catalog
(mysql.info.gz) File space management
(mysql.info.gz) InnoDB
(mysql.info.gz) InnoDB restrictions
automatically generated byinfo2html