~ubuntu-branches/ubuntu/precise/mysql-5.1/precise

« back to all changes in this revision

Viewing changes to mysql-test/t/partition_innodb_plugin.test

  • Committer: Bazaar Package Importer
  • Author(s): Norbert Tretkowski
  • Date: 2010-03-17 14:56:02 UTC
  • Revision ID: james.westby@ubuntu.com-20100317145602-x7e30l1b2sb5s6w6
Tags: upstream-5.1.45
ImportĀ upstreamĀ versionĀ 5.1.45

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
--source include/have_partition.inc
 
2
--source include/have_innodb.inc
 
3
--source suite/innodb/include/have_innodb_plugin.inc
 
4
 
 
5
#
 
6
# Bug#32430 - show engine innodb status causes errors
 
7
#
 
8
SET NAMES utf8;
 
9
CREATE TABLE `t``\""e` (a INT, PRIMARY KEY (a))
 
10
ENGINE=InnoDB
 
11
PARTITION BY RANGE (a)
 
12
SUBPARTITION BY HASH (a)
 
13
(PARTITION `p0``\""e` VALUES LESS THAN (100)
 
14
 (SUBPARTITION `sp0``\""e`,
 
15
  SUBPARTITION `sp1``\""e`),
 
16
 PARTITION `p1``\""e` VALUES LESS THAN (MAXVALUE)
 
17
 (SUBPARTITION `sp2``\""e`,
 
18
  SUBPARTITION `sp3``\""e`));
 
19
INSERT INTO `t``\""e` VALUES (0), (2), (6), (10), (14), (18), (22);
 
20
START TRANSACTION;
 
21
--echo # con1
 
22
connect(con1,localhost,root,,);
 
23
SET NAMES utf8;
 
24
START TRANSACTION;
 
25
--echo # default connection
 
26
connection default;
 
27
UPDATE `t``\""e` SET a = 16 WHERE a = 0;
 
28
--echo # con1
 
29
connection con1;
 
30
UPDATE `t``\""e` SET a = 8 WHERE a = 22;
 
31
let $id_1= `SELECT CONNECTION_ID()`;
 
32
SEND;
 
33
UPDATE `t``\""e` SET a = 12 WHERE a = 0;
 
34
--echo # default connection
 
35
connection default;
 
36
let $wait_timeout= 2;
 
37
let $wait_condition= SELECT 1 FROM INFORMATION_SCHEMA.PROCESSLIST
 
38
WHERE ID = $id_1 AND STATE = 'Searching rows for update';
 
39
--source include/wait_condition.inc
 
40
#--echo # tested wait condition $wait_condition_reps times
 
41
# INNODB_LOCKS only exists in innodb_plugin
 
42
--sorted_result
 
43
SELECT lock_table, COUNT(*) FROM INFORMATION_SCHEMA.INNODB_LOCKS
 
44
GROUP BY lock_table;
 
45
set @old_sql_mode = @@sql_mode;
 
46
set sql_mode = 'ANSI_QUOTES';
 
47
--sorted_result
 
48
SELECT lock_table, COUNT(*) FROM INFORMATION_SCHEMA.INNODB_LOCKS
 
49
GROUP BY lock_table;
 
50
set @@sql_mode = @old_sql_mode;
 
51
--error ER_LOCK_DEADLOCK
 
52
UPDATE `t``\""e` SET a = 4 WHERE a = 22;
 
53
--echo # First table reported in 'SHOW ENGINE InnoDB STATUS'
 
54
# RECORD LOCKS space id 0 page no 50 n bits 80 index `PRIMARY` in \
 
55
# Database `test`, Table `t1`, Partition `p0`, Subpartition `sp0` \
 
56
# trx id 0 775
 
57
# NOTE: replace_regex is very slow on match copy/past '(.*)' regex's
 
58
# on big texts, removing a lot of text before + after makes it much faster.
 
59
#/.*in (.*) trx.*/\1/
 
60
--replace_regex /.*RECORD LOCKS space id [0-9]* page no [0-9]* n bits [0-9]* // / trx id .*// /.*index .* in //
 
61
SHOW ENGINE InnoDB STATUS;
 
62
set @old_sql_mode = @@sql_mode;
 
63
set sql_mode = 'ANSI_QUOTES';
 
64
--replace_regex /.*RECORD LOCKS space id [0-9]* page no [0-9]* n bits [0-9]* // / trx id .*// /.*index .* in //
 
65
SHOW ENGINE InnoDB STATUS;
 
66
set @@sql_mode = @old_sql_mode;
 
67
--echo # con1
 
68
connection con1;
 
69
REAP;
 
70
ROLLBACK;
 
71
disconnect con1;
 
72
--echo # default connection
 
73
connection default;
 
74
DROP TABLE `t``\""e`;
 
75
SET NAMES DEFAULT;