The read-only CHECK-constraint optimization of [34ddf02d3d21151b] inhibits the
[sqlite.git] / mptest / crash02.subtest
blob86f64ddbe77f997dcda0855c85a735b32cfbf8e7
1 /*
2 ** This script is called from crash01.test and config02.test and perhaps other
3 ** script.  After the database file has been set up, make a big rollback 
4 ** journal in client 1, then crash client 1.
5 ** Then in the other clients, do an integrity check.
6 */
7 --task 1 leave-hot-journal
8   --sleep 5
9   --finish
10   PRAGMA cache_size=10;
11   BEGIN;
12   UPDATE t1 SET b=randomblob(20000);
13   UPDATE t2 SET b=randomblob(20000);
14   UPDATE t3 SET b=randomblob(20000);
15   UPDATE t4 SET b=randomblob(20000);
16   UPDATE t5 SET b=randomblob(20000);
17   UPDATE t1 SET b=NULL;
18   UPDATE t2 SET b=NULL;
19   UPDATE t3 SET b=NULL;
20   UPDATE t4 SET b=NULL;
21   UPDATE t5 SET b=NULL;
22   --print Task one crashing an incomplete transaction
23   --exit 1
24 --end
25 --task 2 integrity_check-2
26   SELECT count(*) FROM t1;
27   --match 64
28   --sleep 100
29   PRAGMA integrity_check(10);
30   --match ok
31 --end
32 --task 3 integrity_check-3
33   SELECT count(*) FROM t1;
34   --match 64
35   --sleep 100
36   PRAGMA integrity_check(10);
37   --match ok
38 --end
39 --task 4 integrity_check-4
40   SELECT count(*) FROM t1;
41   --match 64
42   --sleep 100
43   PRAGMA integrity_check(10);
44   --match ok
45 --end
46 --task 5 integrity_check-5
47   SELECT count(*) FROM t1;
48   --match 64
49   --sleep 100
50   PRAGMA integrity_check(10);
51   --match ok
52 --end
53 --wait all