mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-35124 Set innodb_snapshot_isolation=ON by default
From the very beginning, the default InnoDB transaction isolation level
REPEATABLE READ does not correspond to any well formed definition.
The main issue is the lack of write/write conflict detection.
To fix that and to make REPEATABLE READ correspond to Snapshot Isolation,
b8a6719889
introduced the Boolean
session variable innodb_snapshot_isolation. It was disabled by default
in order not to break any user applications.
In a new major version of MariaDB Server, we had better enable this
parameter by default.
This commit is contained in:
@ -1,5 +1,7 @@
|
||||
SET @save_timeout = @@GLOBAL.innodb_lock_wait_timeout;
|
||||
SET GLOBAL innodb_lock_wait_timeout = 1;
|
||||
SET @save_snapshot_isolation = @@GLOBAL.innodb_snapshot_isolation;
|
||||
SET GLOBAL innodb_snapshot_isolation = OFF;
|
||||
SET @save_isolation = @@GLOBAL.transaction_isolation;
|
||||
SET GLOBAL TRANSACTION ISOLATION LEVEL READ COMMITTED;
|
||||
connection default;
|
||||
@ -792,3 +794,4 @@ drop user mysqltest@localhost;
|
||||
SET SQL_MODE=default;
|
||||
SET GLOBAL innodb_lock_wait_timeout = @save_timeout;
|
||||
SET GLOBAL transaction_isolation = @save_isolation;
|
||||
SET GLOBAL innodb_snapshot_isolation = @save_snapshot_isolation;
|
||||
|
Reference in New Issue
Block a user