mirror of
https://github.com/sqlite/sqlite.git
synced 2025-08-07 02:42:48 +03:00
If a call is made to sqlite3PagerAcquire when there are no outstanding references to any pages and the pager is in the error-state, try to exit the error-state at this point. Previously this was only attempted if the pager was configured to use exclusive mode. (CVS 6788)
FossilOrigin-Name: 62db08bc0de936e4a418ae583a3bdbbf33d7787e
This commit is contained in:
@@ -18,7 +18,7 @@
|
||||
** file simultaneously, or one process from reading the database while
|
||||
** another is writing.
|
||||
**
|
||||
** @(#) $Id: pager.c,v 1.597 2009/06/19 02:25:49 drh Exp $
|
||||
** @(#) $Id: pager.c,v 1.598 2009/06/19 17:50:02 danielk1977 Exp $
|
||||
*/
|
||||
#ifndef SQLITE_OMIT_DISKIO
|
||||
#include "sqliteInt.h"
|
||||
@@ -3576,7 +3576,7 @@ static int pagerSharedLock(Pager *pPager){
|
||||
** the error. Discard the contents of the pager-cache and treat any
|
||||
** open journal file as a hot-journal.
|
||||
*/
|
||||
if( !MEMDB && pPager->exclusiveMode
|
||||
if( !MEMDB
|
||||
&& sqlite3PcacheRefCount(pPager->pPCache)==0 && pPager->errCode
|
||||
){
|
||||
if( isOpen(pPager->jfd) ){
|
||||
|
Reference in New Issue
Block a user