mirror of
https://github.com/MariaDB/server.git
synced 2025-08-27 13:04:36 +03:00
Let us use innodb_lock_wait_timeout=0 for an immediate timeout. Also, do not override the timeout in the default connection, so that further tests will use the default setting.
58 lines
1.7 KiB
Plaintext
58 lines
1.7 KiB
Plaintext
CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=InnoDB;
|
|
CREATE TABLE t2 (a INT PRIMARY KEY) ENGINE=InnoDB;
|
|
INSERT INTO t1 VALUES(0);
|
|
BEGIN;
|
|
DELETE FROM t1;
|
|
INSERT INTO t2 VALUES(1),(1);
|
|
ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
|
|
BEGIN;
|
|
SELECT * FROM t2 LOCK IN SHARE MODE;
|
|
a
|
|
connect con1,localhost,root,,;
|
|
SET innodb_lock_wait_timeout=0;
|
|
INSERT INTO t2 VALUES(2);
|
|
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
|
|
connection default;
|
|
ROLLBACK;
|
|
connection con1;
|
|
INSERT INTO t2 VALUES(3);
|
|
COMMIT;
|
|
disconnect con1;
|
|
connection default;
|
|
SELECT * FROM t1;
|
|
a
|
|
SELECT * FROM t2;
|
|
a
|
|
3
|
|
DROP TABLE t1, t2;
|
|
#
|
|
# MDEV-24700 Assertion "lock not found"==0 in lock_table_x_unlock()
|
|
#
|
|
SET FOREIGN_KEY_CHECKS=OFF;
|
|
CREATE TABLE t1 (id INT PRIMARY KEY, f INT REFERENCES nonexistent(x))
|
|
ENGINE=InnoDB;
|
|
SET FOREIGN_KEY_CHECKS=ON;
|
|
BEGIN;
|
|
INSERT IGNORE INTO t1 VALUES (1,11);
|
|
Warnings:
|
|
Warning 1452 Cannot add or update a child row: a foreign key constraint fails (`test`.`t1`, CONSTRAINT `t1_ibfk_1` FOREIGN KEY (`f`) REFERENCES `nonexistent` (`x`))
|
|
REPLACE INTO t1 VALUES (1,12);
|
|
ERROR 23000: Cannot add or update a child row: a foreign key constraint fails (`test`.`t1`, CONSTRAINT `t1_ibfk_1` FOREIGN KEY (`f`) REFERENCES `nonexistent` (`x`))
|
|
COMMIT;
|
|
DROP TABLE t1;
|
|
#
|
|
# MDEV-25942 Assertion failed in trx_t::drop_table()
|
|
#
|
|
CREATE TABLE t1 (k INT PRIMARY KEY) ENGINE=InnoDB;
|
|
INSERT INTO t1 SET k=1;
|
|
START TRANSACTION;
|
|
INSERT INTO t1 SET k=2;
|
|
connect con1,localhost,root,,test;
|
|
SET innodb_lock_wait_timeout=0;
|
|
CREATE TABLE t2 (pk INT AUTO_INCREMENT PRIMARY KEY) ENGINE=InnoDB
|
|
AS SELECT k FROM t1;
|
|
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
|
|
disconnect con1;
|
|
connection default;
|
|
DROP TABLE t1;
|