Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Fix pager_end_transaction() to ensure that a ROLLBACK does not clobber unwritten pages in a TEMP file pcache. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
9495d33879221c1821331dc72c61a6a3 |
User & Date: | drh 2016-05-13 11:50:00.812 |
Context
2016-05-13
| ||
12:12 | Clarification of the pagerFlushOnCommit() logic. (check-in: 3401d9dcdb user: drh tags: trunk) | |
11:50 | Fix pager_end_transaction() to ensure that a ROLLBACK does not clobber unwritten pages in a TEMP file pcache. (check-in: 9495d33879 user: drh tags: trunk) | |
04:24 | Additional debugging and tracing logic for pcache.c, turned off by default using an "#if 0". (check-in: 32a62e3bd4 user: drh tags: trunk) | |
Changes
Changes to src/pager.c.
︙ | ︙ | |||
2029 2030 2031 2032 2033 2034 2035 | } #endif sqlite3BitvecDestroy(pPager->pInJournal); pPager->pInJournal = 0; pPager->nRec = 0; if( rc==SQLITE_OK ){ | | | 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 | } #endif sqlite3BitvecDestroy(pPager->pInJournal); pPager->pInJournal = 0; pPager->nRec = 0; if( rc==SQLITE_OK ){ if( !pPager->tempFile || (bCommit && pagerFlushOnCommit(pPager)) ){ sqlite3PcacheCleanAll(pPager->pPCache); }else{ sqlite3PcacheClearWritable(pPager->pPCache); } sqlite3PcacheTruncate(pPager->pPCache, pPager->dbSize); } |
︙ | ︙ |