1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-24 14:48:09 +03:00
Files
mariadb/storage/tokudb/mysql-test/tokudb_mariadb/r/autoinc.result
Sergei Golubchik 6b720ae4cb MDEV-6605 Multiple Clients Inserting Causing Error: Failed to read auto-increment value from storage engine
* handler::get_auto_increment() was not expecting any errors from the storage engine.
  That was wrong, errors could happen.
* ha_partition::get_auto_increment() was doing index lookups in partition under a mutex.
  This was redundant (engine transaction isolation was covering that anyway)
  and harmful (causing deadlocks).
2014-09-08 18:38:13 +02:00

37 lines
791 B
Plaintext

create table t1 (a int auto_increment, b bigint(20), primary key (b,a)) engine=tokudb;
start transaction;
insert t1 (b) values (1);
set tokudb_lock_timeout=1;
insert t1 (b) values (1);
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
set tokudb_lock_timeout=default;
insert t1 (b) values (1);
insert t1 (b) values (1);
commit;
commit;
select * from t1;
a b
1 1
2 1
3 1
alter table t1 partition by range (b) (partition p0 values less than (9));
start transaction;
insert t1 (b) values (2);
set tokudb_lock_timeout=1;
insert t1 (b) values (2);
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
set tokudb_lock_timeout=default;
insert t1 (b) values (2);
insert t1 (b) values (2);
commit;
commit;
select * from t1;
a b
1 1
2 1
3 1
1 2
2 2
3 2
drop table t1;