1
1
--source include/have_falcon.inc
2
SET @@storage_engine = Falcon;
4
# Bug #22189: Duplicate entry '1' for key 'PRIMARY'
3
# Bug #22189: Duplicate entry '1' for key 'PRIMARY'.
4
# This test was written with SERIALIZABLE isolation
5
# level in mind. As Falcon will not have SERIALIZABLE in
6
# any near future, we rewrote the test to use REPEATABLE-READ.
6
8
--echo *** Bug #22189 ***
10
# ----------------------------------------------------- #
11
# --- Initialisation --- #
12
# ----------------------------------------------------- #
13
let $engine = 'Falcon';
14
eval SET @@storage_engine = $engine;
8
17
DROP DATABASE IF EXISTS db62;
11
20
--echo # Establish connection conn1 (user = root)
12
21
connect (conn1,localhost,root,,);
13
SET @@storage_engine = Falcon;
22
eval SET @@storage_engine = $engine;
15
24
--echo # Switch to connection default
16
25
connection default;
17
26
SET @@autocommit = 0;
18
27
CREATE DATABASE db62;
20
DROP TABLE IF EXISTS x1;
21
CREATE TABLE x1 (x1 int primary key, x2 int);
23
INSERT INTO x1 VALUES (0,0),(1,1);
25
DROP TABLE IF EXISTS x1;
26
CREATE TABLE x1 (x1 int primary key, x2 int);
27
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
30
CREATE TABLE x1 (x1 int primary key, x2 int);
32
# ----------------------------------------------------- #
34
# ----------------------------------------------------- #
35
SET TRANSACTION ISOLATION LEVEL REPEATABLE READ;
30
38
INSERT INTO x1 VALUES (0,0);
34
42
SET @@autocommit = 1;
36
--send INSERT INTO x1 VALUES (1,1)
44
INSERT INTO x1 VALUES (1,1);
38
46
--echo # Switch to connection default
39
47
connection default;
40
49
INSERT INTO x1 VALUES (1,2);
42
51
--echo # Switch to connection conn1
46
55
--echo # Switch to connection default
47
56
connection default;
59
--echo # Switch to connection conn1
49
65
UPDATE x1 SET x1 = 1, x2 = 4;
52
69
--echo # Switch to connection conn1
61
78
--echo # Switch to connection conn1
63
83
INSERT INTO x1 VALUES (0,6);
64
84
--error ER_DUP_ENTRY
65
85
INSERT INTO x1 VALUES (0,6);
87
# ----------------------------------------------------- #
89
# ----------------------------------------------------- #
67
90
--echo # Switch to connection default
68
91
connection default;
95
# ----------------------------------------------------- #
96
# --- Final cleanup --- #
97
# ----------------------------------------------------- #
74
99
DROP DATABASE db62;