Chromium Code Reviews

Side by Side Diff: third_party/sqlite/sqlite-src-3080704/mptest/multiwrite01.test

Issue 949043002: Add //third_party/sqlite to dirs_to_snapshot, remove net_sql.patch (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff |
OLDNEW
(Empty)
1 /*
2 ** This script sets up five different tasks all writing and updating
3 ** the database at the same time, but each in its own table.
4 */
5 --task 1 build-t1
6 DROP TABLE IF EXISTS t1;
7 CREATE TABLE t1(a INTEGER PRIMARY KEY, b);
8 --sleep 1
9 INSERT INTO t1 VALUES(1, randomblob(2000));
10 INSERT INTO t1 VALUES(2, randomblob(1000));
11 --sleep 1
12 INSERT INTO t1 SELECT a+2, randomblob(1500) FROM t1;
13 INSERT INTO t1 SELECT a+4, randomblob(1500) FROM t1;
14 INSERT INTO t1 SELECT a+8, randomblob(1500) FROM t1;
15 --sleep 1
16 INSERT INTO t1 SELECT a+16, randomblob(1500) FROM t1;
17 --sleep 1
18 INSERT INTO t1 SELECT a+32, randomblob(1500) FROM t1;
19 SELECT count(*) FROM t1;
20 --match 64
21 SELECT avg(length(b)) FROM t1;
22 --match 1500.0
23 --sleep 2
24 UPDATE t1 SET b='x'||a||'y';
25 SELECT sum(length(b)) FROM t1;
26 --match 247
27 SELECT a FROM t1 WHERE b='x17y';
28 --match 17
29 CREATE INDEX t1b ON t1(b);
30 SELECT a FROM t1 WHERE b='x17y';
31 --match 17
32 SELECT a FROM t1 WHERE b GLOB 'x2?y' ORDER BY b DESC LIMIT 5;
33 --match 29 28 27 26 25
34 --end
35
36
37 --task 2 build-t2
38 DROP TABLE IF EXISTS t2;
39 CREATE TABLE t2(a INTEGER PRIMARY KEY, b);
40 --sleep 1
41 INSERT INTO t2 VALUES(1, randomblob(2000));
42 INSERT INTO t2 VALUES(2, randomblob(1000));
43 --sleep 1
44 INSERT INTO t2 SELECT a+2, randomblob(1500) FROM t2;
45 INSERT INTO t2 SELECT a+4, randomblob(1500) FROM t2;
46 INSERT INTO t2 SELECT a+8, randomblob(1500) FROM t2;
47 --sleep 1
48 INSERT INTO t2 SELECT a+16, randomblob(1500) FROM t2;
49 --sleep 1
50 INSERT INTO t2 SELECT a+32, randomblob(1500) FROM t2;
51 SELECT count(*) FROM t2;
52 --match 64
53 SELECT avg(length(b)) FROM t2;
54 --match 1500.0
55 --sleep 2
56 UPDATE t2 SET b='x'||a||'y';
57 SELECT sum(length(b)) FROM t2;
58 --match 247
59 SELECT a FROM t2 WHERE b='x17y';
60 --match 17
61 CREATE INDEX t2b ON t2(b);
62 SELECT a FROM t2 WHERE b='x17y';
63 --match 17
64 SELECT a FROM t2 WHERE b GLOB 'x2?y' ORDER BY b DESC LIMIT 5;
65 --match 29 28 27 26 25
66 --end
67
68 --task 3 build-t3
69 DROP TABLE IF EXISTS t3;
70 CREATE TABLE t3(a INTEGER PRIMARY KEY, b);
71 --sleep 1
72 INSERT INTO t3 VALUES(1, randomblob(2000));
73 INSERT INTO t3 VALUES(2, randomblob(1000));
74 --sleep 1
75 INSERT INTO t3 SELECT a+2, randomblob(1500) FROM t3;
76 INSERT INTO t3 SELECT a+4, randomblob(1500) FROM t3;
77 INSERT INTO t3 SELECT a+8, randomblob(1500) FROM t3;
78 --sleep 1
79 INSERT INTO t3 SELECT a+16, randomblob(1500) FROM t3;
80 --sleep 1
81 INSERT INTO t3 SELECT a+32, randomblob(1500) FROM t3;
82 SELECT count(*) FROM t3;
83 --match 64
84 SELECT avg(length(b)) FROM t3;
85 --match 1500.0
86 --sleep 2
87 UPDATE t3 SET b='x'||a||'y';
88 SELECT sum(length(b)) FROM t3;
89 --match 247
90 SELECT a FROM t3 WHERE b='x17y';
91 --match 17
92 CREATE INDEX t3b ON t3(b);
93 SELECT a FROM t3 WHERE b='x17y';
94 --match 17
95 SELECT a FROM t3 WHERE b GLOB 'x2?y' ORDER BY b DESC LIMIT 5;
96 --match 29 28 27 26 25
97 --end
98
99 --task 4 build-t4
100 DROP TABLE IF EXISTS t4;
101 CREATE TABLE t4(a INTEGER PRIMARY KEY, b);
102 --sleep 1
103 INSERT INTO t4 VALUES(1, randomblob(2000));
104 INSERT INTO t4 VALUES(2, randomblob(1000));
105 --sleep 1
106 INSERT INTO t4 SELECT a+2, randomblob(1500) FROM t4;
107 INSERT INTO t4 SELECT a+4, randomblob(1500) FROM t4;
108 INSERT INTO t4 SELECT a+8, randomblob(1500) FROM t4;
109 --sleep 1
110 INSERT INTO t4 SELECT a+16, randomblob(1500) FROM t4;
111 --sleep 1
112 INSERT INTO t4 SELECT a+32, randomblob(1500) FROM t4;
113 SELECT count(*) FROM t4;
114 --match 64
115 SELECT avg(length(b)) FROM t4;
116 --match 1500.0
117 --sleep 2
118 UPDATE t4 SET b='x'||a||'y';
119 SELECT sum(length(b)) FROM t4;
120 --match 247
121 SELECT a FROM t4 WHERE b='x17y';
122 --match 17
123 CREATE INDEX t4b ON t4(b);
124 SELECT a FROM t4 WHERE b='x17y';
125 --match 17
126 SELECT a FROM t4 WHERE b GLOB 'x2?y' ORDER BY b DESC LIMIT 5;
127 --match 29 28 27 26 25
128 --end
129
130 --task 5 build-t5
131 DROP TABLE IF EXISTS t5;
132 CREATE TABLE t5(a INTEGER PRIMARY KEY, b);
133 --sleep 1
134 INSERT INTO t5 VALUES(1, randomblob(2000));
135 INSERT INTO t5 VALUES(2, randomblob(1000));
136 --sleep 1
137 INSERT INTO t5 SELECT a+2, randomblob(1500) FROM t5;
138 INSERT INTO t5 SELECT a+4, randomblob(1500) FROM t5;
139 INSERT INTO t5 SELECT a+8, randomblob(1500) FROM t5;
140 --sleep 1
141 INSERT INTO t5 SELECT a+16, randomblob(1500) FROM t5;
142 --sleep 1
143 INSERT INTO t5 SELECT a+32, randomblob(1500) FROM t5;
144 SELECT count(*) FROM t5;
145 --match 64
146 SELECT avg(length(b)) FROM t5;
147 --match 1500.0
148 --sleep 2
149 UPDATE t5 SET b='x'||a||'y';
150 SELECT sum(length(b)) FROM t5;
151 --match 247
152 SELECT a FROM t5 WHERE b='x17y';
153 --match 17
154 CREATE INDEX t5b ON t5(b);
155 SELECT a FROM t5 WHERE b='x17y';
156 --match 17
157 SELECT a FROM t5 WHERE b GLOB 'x2?y' ORDER BY b DESC LIMIT 5;
158 --match 29 28 27 26 25
159 --end
160
161 --wait all
162 SELECT count(*), sum(length(b)) FROM t1;
163 --match 64 247
164 SELECT count(*), sum(length(b)) FROM t2;
165 --match 64 247
166 SELECT count(*), sum(length(b)) FROM t3;
167 --match 64 247
168 SELECT count(*), sum(length(b)) FROM t4;
169 --match 64 247
170 SELECT count(*), sum(length(b)) FROM t5;
171 --match 64 247
172
173 --task 1
174 SELECT t1.a FROM t1, t2
175 WHERE t2.b GLOB 'x3?y' AND t1.b=('x'||(t2.a+3)||'y')
176 ORDER BY t1.a LIMIT 4
177 --match 33 34 35 36
178 SELECT t3.a FROM t3, t4
179 WHERE t4.b GLOB 'x4?y' AND t3.b=('x'||(t4.a+5)||'y')
180 ORDER BY t3.a LIMIT 7
181 --match 45 46 47 48 49 50 51
182 --end
183 --task 5
184 SELECT t1.a FROM t1, t2
185 WHERE t2.b GLOB 'x3?y' AND t1.b=('x'||(t2.a+3)||'y')
186 ORDER BY t1.a LIMIT 4
187 --match 33 34 35 36
188 SELECT t3.a FROM t3, t4
189 WHERE t4.b GLOB 'x4?y' AND t3.b=('x'||(t4.a+5)||'y')
190 ORDER BY t3.a LIMIT 7
191 --match 45 46 47 48 49 50 51
192 --end
193 --task 3
194 SELECT t1.a FROM t1, t2
195 WHERE t2.b GLOB 'x3?y' AND t1.b=('x'||(t2.a+3)||'y')
196 ORDER BY t1.a LIMIT 4
197 --match 33 34 35 36
198 SELECT t3.a FROM t3, t4
199 WHERE t4.b GLOB 'x4?y' AND t3.b=('x'||(t4.a+5)||'y')
200 ORDER BY t3.a LIMIT 7
201 --match 45 46 47 48 49 50 51
202 --end
203 --task 2
204 SELECT t1.a FROM t1, t2
205 WHERE t2.b GLOB 'x3?y' AND t1.b=('x'||(t2.a+3)||'y')
206 ORDER BY t1.a LIMIT 4
207 --match 33 34 35 36
208 SELECT t3.a FROM t3, t4
209 WHERE t4.b GLOB 'x4?y' AND t3.b=('x'||(t4.a+5)||'y')
210 ORDER BY t3.a LIMIT 7
211 --match 45 46 47 48 49 50 51
212 --end
213 --task 4
214 SELECT t1.a FROM t1, t2
215 WHERE t2.b GLOB 'x3?y' AND t1.b=('x'||(t2.a+3)||'y')
216 ORDER BY t1.a LIMIT 4
217 --match 33 34 35 36
218 SELECT t3.a FROM t3, t4
219 WHERE t4.b GLOB 'x4?y' AND t3.b=('x'||(t4.a+5)||'y')
220 ORDER BY t3.a LIMIT 7
221 --match 45 46 47 48 49 50 51
222 --end
223 --wait all
224
225 --task 5
226 DROP INDEX t5b;
227 --sleep 5
228 PRAGMA integrity_check(10);
229 --match ok
230 CREATE INDEX t5b ON t5(b DESC);
231 --end
232 --task 3
233 DROP INDEX t3b;
234 --sleep 5
235 PRAGMA integrity_check(10);
236 --match ok
237 CREATE INDEX t3b ON t3(b DESC);
238 --end
239 --task 1
240 DROP INDEX t1b;
241 --sleep 5
242 PRAGMA integrity_check(10);
243 --match ok
244 CREATE INDEX t1b ON t1(b DESC);
245 --end
246 --task 2
247 DROP INDEX t2b;
248 --sleep 5
249 PRAGMA integrity_check(10);
250 --match ok
251 CREATE INDEX t2b ON t2(b DESC);
252 --end
253 --task 4
254 DROP INDEX t4b;
255 --sleep 5
256 PRAGMA integrity_check(10);
257 --match ok
258 CREATE INDEX t4b ON t4(b DESC);
259 --end
260 --wait all
261
262 --task 1
263 SELECT t1.a FROM t1, t2
264 WHERE t2.b GLOB 'x3?y' AND t1.b=('x'||(t2.a+3)||'y')
265 ORDER BY t1.a LIMIT 4
266 --match 33 34 35 36
267 SELECT t3.a FROM t3, t4
268 WHERE t4.b GLOB 'x4?y' AND t3.b=('x'||(t4.a+5)||'y')
269 ORDER BY t3.a LIMIT 7
270 --match 45 46 47 48 49 50 51
271 --end
272 --task 5
273 SELECT t1.a FROM t1, t2
274 WHERE t2.b GLOB 'x3?y' AND t1.b=('x'||(t2.a+3)||'y')
275 ORDER BY t1.a LIMIT 4
276 --match 33 34 35 36
277 SELECT t3.a FROM t3, t4
278 WHERE t4.b GLOB 'x4?y' AND t3.b=('x'||(t4.a+5)||'y')
279 ORDER BY t3.a LIMIT 7
280 --match 45 46 47 48 49 50 51
281 --end
282 --task 3
283 SELECT t1.a FROM t1, t2
284 WHERE t2.b GLOB 'x3?y' AND t1.b=('x'||(t2.a+3)||'y')
285 ORDER BY t1.a LIMIT 4
286 --match 33 34 35 36
287 SELECT t3.a FROM t3, t4
288 WHERE t4.b GLOB 'x4?y' AND t3.b=('x'||(t4.a+5)||'y')
289 ORDER BY t3.a LIMIT 7
290 --match 45 46 47 48 49 50 51
291 --end
292 --task 2
293 SELECT t1.a FROM t1, t2
294 WHERE t2.b GLOB 'x3?y' AND t1.b=('x'||(t2.a+3)||'y')
295 ORDER BY t1.a LIMIT 4
296 --match 33 34 35 36
297 SELECT t3.a FROM t3, t4
298 WHERE t4.b GLOB 'x4?y' AND t3.b=('x'||(t4.a+5)||'y')
299 ORDER BY t3.a LIMIT 7
300 --match 45 46 47 48 49 50 51
301 --end
302 --task 4
303 SELECT t1.a FROM t1, t2
304 WHERE t2.b GLOB 'x3?y' AND t1.b=('x'||(t2.a+3)||'y')
305 ORDER BY t1.a LIMIT 4
306 --match 33 34 35 36
307 SELECT t3.a FROM t3, t4
308 WHERE t4.b GLOB 'x4?y' AND t3.b=('x'||(t4.a+5)||'y')
309 ORDER BY t3.a LIMIT 7
310 --match 45 46 47 48 49 50 51
311 --end
312 --wait all
313
314 VACUUM;
315 PRAGMA integrity_check(10);
316 --match ok
317
318 --task 1
319 UPDATE t1 SET b=randomblob(20000);
320 --sleep 5
321 UPDATE t1 SET b='x'||a||'y';
322 SELECT a FROM t1 WHERE b='x63y';
323 --match 63
324 --end
325 --task 2
326 UPDATE t2 SET b=randomblob(20000);
327 --sleep 5
328 UPDATE t2 SET b='x'||a||'y';
329 SELECT a FROM t2 WHERE b='x63y';
330 --match 63
331 --end
332 --task 3
333 UPDATE t3 SET b=randomblob(20000);
334 --sleep 5
335 UPDATE t3 SET b='x'||a||'y';
336 SELECT a FROM t3 WHERE b='x63y';
337 --match 63
338 --end
339 --task 4
340 UPDATE t4 SET b=randomblob(20000);
341 --sleep 5
342 UPDATE t4 SET b='x'||a||'y';
343 SELECT a FROM t4 WHERE b='x63y';
344 --match 63
345 --end
346 --task 5
347 UPDATE t5 SET b=randomblob(20000);
348 --sleep 5
349 UPDATE t5 SET b='x'||a||'y';
350 SELECT a FROM t5 WHERE b='x63y';
351 --match 63
352 --end
353 --wait all
354
355 --task 1
356 SELECT t1.a FROM t1, t2
357 WHERE t2.b GLOB 'x3?y' AND t1.b=('x'||(t2.a+3)||'y')
358 ORDER BY t1.a LIMIT 4
359 --match 33 34 35 36
360 SELECT t3.a FROM t3, t4
361 WHERE t4.b GLOB 'x4?y' AND t3.b=('x'||(t4.a+5)||'y')
362 ORDER BY t3.a LIMIT 7
363 --match 45 46 47 48 49 50 51
364 --end
365 --task 5
366 SELECT t1.a FROM t1, t2
367 WHERE t2.b GLOB 'x3?y' AND t1.b=('x'||(t2.a+3)||'y')
368 ORDER BY t1.a LIMIT 4
369 --match 33 34 35 36
370 SELECT t3.a FROM t3, t4
371 WHERE t4.b GLOB 'x4?y' AND t3.b=('x'||(t4.a+5)||'y')
372 ORDER BY t3.a LIMIT 7
373 --match 45 46 47 48 49 50 51
374 --end
375 --task 3
376 SELECT t1.a FROM t1, t2
377 WHERE t2.b GLOB 'x3?y' AND t1.b=('x'||(t2.a+3)||'y')
378 ORDER BY t1.a LIMIT 4
379 --match 33 34 35 36
380 SELECT t3.a FROM t3, t4
381 WHERE t4.b GLOB 'x4?y' AND t3.b=('x'||(t4.a+5)||'y')
382 ORDER BY t3.a LIMIT 7
383 --match 45 46 47 48 49 50 51
384 --end
385 --task 2
386 SELECT t1.a FROM t1, t2
387 WHERE t2.b GLOB 'x3?y' AND t1.b=('x'||(t2.a+3)||'y')
388 ORDER BY t1.a LIMIT 4
389 --match 33 34 35 36
390 SELECT t3.a FROM t3, t4
391 WHERE t4.b GLOB 'x4?y' AND t3.b=('x'||(t4.a+5)||'y')
392 ORDER BY t3.a LIMIT 7
393 --match 45 46 47 48 49 50 51
394 --end
395 --task 4
396 SELECT t1.a FROM t1, t2
397 WHERE t2.b GLOB 'x3?y' AND t1.b=('x'||(t2.a+3)||'y')
398 ORDER BY t1.a LIMIT 4
399 --match 33 34 35 36
400 SELECT t3.a FROM t3, t4
401 WHERE t4.b GLOB 'x4?y' AND t3.b=('x'||(t4.a+5)||'y')
402 ORDER BY t3.a LIMIT 7
403 --match 45 46 47 48 49 50 51
404 --end
405 --wait all
OLDNEW
« no previous file with comments | « third_party/sqlite/sqlite-src-3080704/mptest/mptest.c ('k') | third_party/sqlite/sqlite-src-3080704/spec.template » ('j') | no next file with comments »

Powered by Google App Engine