Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Fix a broken assert() in the recovery extension. Forum post 82a88f5812. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
8a1ad137606ce5bddbed62f89ff9a5cd |
User & Date: | dan 2023-04-20 10:26:56 |
Context
2023-04-20
| ||
10:40 | Fix a function declaration so that it correctly appears as private in the amalgamation. Forum post ec8c77516c. (check-in: 1864569b user: drh tags: trunk) | |
10:26 | Fix a broken assert() in the recovery extension. Forum post 82a88f5812. (check-in: 8a1ad137 user: dan tags: trunk) | |
2023-04-19
| ||
20:29 | Add tests for the progress-handler callback with the fts5 'secure-delete' feature. (check-in: 48505ad9 user: dan tags: trunk) | |
Changes
Changes to ext/recover/recover1.test.
︙ | ︙ | |||
311 312 313 314 315 316 317 318 319 320 | $R run list [catch { $R finish } msg] $msg } {1 {cannot start a transaction within a transaction}} do_execsql_test 16.9 { SELECT * FROM t1; COMMIT; } {1 2 3 4} finish_test | > > > > > > > > > > > > > | 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 | $R run list [catch { $R finish } msg] $msg } {1 {cannot start a transaction within a transaction}} do_execsql_test 16.9 { SELECT * FROM t1; COMMIT; } {1 2 3 4} #------------------------------------------------------------------------- reset_db do_execsql_test 17.1 { CREATE TABLE t(a, PRIMARY KEY(a, a COLLATE NOCASE)) WITHOUT ROWID; INSERT INTO t VALUES('abc'); INSERT INTO t VALUES('def'); } do_test 17.2 { set R [sqlite3_recover_init db main test.db2] $R run list [catch { $R finish } msg] $msg } {0 {}} finish_test |
Changes to ext/recover/sqlite3recover.c.
︙ | ︙ | |||
1102 1103 1104 1105 1106 1107 1108 | recoverFinalize(p, pStmt); pStmt = recoverPreparePrintf(p, p->dbOut, "PRAGMA index_xinfo(%Q)", zName); while( pStmt && sqlite3_step(pStmt)==SQLITE_ROW ){ int iField = sqlite3_column_int(pStmt, 0); int iCol = sqlite3_column_int(pStmt, 1); | | | 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 | recoverFinalize(p, pStmt); pStmt = recoverPreparePrintf(p, p->dbOut, "PRAGMA index_xinfo(%Q)", zName); while( pStmt && sqlite3_step(pStmt)==SQLITE_ROW ){ int iField = sqlite3_column_int(pStmt, 0); int iCol = sqlite3_column_int(pStmt, 1); assert( iCol<pNew->nCol ); pNew->aCol[iCol].iField = iField; pNew->bIntkey = 0; iPk = -2; } recoverFinalize(p, pStmt); |
︙ | ︙ |