~jlukas79/+junk/mysql-server

« back to all changes in this revision

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

manual merge 6.0-main --> 6.0-bka-review

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
##################### mysql-test\t\delay_key_write_func.test  #################
 
2
#                                                                             #
 
3
# Variable Name: delay_key_write                                              #
 
4
# Scope: GLOBAL                                                               #
 
5
# Access Type: Dynamic                                                        #
 
6
# Data Type: enumeration                                                      #
 
7
# Default Value: ON                                                           #
 
8
# Valid Values: ON, OFF & ALL                                                 #
 
9
#                                                                             #
 
10
#                                                                             #
 
11
# Creation Date: 2008-03-08                                                   #
 
12
# Author:  Rizwan                                                             #
 
13
#                                                                             #
 
14
# Description: Test Cases of Dynamic System Variable delay_key_write          #
 
15
#              that checks the behavior of this variable                      #
 
16
#                                                                             #
 
17
# Reference: http://dev.mysql.com/doc/refman/5.1/en/                          #
 
18
#  server-system-variables.html                                               #
 
19
#                                                                             #
 
20
###############################################################################
 
21
 
 
22
--echo '#--------------------FN_DYNVARS_023_01-------------------------#'
 
23
#######################################################################
 
24
# Check if setting delay_key_write is changed in every new connection # 
 
25
#######################################################################
 
26
 
 
27
 
 
28
SET @@global.delay_key_write = ON;
 
29
SELECT @@global.delay_key_write;
 
30
 
 
31
--echo 'connect (user1,localhost,root,,,,)'
 
32
connect (user1,localhost,root,,,,);
 
33
--echo 'connection user1'
 
34
connection user1;
 
35
SELECT @@global.delay_key_write AS res_is_ON;
 
36
SET @@global.delay_key_write = ALL;
 
37
disconnect user1;
 
38
 
 
39
--echo 'connect (user1,localhost,root,,,,)'
 
40
connect (user1,localhost,root,,,,);
 
41
--echo 'connection user1'
 
42
connection user1;
 
43
SELECT @@global.delay_key_write AS res_is_ALL;
 
44
 
 
45
--echo '#--------------------FN_DYNVARS_023_02-------------------------#'
 
46
######################################################
 
47
# Begin the functionality Testing of delay_key_write #
 
48
######################################################
 
49
 
 
50
# create procedure to add rows
 
51
--disable_query_log
 
52
DELIMITER //;
 
53
CREATE PROCEDURE sp_addRecords (IN var1 INT,IN var2 INT)
 
54
BEGIN 
 
55
 WHILE (var1 < var2) DO 
 
56
  INSERT INTO t1 VALUES(var1,REPEAT('MYSQL',10),100000.0/var1);
 
57
  SET var1=var1+1; 
 
58
 END WHILE;
 
59
END//
 
60
DELIMITER ;//
 
61
--enable_query_log
 
62
 
 
63
#==============================================================================
 
64
--echo '---check when delay_key_write is OFF---'
 
65
#==============================================================================
 
66
 
 
67
 
 
68
SET @@global.delay_key_write = OFF;
 
69
 
 
70
 
 
71
--disable_query_log
 
72
--disable_warnings
 
73
DROP TABLE IF EXISTS t1;
 
74
--enable_warnings
 
75
# create a table with delay_key_write enabled
 
76
CREATE TABLE t1(
 
77
a INT PRIMARY KEY,
 
78
b VARCHAR(512),
 
79
c DOUBLE
 
80
)delay_key_write = 1;
 
81
--enable_query_log
 
82
 
 
83
 
 
84
FLUSH STATUS;
 
85
 
 
86
CALL sp_addRecords(1,10);
 
87
 
 
88
SHOW STATUS LIKE 'Key_reads';
 
89
SHOW STATUS LIKE 'Key_writes';
 
90
SHOW STATUS LIKE 'Key_write_requests';
 
91
select count(*) from t1;
 
92
 
 
93
#==============================================================================
 
94
--echo '----check when delay_key_write is ON---'
 
95
#==============================================================================
 
96
 
 
97
SET @@global.delay_key_write = ON;
 
98
 
 
99
--disable_query_log
 
100
--disable_warnings
 
101
DROP TABLE IF EXISTS t1;
 
102
--enable_warnings
 
103
# create a table with delay_key_write enabled
 
104
CREATE TABLE t1(
 
105
a INT PRIMARY KEY,
 
106
b VARCHAR(512),
 
107
c DOUBLE
 
108
)delay_key_write = 1;
 
109
--enable_query_log
 
110
 
 
111
FLUSH STATUS;
 
112
CALL sp_addRecords(1,10);
 
113
 
 
114
SHOW STATUS LIKE 'Key_reads';
 
115
SHOW STATUS LIKE 'Key_writes';
 
116
SHOW STATUS LIKE 'Key_write_requests';
 
117
select count(*) from t1;
 
118
 
 
119
#==============================================================================
 
120
--echo '----check when delay_key_write is ALL---'
 
121
#==============================================================================
 
122
SET @@global.delay_key_write = ALL;
 
123
 
 
124
--disable_query_log
 
125
--disable_warnings
 
126
DROP TABLE IF EXISTS t1;
 
127
--enable_warnings
 
128
# create a table with delay_key_write disabled
 
129
CREATE TABLE t1(
 
130
a INT PRIMARY KEY,
 
131
b VARCHAR(512),
 
132
c DOUBLE
 
133
)delay_key_write = 0;
 
134
--enable_query_log
 
135
 
 
136
FLUSH STATUS;
 
137
CALL sp_addRecords(1,10);
 
138
 
 
139
SHOW STATUS LIKE 'Key_reads';
 
140
SHOW STATUS LIKE 'Key_writes';
 
141
SHOW STATUS LIKE 'Key_write_requests';
 
142
select count(*) from t1;
 
143
 
 
144
DROP PROCEDURE sp_addRecords;
 
145
DROP TABLE t1;
 
146
 
 
147
####################################################
 
148
# End of functionality testing for delay_key_write #
 
149
####################################################