mirror of
https://github.com/sqlite/sqlite.git
synced 2025-08-05 15:55:57 +03:00
Avoid creating a TEMP database unless it is absolutely necessary. (CVS 1890)
FossilOrigin-Name: 5914a11caa4c6e778cd7ca010427897c8f971552
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.154 2004/08/07 23:54:48 drh Exp $
|
||||
** @(#) $Id: pager.c,v 1.155 2004/08/18 02:10:15 drh Exp $
|
||||
*/
|
||||
#include "os.h" /* Must be first to enable large file support */
|
||||
#include "sqliteInt.h"
|
||||
@@ -1659,9 +1659,7 @@ static void memoryTruncate(Pager *pPager){
|
||||
*/
|
||||
int sqlite3pager_truncate(Pager *pPager, Pgno nPage){
|
||||
int rc;
|
||||
if( pPager->dbSize<0 ){
|
||||
sqlite3pager_pagecount(pPager);
|
||||
}
|
||||
sqlite3pager_pagecount(pPager);
|
||||
if( pPager->errMask!=0 ){
|
||||
rc = pager_errcode(pPager);
|
||||
return rc;
|
||||
@@ -2211,7 +2209,7 @@ int sqlite3pager_get(Pager *pPager, Pgno pgno, void **ppPage){
|
||||
if( pPager->nExtra>0 ){
|
||||
memset(PGHDR_TO_EXTRA(pPg, pPager), 0, pPager->nExtra);
|
||||
}
|
||||
if( pPager->dbSize<0 ) sqlite3pager_pagecount(pPager);
|
||||
sqlite3pager_pagecount(pPager);
|
||||
if( pPager->errMask!=0 ){
|
||||
sqlite3pager_unref(PGHDR_TO_DATA(pPg));
|
||||
rc = pager_errcode(pPager);
|
||||
@@ -2917,6 +2915,7 @@ int sqlite3pager_stmt_begin(Pager *pPager){
|
||||
int rc;
|
||||
char zTemp[SQLITE_TEMPNAME_SIZE];
|
||||
assert( !pPager->stmtInUse );
|
||||
assert( pPager->dbSize>=0 );
|
||||
TRACE2("STMT-BEGIN %d\n", pPager->fd.h);
|
||||
if( pPager->memDb ){
|
||||
pPager->stmtInUse = 1;
|
||||
|
Reference in New Issue
Block a user