Commit ba0d8aef authored by Sergei Petrunia's avatar Sergei Petrunia

Fix rocksdb.unique_check: do not have two threads waiting on the same name

parent d6444022
...@@ -66,12 +66,12 @@ id id2 value ...@@ -66,12 +66,12 @@ id id2 value
2 1 2 2 1 2
truncate table t2; truncate table t2;
connection con1; connection con1;
set debug_sync='rocksdb.update_write_row_after_unique_check SIGNAL parked1 WAIT_FOR go'; set debug_sync='rocksdb.update_write_row_after_unique_check SIGNAL parked1 WAIT_FOR go1';
insert into t1 values (1,1); insert into t1 values (1,1);
connection default; connection default;
set debug_sync='now WAIT_FOR parked1'; set debug_sync='now WAIT_FOR parked1';
connection con2; connection con2;
set debug_sync='rocksdb.update_write_row_after_unique_check SIGNAL parked2 WAIT_FOR go'; set debug_sync='rocksdb.update_write_row_after_unique_check SIGNAL parked2 WAIT_FOR go2';
insert into t2 values (1,1,1); insert into t2 values (1,1,1);
connection default; connection default;
set debug_sync='now WAIT_FOR parked2'; set debug_sync='now WAIT_FOR parked2';
...@@ -82,7 +82,8 @@ ERROR HY000: Lock wait timeout exceeded; try restarting transaction ...@@ -82,7 +82,8 @@ ERROR HY000: Lock wait timeout exceeded; try restarting transaction
insert into t2 values (2,1,2); insert into t2 values (2,1,2);
ERROR HY000: Lock wait timeout exceeded; try restarting transaction ERROR HY000: Lock wait timeout exceeded; try restarting transaction
connection default; connection default;
set debug_sync='now SIGNAL go'; set debug_sync='now SIGNAL go1';
set debug_sync='now SIGNAL go2';
connection con1; connection con1;
connection con2; connection con2;
connection default; connection default;
......
...@@ -102,14 +102,14 @@ truncate table t2; ...@@ -102,14 +102,14 @@ truncate table t2;
# 4) simulating T1 GetForUpdate() -> T2 GetForUpdate(). T2 should fail with lock wait timeout. # 4) simulating T1 GetForUpdate() -> T2 GetForUpdate(). T2 should fail with lock wait timeout.
connection con1; connection con1;
set debug_sync='rocksdb.update_write_row_after_unique_check SIGNAL parked1 WAIT_FOR go'; set debug_sync='rocksdb.update_write_row_after_unique_check SIGNAL parked1 WAIT_FOR go1';
send insert into t1 values (1,1); send insert into t1 values (1,1);
connection default; connection default;
set debug_sync='now WAIT_FOR parked1'; set debug_sync='now WAIT_FOR parked1';
connection con2; connection con2;
set debug_sync='rocksdb.update_write_row_after_unique_check SIGNAL parked2 WAIT_FOR go'; set debug_sync='rocksdb.update_write_row_after_unique_check SIGNAL parked2 WAIT_FOR go2';
send insert into t2 values (1,1,1); send insert into t2 values (1,1,1);
connection default; connection default;
...@@ -123,7 +123,8 @@ insert into t1 values (1,2); ...@@ -123,7 +123,8 @@ insert into t1 values (1,2);
insert into t2 values (2,1,2); insert into t2 values (2,1,2);
connection default; connection default;
set debug_sync='now SIGNAL go'; set debug_sync='now SIGNAL go1';
set debug_sync='now SIGNAL go2';
connection con1; connection con1;
reap; reap;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment