1# verify that information_schema.tokudb_locks gets populated with locks for 2 clients
2
3source include/have_tokudb.inc;
4set default_storage_engine='tokudb';
5set tokudb_prelock_empty=false;
6disable_warnings;
7drop table if exists t;
8enable_warnings;
9
10create table t (id int primary key);
11set autocommit=0;
12let $default_id=`select connection_id()`;
13
14# should be empty
15select locks_dname,locks_key_left,locks_key_right,locks_table_schema,locks_table_name,locks_table_dictionary_name from information_schema.tokudb_locks where locks_table_schema='test' and locks_table_name='t' and locks_table_dictionary_name='main' order by locks_key_left, locks_key_right;
16
17insert into t values (1);
18insert into t values (3);
19insert into t values (5);
20
21connect (conn_a,localhost,root,,);
22set autocommit=0;
23let $a_id=`select connection_id()`;
24
25insert into t values (2);
26insert into t values (4);
27insert into t values (6);
28
29# should find 3 locks for 2 transactions
30connection default;
31eval select locks_dname,locks_key_left,locks_key_right,locks_table_schema,locks_table_name,locks_table_dictionary_name from information_schema.tokudb_locks where locks_table_schema='test' and locks_table_name='t' and locks_table_dictionary_name='main' order by locks_key_left, locks_key_right;
32
33connection conn_a;
34commit;
35connection default;
36commit;
37
38# should be empty
39select locks_dname,locks_key_left,locks_key_right,locks_table_schema,locks_table_name,locks_table_dictionary_name from information_schema.tokudb_locks where locks_table_schema='test' and locks_table_name='t' and locks_table_dictionary_name='main' order by locks_key_left, locks_key_right;
40commit;
41
42disconnect conn_a;
43
44drop table t;
45