~drizzle-developers/ubuntu/karmic/drizzle/ppa

« back to all changes in this revision

Viewing changes to tests/suite/execute/t/concurrent.test

  • Committer: Monty Taylor
  • Date: 2010-11-24 18:44:57 UTC
  • mfrom: (1308.1.31 trunk)
  • Revision ID: mordred@inaugust.com-20101124184457-qd6jvoe2wgnvl3yq
Tags: 2010.11.04-0ubuntu1~karmic1
* New upstream release.
* Turn off -Werror for packaging builds. (Closes: #602662)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# we are going to have everything owned by a particular connection
 
2
connect (barrier_owner,localhost,root,,);
 
3
connection barrier_owner;
 
4
set @my_barrier= "barrier";
 
5
SELECT CREATE_BARRIER(@my_barrier);
 
6
 
 
7
connection default;
 
8
set @my_barrier= "barrier";
 
9
SELECT USER_BARRIER_NAME FROM DATA_DICTIONARY.USER_BARRIERS WHERE USER_BARRIER_NAME=@my_barrier;
 
10
SET @execute= "SELECT WAIT('barrier')";
 
11
SELECT SIGNAL(@my_barrier);
 
12
 
 
13
EXECUTE @execute CONCURRENT;
 
14
EXECUTE @execute CONCURRENT;
 
15
EXECUTE @execute CONCURRENT;
 
16
 
 
17
SELECT WAIT_UNTIL(@my_barrier, 3);
 
18
 
 
19
### Now lets see what the processlist shows.
 
20
SELECT USER,INFO FROM DATA_DICTIONARY.PROCESSLIST ORDER BY ID;
 
21
SELECT SIGNAL(@my_barrier);
 
22
 
 
23
## Wait till we know the above is done (this will be replaced with broadcast() in the future)
 
24
#EXECUTE @sleep;
 
25
#
 
26
## Check that a concurrent session cannot create one of itself, but can call
 
27
## execute.
 
28
#SET @var="EXECUTE \"SELECT SLEEP(3)\"";
 
29
#EXECUTE @var CONCURRENT;
 
30
#SELECT USER,INFO FROM DATA_DICTIONARY.PROCESSLIST;
 
31
#
 
32
## Wait till everything closes out
 
33
#EXECUTE @sleep;
 
34
#SET @var="EXECUTE \"SELECT SLEEP(3)\" CONCURRENT";
 
35
#EXECUTE @var CONCURRENT;
 
36
#SELECT USER,INFO FROM DATA_DICTIONARY.PROCESSLIST;
 
37
#
 
38
#
 
39
## Test multiple statements
 
40
#
 
41
#SET @var="CREATE SCHEMA d; CREATE SCHEMA e;";
 
42
#EXECUTE @var CONCURRENT;
 
43
#
 
44
## Wait for a second...
 
45
#EXECUTE @sleep;
 
46
#show schemas LIKE "d";
 
47
#show schemas LIKE "e";
 
48
#DROP SCHEMA d;
 
49
#DROP SCHEMA e;
 
50
#
 
51
#
 
52
## We are now going to make sure that data is actually committed.
 
53
#CREATE TABLE foo (a serial);
 
54
#
 
55
#SET @var="INSERT INTO foo VALUES(); INSERT INTO foo VALUES ()";
 
56
#EXECUTE @var CONCURRENT;
 
57
#EXECUTE @sleep;
 
58
#SELECT * FROM foo;
 
59
#
 
60
#SET @var="SAVEPOINT mine; INSERT INTO foo VALUES(); INSERT INTO foo VALUES ()";
 
61
#EXECUTE @var CONCURRENT;
 
62
#EXECUTE @sleep;
 
63
#SELECT * FROM foo;
 
64
#
 
65
#SET @var="SAVEPOINT mine; INSERT INTO foo VALUES(); INSERT INTO foo VALUES (); RELEASE SAVEPOINT mine";
 
66
#EXECUTE @var CONCURRENT;
 
67
#EXECUTE @sleep;
 
68
#SELECT * FROM foo;
 
69
#
 
70
#SET @var="SAVEPOINT mine; INSERT INTO foo VALUES (); INSERT INTO foo VALUES (); ROLLBACK TO SAVEPOINT mine";
 
71
#EXECUTE @var CONCURRENT;
 
72
#EXECUTE @sleep;
 
73
#SELECT * FROM foo;
 
74
#
 
75
#DROP TABLE foo;
 
76
#