mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
Merge 10.5 into 10.6
This commit is contained in:
36
mysql-test/suite/innodb/t/cursor-restore-unique-null.test
Normal file
36
mysql-test/suite/innodb/t/cursor-restore-unique-null.test
Normal file
@@ -0,0 +1,36 @@
|
||||
--source include/have_innodb.inc
|
||||
--source include/have_debug.inc
|
||||
--source include/have_debug_sync.inc
|
||||
--source include/count_sessions.inc
|
||||
|
||||
|
||||
CREATE TABLE t(a INT PRIMARY KEY, b INT, c INT, UNIQUE KEY `b_c` (`b`,`c`))
|
||||
ENGINE=InnoDB, STATS_PERSISTENT=0;
|
||||
INSERT INTO t SET a = 1, c = 2;
|
||||
|
||||
--connect con1,localhost,root
|
||||
BEGIN;
|
||||
INSERT INTO t SET a=2, c=2;
|
||||
|
||||
--connection default
|
||||
BEGIN;
|
||||
SET DEBUG_SYNC="lock_wait_start SIGNAL select_locked";
|
||||
--send SELECT * FROM t FORCE INDEX(b) FOR UPDATE
|
||||
|
||||
--connection con1
|
||||
SET DEBUG_SYNC="now WAIT_FOR select_locked";
|
||||
ROLLBACK;
|
||||
|
||||
--connection default
|
||||
--echo # If the bug is not fixed, and the both unique index key fields are
|
||||
--echo # NULL, there will be two (1, NULL, 2) rows in the result,
|
||||
--echo # because cursor will be restored to (NULL, 2, 1) position for
|
||||
--echo # secondary key instead of "supremum".
|
||||
--reap
|
||||
COMMIT;
|
||||
|
||||
SET DEBUG_SYNC="RESET";
|
||||
|
||||
--disconnect con1
|
||||
DROP TABLE t;
|
||||
--source include/wait_until_count_sessions.inc
|
Reference in New Issue
Block a user