| Index: third_party/sqlite/sqlite-src-3100200/test/wal6.test
|
| diff --git a/third_party/sqlite/src/test/wal6.test b/third_party/sqlite/sqlite-src-3100200/test/wal6.test
|
| similarity index 82%
|
| copy from third_party/sqlite/src/test/wal6.test
|
| copy to third_party/sqlite/sqlite-src-3100200/test/wal6.test
|
| index 2498907ea908549f9ecc636b0ba1ba3170565fa3..d96166ef5975eef37f4c7af86caa419ead663a90 100644
|
| --- a/third_party/sqlite/src/test/wal6.test
|
| +++ b/third_party/sqlite/sqlite-src-3100200/test/wal6.test
|
| @@ -193,5 +193,47 @@ do_test 3.x {
|
| db2 close
|
| } {}
|
|
|
| +#-------------------------------------------------------------------------
|
| +# Check that if a wal file has been partially checkpointed, no frames are
|
| +# read from the checkpointed part.
|
| +#
|
| +reset_db
|
| +do_execsql_test 4.1 {
|
| + PRAGMA page_size = 1024;
|
| + PRAGMA journal_mode = wal;
|
| + CREATE TABLE t1(a, b);
|
| + CREATE TABLE t2(a, b);
|
| + PRAGMA wal_checkpoint = truncate;
|
| +} {wal 0 0 0}
|
| +
|
| +do_test 4.2 {
|
| + execsql { INSERT INTO t1 VALUES(1, 2) }
|
| + file size test.db-wal
|
| +} [wal_file_size 1 1024]
|
| +
|
| +do_test 4.3 {
|
| + sqlite3 db2 test.db
|
| + execsql {
|
| + BEGIN;
|
| + INSERT INTO t2 VALUES(3, 4);
|
| + }
|
| + execsql { PRAGMA wal_checkpoint = passive } db2
|
| +} {0 1 1}
|
| +
|
| +do_test 4.3 {
|
| + execsql { COMMIT }
|
| + db2 close
|
| + hexio_write test.db-wal 0 [string repeat 00 2000]
|
| + sqlite3 db2 test.db
|
| +} {}
|
| +
|
| +do_test 4.4.1 {
|
| + catchsql { SELECT * FROM t1 } db2
|
| +} {0 {1 2}}
|
| +do_test 4.4.2 {
|
| + catchsql { SELECT * FROM t2 } db2
|
| +} {1 {database disk image is malformed}}
|
| +
|
| +
|
| finish_test
|
|
|
|
|