mirror of
https://github.com/sqlite/sqlite.git
synced 2024-12-01 09:12:16 +01:00
4c5298f352
FossilOrigin-Name: f0d95afc73f8dbce8943dceb4a14b7de650c8823
54 lines
1.2 KiB
Plaintext
54 lines
1.2 KiB
Plaintext
/*
|
|
** This script is called from crash01.test and config02.test and perhaps other
|
|
** script. After the database file has been set up, make a big rollback
|
|
** journal in client 1, then crash client 1.
|
|
** Then in the other clients, do an integrity check.
|
|
*/
|
|
--task 1 leave-hot-journal
|
|
--sleep 5
|
|
--finish
|
|
PRAGMA cache_size=10;
|
|
BEGIN;
|
|
UPDATE t1 SET b=randomblob(20000);
|
|
UPDATE t2 SET b=randomblob(20000);
|
|
UPDATE t3 SET b=randomblob(20000);
|
|
UPDATE t4 SET b=randomblob(20000);
|
|
UPDATE t5 SET b=randomblob(20000);
|
|
UPDATE t1 SET b=NULL;
|
|
UPDATE t2 SET b=NULL;
|
|
UPDATE t3 SET b=NULL;
|
|
UPDATE t4 SET b=NULL;
|
|
UPDATE t5 SET b=NULL;
|
|
--print Task one crashing an incomplete transaction
|
|
--exit 1
|
|
--end
|
|
--task 2 integrity_check-2
|
|
SELECT count(*) FROM t1;
|
|
--match 64
|
|
--sleep 100
|
|
PRAGMA integrity_check(10);
|
|
--match ok
|
|
--end
|
|
--task 3 integrity_check-3
|
|
SELECT count(*) FROM t1;
|
|
--match 64
|
|
--sleep 100
|
|
PRAGMA integrity_check(10);
|
|
--match ok
|
|
--end
|
|
--task 4 integrity_check-4
|
|
SELECT count(*) FROM t1;
|
|
--match 64
|
|
--sleep 100
|
|
PRAGMA integrity_check(10);
|
|
--match ok
|
|
--end
|
|
--task 5 integrity_check-5
|
|
SELECT count(*) FROM t1;
|
|
--match 64
|
|
--sleep 100
|
|
PRAGMA integrity_check(10);
|
|
--match ok
|
|
--end
|
|
--wait all
|