By default, ClustrixDB uses a default of AUTOCOMMIT = 1 for all sessions. START TRANSACTION or BEGIN will begin a new explicit transaction.
autocommit
The variable for autocommit can be set globally or for a session. If autocommit is disabled, changes made to tables are not made permanent until COMMIT is issued.
Caveats for Transactions
- ClustrixDB does not issue an implicit COMMIT for:
- ALTER TABLE
- ANALYZE TABLE
- FLUSH PRIVILEGES
- FLUSH TABLES
- REPAIR TABLE
- UNLOCK TABLES
- ClustrixDB will drop temporary tables upon transaction ROLLBACK.
- ClustrixDB will issue an implicit COMMIT when the database is restarted using dbrestart.
- ClustrixDB will always COMMIT any command to SET a global or session variable.
- ClustrixDB does not automatically commit data imported using SOURCE.
- ClustrixDB will issue a COMMIT if it encounters errors for:
- Unrecognized type name: Unknown type
- Unknown Session
- ClustrixDB permits In-Memory Tables to ROLLBACK.
- When autocommit is enabled, ClustrixDB opens a transaction once the client connects.
Unsupported in Transactions
ClustrixDB does not support:
- the in_transaction system variable
- WITH CONSISTENT SNAPSHOT