By default, Xpand 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
- Xpand does not issue an implicit COMMIT for:
- ALTER TABLE
- ANALYZE TABLE
- FLUSH PRIVILEGES
- FLUSH TABLES
- REPAIR TABLE
- UNLOCK TABLES
- Xpand will drop temporary tables upon transaction ROLLBACK.
- Xpand will issue an implicit COMMIT when the database is restarted using dbrestart.
- Xpand will always COMMIT any command to SET a global or session variable.
- Xpand does not automatically commit data imported using SOURCE.
- Xpand will issue a COMMIT if it encounters errors for:
- Unrecognized type name: Unknown type
- Unknown Session
- Xpand permits In-Memory Tables to ROLLBACK.
- When autocommit is enabled, Xpand opens a transaction once the client connects.
Unsupported in Transactions
Xpand does not support:
- the in_transaction system variable
- WITH CONSISTENT SNAPSHOT