Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Add test cases for ticket [7f7f8026eda387d544]. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
87aa9357fbe6749bae60e30af54ca16e |
User & Date: | drh 2016-04-07 21:14:35.631 |
Context
2016-04-08
| ||
19:44 | Update documentation for sqlite3_snapshot_open(). No code changes. (check-in: 1dfa5234d3 user: drh tags: trunk) | |
2016-04-07
| ||
21:14 | Add test cases for ticket [7f7f8026eda387d544]. (check-in: 87aa9357fb user: drh tags: trunk) | |
18:42 | Prevent the in-memory journal read cursor from entering an inconsistent state when it reads the last few bytes out of the journal file. Fix for ticket [7f7f8026eda38]. (check-in: c4b9c611bd user: drh tags: trunk) | |
Changes
Changes to test/savepoint7.test.
︙ | ︙ | |||
90 91 92 93 94 95 96 97 98 | INSERT INTO t2 VALUES($a,$b,$c); ROLLBACK TO x2; } } } msg] list $rc $msg [db eval {SELECT * FROM t2}] } {1 {abort due to ROLLBACK} {}} finish_test | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 | INSERT INTO t2 VALUES($a,$b,$c); ROLLBACK TO x2; } } } msg] list $rc $msg [db eval {SELECT * FROM t2}] } {1 {abort due to ROLLBACK} {}} # Ticket: https://www.sqlite.org/src/tktview/7f7f8026eda387d544b # Segfault in the in-memory journal logic triggered by a tricky # combination of SAVEPOINT operations. # unset -nocomplain i for {set i 248} {$i<=253} {incr i} { do_test savepoint7-3.$i { db close forcedelete test.db sqlite3 db test.db db eval { PRAGMA page_size=1024; PRAGMA temp_store=MEMORY; BEGIN; CREATE TABLE t1(x INTEGER PRIMARY KEY, y TEXT); WITH RECURSIVE c(x) AS (VALUES(1) UNION SELECT x+1 FROM c WHERE x<$::i) INSERT INTO t1(x,y) SELECT x*10, printf('%04d%.800c',x,'*') FROM c; SAVEPOINT one; SELECT count(*) FROM t1; WITH RECURSIVE c(x) AS (VALUES(1) UNION SELECT x+1 FROM c WHERE x<$::i) INSERT INTO t1(x,y) SELECT x*10+1, printf('%04d%.800c',x,'*') FROM c; ROLLBACK TO one; SELECT count(*) FROM t1; SAVEPOINT twoB; WITH RECURSIVE c(x) AS (VALUES(1) UNION SELECT x+1 FROM c WHERE x<10) INSERT INTO t1(x,y) SELECT x*10+2, printf('%04d%.800c',x,'*') FROM c; ROLLBACK TO twoB; RELEASE one; COMMIT; } } [list $i $i] } finish_test |