Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Remove asserts on the existing of journal files in pager - asserts that are not valid for certain kinds of simulated I/O errors or for async I/O. (CVS 3769) |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
f5fad52a97a16faddc2701ea0e05a301 |
User & Date: | drh 2007-03-30 17:18:51.000 |
Context
2007-03-30
| ||
18:21 | Coverage testing for a few lines in pager.c. (CVS 3770) (check-in: c1aca18fad user: danielk1977 tags: trunk) | |
17:18 | Remove asserts on the existing of journal files in pager - asserts that are not valid for certain kinds of simulated I/O errors or for async I/O. (CVS 3769) (check-in: f5fad52a97 user: drh tags: trunk) | |
17:17 | Get the memleak.test script working again after recent changes. (CVS 3768) (check-in: cd6ca078e3 user: drh tags: trunk) | |
Changes
Changes to src/pager.c.
︙ | ︙ | |||
14 15 16 17 18 19 20 | ** The pager is used to access a database disk file. It implements ** atomic commit and rollback through the use of a journal file that ** is separate from the database file. The pager also implements file ** locking to prevent two processes from writing the same database ** file simultaneously, or one process from reading the database while ** another is writing. ** | | | 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | ** The pager is used to access a database disk file. It implements ** atomic commit and rollback through the use of a journal file that ** is separate from the database file. The pager also implements file ** locking to prevent two processes from writing the same database ** file simultaneously, or one process from reading the database while ** another is writing. ** ** @(#) $Id: pager.c,v 1.310 2007/03/30 17:18:51 drh Exp $ */ #ifndef SQLITE_OMIT_DISKIO #include "sqliteInt.h" #include "os.h" #include "pager.h" #include <assert.h> #include <string.h> |
︙ | ︙ | |||
952 953 954 955 956 957 958 959 | sqlite3OsClose(&pPager->jfd); pPager->journalOpen = 0; /* If this is a temporary pager file, then the journal file should ** have been configured as delete-on-close. Otherwise, it should still ** be in the file system. This pager still holds a RESERVED or greater ** lock on the database file, so there is no chance another process ** could create or remove a journal file. */ | > > > | | | 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 | sqlite3OsClose(&pPager->jfd); pPager->journalOpen = 0; /* If this is a temporary pager file, then the journal file should ** have been configured as delete-on-close. Otherwise, it should still ** be in the file system. This pager still holds a RESERVED or greater ** lock on the database file, so there is no chance another process ** could create or remove a journal file. ** ** These asserts are not valid for asynchronous I/O such as is found ** in async.test */ /*assert( sqlite3OsFileExists(pPager->zJournal) || pPager->tempFile );*/ /*assert( !sqlite3OsFileExists(pPager->zJournal) || !pPager->tempFile );*/ if( !pPager->tempFile ){ rc = sqlite3OsDelete(pPager->zJournal); } } sqliteFree( pPager->aInJournal ); pPager->aInJournal = 0; for(pPg=pPager->pAll; pPg; pPg=pPg->pNextAll){ |
︙ | ︙ |