~stewart/drizzle/embedded-innodb-create-select-transaction-arrgh

« back to all changes in this revision

Viewing changes to mysql-test/r/federated_server.result

  • 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
stop slave;
 
2
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
 
3
reset master;
 
4
reset slave;
 
5
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
 
6
start slave;
 
7
stop slave;
 
8
DROP DATABASE IF EXISTS federated;
 
9
CREATE DATABASE federated;
 
10
DROP DATABASE IF EXISTS federated;
 
11
CREATE DATABASE federated;
 
12
create database first_db;
 
13
create database second_db;
 
14
use first_db;
 
15
DROP TABLE IF EXISTS first_db.t1;
 
16
Warnings:
 
17
Note    1051    Unknown table 't1'
 
18
CREATE TABLE first_db.t1 (
 
19
`id` int(20) NOT NULL,
 
20
`name` varchar(64) NOT NULL default ''
 
21
    )
 
22
DEFAULT CHARSET=latin1;
 
23
DROP TABLE IF EXISTS first_db.t2;
 
24
Warnings:
 
25
Note    1051    Unknown table 't2'
 
26
CREATE TABLE first_db.t2 (
 
27
`id` int(20) NOT NULL,
 
28
`name` varchar(64) NOT NULL default ''
 
29
    )
 
30
DEFAULT CHARSET=latin1;
 
31
use second_db;
 
32
DROP TABLE IF EXISTS second_db.t1;
 
33
Warnings:
 
34
Note    1051    Unknown table 't1'
 
35
CREATE TABLE second_db.t1 (
 
36
`id` int(20) NOT NULL,
 
37
`name` varchar(64) NOT NULL default ''
 
38
    )
 
39
DEFAULT CHARSET=latin1;
 
40
DROP TABLE IF EXISTS second_db.t2;
 
41
Warnings:
 
42
Note    1051    Unknown table 't2'
 
43
CREATE TABLE second_db.t2 (
 
44
`id` int(20) NOT NULL,
 
45
`name` varchar(64) NOT NULL default ''
 
46
    )
 
47
DEFAULT CHARSET=latin1;
 
48
drop server if exists 'server_one';
 
49
create server 'server_one' foreign data wrapper 'mysql' options
 
50
(HOST '127.0.0.1',
 
51
DATABASE 'first_db',
 
52
USER 'root',
 
53
PASSWORD '',
 
54
PORT SLAVE_PORT,
 
55
SOCKET '',
 
56
OWNER 'root');
 
57
drop server if exists 'server_two';
 
58
create server 'server_two' foreign data wrapper 'mysql' options
 
59
(HOST '127.0.0.1',
 
60
DATABASE 'second_db',
 
61
USER 'root',
 
62
PASSWORD '',
 
63
PORT SLAVE_PORT,
 
64
SOCKET '',
 
65
OWNER 'root');
 
66
select * from mysql.servers;
 
67
Server_name     Host    Db      Username        Password        Port    Socket  Wrapper Owner
 
68
server_one      127.0.0.1       first_db        root            SLAVE_PORT              mysql   root
 
69
server_two      127.0.0.1       second_db       root            SLAVE_PORT              mysql   root
 
70
DROP TABLE IF EXISTS federated.old;
 
71
Warnings:
 
72
Note    1051    Unknown table 'old'
 
73
CREATE TABLE federated.old (
 
74
`id` int(20) NOT NULL,
 
75
`name` varchar(64) NOT NULL default ''
 
76
    )
 
77
ENGINE="FEDERATED" DEFAULT CHARSET=latin1
 
78
CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/first_db/t1';
 
79
INSERT INTO federated.old (id, name) values (1, 'federated.old-> first_db.t1, url format');
 
80
SELECT * FROM federated.old;
 
81
id      name
 
82
1       federated.old-> first_db.t1, url format
 
83
DROP TABLE IF EXISTS federated.old2;
 
84
Warnings:
 
85
Note    1051    Unknown table 'old2'
 
86
CREATE TABLE federated.old2 (
 
87
`id` int(20) NOT NULL,
 
88
`name` varchar(64) NOT NULL default ''
 
89
    )
 
90
ENGINE="FEDERATED" DEFAULT CHARSET=latin1
 
91
CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/first_db/t2';
 
92
INSERT INTO federated.old2 (id, name) values (1, 'federated.old2-> first_db.t2, url format');
 
93
SELECT * FROM federated.old2;
 
94
id      name
 
95
1       federated.old2-> first_db.t2, url format
 
96
DROP TABLE IF EXISTS federated.urldb2t1;
 
97
Warnings:
 
98
Note    1051    Unknown table 'urldb2t1'
 
99
CREATE TABLE federated.urldb2t1 (
 
100
`id` int(20) NOT NULL,
 
101
`name` varchar(64) NOT NULL default ''
 
102
    )
 
103
ENGINE="FEDERATED" DEFAULT CHARSET=latin1
 
104
CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/second_db/t1';
 
105
INSERT INTO federated.urldb2t1 (id, name) values (1, 'federated.urldb2t1 -> second_db.t1, url format');
 
106
SELECT * FROM federated.urldb2t1;
 
107
id      name
 
108
1       federated.urldb2t1 -> second_db.t1, url format
 
109
DROP TABLE IF EXISTS federated.urldb2t2;
 
110
Warnings:
 
111
Note    1051    Unknown table 'urldb2t2'
 
112
CREATE TABLE federated.urldb2t2 (
 
113
`id` int(20) NOT NULL,
 
114
`name` varchar(64) NOT NULL default ''
 
115
    )
 
116
ENGINE="FEDERATED" DEFAULT CHARSET=latin1
 
117
CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/second_db/t2';
 
118
INSERT INTO federated.urldb2t2 (id, name) values (1, 'federated.urldb2t2 -> second_db.t2, url format');
 
119
SELECT * FROM federated.urldb2t2;
 
120
id      name
 
121
1       federated.urldb2t2 -> second_db.t2, url format
 
122
DROP TABLE IF EXISTS federated.t1;
 
123
Warnings:
 
124
Note    1051    Unknown table 't1'
 
125
CREATE TABLE federated.t1 (
 
126
`id` int(20) NOT NULL,
 
127
`name` varchar(64) NOT NULL default ''
 
128
    )
 
129
ENGINE="FEDERATED" DEFAULT CHARSET=latin1
 
130
CONNECTION='server_one';
 
131
INSERT INTO federated.t1 (id, name) values (1, 'server_one, new scheme, first_db.t1');
 
132
SELECT * FROM federated.t1;
 
133
id      name
 
134
1       federated.old-> first_db.t1, url format
 
135
1       server_one, new scheme, first_db.t1
 
136
DROP TABLE IF EXISTS federated.whatever;
 
137
Warnings:
 
138
Note    1051    Unknown table 'whatever'
 
139
CREATE TABLE federated.whatever (
 
140
`id` int(20) NOT NULL,
 
141
`name` varchar(64) NOT NULL default ''
 
142
    )
 
143
ENGINE="FEDERATED" DEFAULT CHARSET=latin1
 
144
CONNECTION='server_one/t1';
 
145
INSERT INTO federated.whatever (id, name) values (1, 'server_one, new scheme, whatever, first_db.t1');
 
146
SELECT * FROM federated.whatever;
 
147
id      name
 
148
1       federated.old-> first_db.t1, url format
 
149
1       server_one, new scheme, first_db.t1
 
150
1       server_one, new scheme, whatever, first_db.t1
 
151
ALTER SERVER 'server_one' options(DATABASE 'second_db');
 
152
INSERT INTO federated.t1 (id, name) values (1, 'server_two, new scheme, second_db.t1');
 
153
SELECT * FROM federated.t1;
 
154
id      name
 
155
1       federated.urldb2t1 -> second_db.t1, url format
 
156
1       server_two, new scheme, second_db.t1
 
157
INSERT INTO federated.whatever (id, name) values (1, 'server_two, new scheme, whatever, second_db.t1');
 
158
SELECT * FROM federated.whatever;
 
159
id      name
 
160
1       federated.urldb2t1 -> second_db.t1, url format
 
161
1       server_two, new scheme, second_db.t1
 
162
1       server_two, new scheme, whatever, second_db.t1
 
163
drop table federated.t1;
 
164
drop server 'server_one';
 
165
drop server 'server_two';
 
166
select * from mysql.servers;
 
167
Server_name     Host    Db      Username        Password        Port    Socket  Wrapper Owner
 
168
drop table first_db.t1;
 
169
drop table second_db.t1;
 
170
drop database first_db;
 
171
drop database second_db;
 
172
create database db_legitimate;
 
173
create database db_bogus;
 
174
use db_legitimate;
 
175
CREATE TABLE db_legitimate.t1 (
 
176
`id` int(20) NOT NULL,
 
177
`name` varchar(64) NOT NULL default ''
 
178
    );
 
179
INSERT INTO db_legitimate.t1 VALUES ('1','this is legitimate');
 
180
use db_bogus;
 
181
CREATE TABLE db_bogus.t1 (
 
182
`id` int(20) NOT NULL,
 
183
`name` varchar(64) NOT NULL default ''
 
184
    )
 
185
;
 
186
INSERT INTO db_bogus.t1 VALUES ('2','this is bogus');
 
187
create server 's1' foreign data wrapper 'mysql' options
 
188
(HOST '127.0.0.1',
 
189
DATABASE 'db_legitimate',
 
190
USER 'root',
 
191
PASSWORD '',
 
192
PORT SLAVE_PORT,
 
193
SOCKET '',
 
194
OWNER 'root');
 
195
create user guest_select@localhost;
 
196
grant select on federated.* to guest_select@localhost;
 
197
create user guest_super@localhost;
 
198
grant select,SUPER,RELOAD on *.* to guest_super@localhost;
 
199
create user guest_usage@localhost;
 
200
grant usage on *.* to guest_usage@localhost;
 
201
CREATE TABLE federated.t1 (
 
202
`id` int(20) NOT NULL,
 
203
`name` varchar(64) NOT NULL default ''
 
204
    ) ENGINE = FEDERATED CONNECTION = 's1';
 
205
select * from federated.t1;
 
206
id      name
 
207
1       this is legitimate
 
208
alter server s1 options (database 'db_bogus');
 
209
ERROR 42000: Access denied; you need the SUPER privilege for this operation
 
210
flush tables;
 
211
select * from federated.t1;
 
212
id      name
 
213
1       this is legitimate
 
214
alter server s1 options (database 'db_bogus');
 
215
ERROR 42000: Access denied; you need the SUPER privilege for this operation
 
216
flush tables;
 
217
select * from federated.t1;
 
218
id      name
 
219
1       this is legitimate
 
220
alter server s1 options (database 'db_bogus');
 
221
flush tables;
 
222
select * from federated.t1;
 
223
id      name
 
224
2       this is bogus
 
225
drop server if exists 's1';
 
226
ERROR 42000: Access denied; you need the SUPER privilege for this operation
 
227
create server 's1' foreign data wrapper 'mysql' options
 
228
(HOST '127.0.0.1',
 
229
DATABASE 'db_legitimate',
 
230
USER 'root',
 
231
PASSWORD '',
 
232
PORT SLAVE_PORT,
 
233
SOCKET '',
 
234
OWNER 'root');
 
235
ERROR 42000: Access denied; you need the SUPER privilege for this operation
 
236
drop server 's1';
 
237
create server 's1' foreign data wrapper 'mysql' options
 
238
(HOST '127.0.0.1',
 
239
DATABASE 'db_legitimate',
 
240
USER 'root',
 
241
PASSWORD '',
 
242
PORT SLAVE_PORT,
 
243
SOCKET '',
 
244
OWNER 'root');
 
245
flush tables;
 
246
select * from federated.t1;
 
247
id      name
 
248
1       this is legitimate
 
249
drop database db_legitimate;
 
250
drop database db_bogus;
 
251
drop user guest_super@localhost;
 
252
drop user guest_usage@localhost;
 
253
drop user guest_select@localhost;
 
254
drop table federated.t1;
 
255
drop server 's1';
 
256
create server 's1' foreign data wrapper 'mysql' options (port 3306);
 
257
alter server 's1' options
 
258
(host 'localhost', database '', user '',
 
259
password '', socket '', owner '', port 3306);
 
260
alter server 's1' options
 
261
(host 'localhost', database 'database1', user '',
 
262
password '', socket '', owner '', port 3306);
 
263
drop server 's1';
 
264
# End of 5.1 tests
 
265
use test;
 
266
create procedure p1 ()
 
267
begin
 
268
DECLARE v INT DEFAULT 0;
 
269
DECLARE e INT DEFAULT 0;
 
270
DECLARE i INT;
 
271
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET e = e + 1;
 
272
SET i = sleep(5);
 
273
WHILE v < 10000 do
 
274
CREATE SERVER s
 
275
FOREIGN DATA WRAPPER mysql
 
276
OPTIONS (USER 'Remote', HOST '192.168.1.106', DATABASE 'test');
 
277
ALTER SERVER s OPTIONS (USER 'Remote');
 
278
DROP SERVER s;
 
279
SET v = v + 1;
 
280
END WHILE;
 
281
SELECT e > 0;
 
282
END//
 
283
use test;
 
284
call p1();
 
285
call p1();
 
286
e > 0
 
287
1
 
288
e > 0
 
289
1
 
290
drop procedure p1;
 
291
drop server if exists s;
 
292
DROP TABLE IF EXISTS federated.t1;
 
293
DROP DATABASE IF EXISTS federated;
 
294
DROP TABLE IF EXISTS federated.t1;
 
295
DROP DATABASE IF EXISTS federated;