~skinny.moey/drizzle/branch-rev

« back to all changes in this revision

Viewing changes to mysql-test/suite/large_tests/t/falcon_bug_22150-big.test

  • Committer: brian
  • Date: 2008-06-25 05:29:13 UTC
  • Revision ID: brian@localhost.localdomain-20080625052913-6upwo0jsrl4lnapl
clean slate

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
--source include/have_falcon.inc
 
2
--source include/big_test.inc
 
3
#
 
4
# Bug #22150: Error "Can't find record"
 
5
#   Slightly modified not to output randon numbers. Run
 
6
#   this test with --big-test option.
 
7
#
 
8
--echo *** Bug #22150 ***
 
9
 
 
10
# ----------------------------------------------------- #
 
11
# --- Initialisation                                --- #
 
12
# ----------------------------------------------------- #
 
13
let $engine = 'Falcon';
 
14
eval SET @@storage_engine = $engine;
 
15
 
 
16
--disable_warnings
 
17
DROP TABLE IF EXISTS t1;
 
18
DROP PROCEDURE IF EXISTS p1;
 
19
--enable_warnings
 
20
 
 
21
--echo # Establish connection conn1 (user = root)
 
22
connect (conn1,localhost,root,,);
 
23
SET @@autocommit = 1;
 
24
 
 
25
--echo # Switch to connection default
 
26
connection default;
 
27
SET @@autocommit = 1;
 
28
CREATE TABLE t1 (a int(11), KEY a (a));
 
29
 
 
30
DELIMITER //;
 
31
CREATE PROCEDURE p1()
 
32
BEGIN
 
33
  DECLARE v1 int default 0;
 
34
  DECLARE v2 int;
 
35
  DECLARE CONTINUE HANDLER FOR 1020 BEGIN END;
 
36
  DECLARE CONTINUE HANDLER FOR 1213 BEGIN END;
 
37
  WHILE v1 < 1000000 DO
 
38
    /* SELECT 'insert', v1; */
 
39
    INSERT INTO t1 VALUES (v1);
 
40
    SET v2 = rand() * 10000;
 
41
    UPDATE t1 SET a = v2 WHERE a = v1;
 
42
    /* SELECT ' update', v1; */
 
43
    SET v1 = v1 + 1;
 
44
    IF v1 MOD 50 = 0 THEN
 
45
      /* SELECT ' delete'; */
 
46
      DELETE FROM t1;
 
47
    END IF;
 
48
  END WHILE;
 
49
END//
 
50
DELIMITER ;//
 
51
 
 
52
# ----------------------------------------------------- #
 
53
# --- Test                                          --- #
 
54
# ----------------------------------------------------- #
 
55
--echo # Sent call p1() to the server but do not pull the results
 
56
--send CALL p1()
 
57
 
 
58
--echo # Switch to connection conn1
 
59
connection conn1;
 
60
--real_sleep 1
 
61
CALL p1();
 
62
 
 
63
--echo # Switch to connection default
 
64
connection default;
 
65
--echo # Pull the results of the preceeding call p1()
 
66
--reap
 
67
--echo # Sent call p1() to the server but do not pull the results
 
68
--real_sleep 1
 
69
--send CALL p1()
 
70
 
 
71
--echo # Switch to connection conn1
 
72
connection conn1;
 
73
--real_sleep 1
 
74
CALL p1();
 
75
 
 
76
--echo # Switch to connection default
 
77
connection default;
 
78
--echo # Pull the results of the preceeding call p1()
 
79
--reap
 
80
 
 
81
# ----------------------------------------------------- #
 
82
# --- Check                                         --- #
 
83
# ----------------------------------------------------- #
 
84
SELECT count(*) FROM t1;
 
85
 
 
86
# ----------------------------------------------------- #
 
87
# --- Final cleanup                                 --- #
 
88
# ----------------------------------------------------- #
 
89
--echo # Disconnect conn1
 
90
disconnect conn1;
 
91
DROP TABLE t1;
 
92
DROP PROCEDURE p1;