pPager           10229 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerClose(Pager *pPager);
pPager           10248 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerAcquire(Pager *pPager, Pgno pgno, DbPage **ppPage, int clrFlag);
pPager           10250 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE DbPage *sqlite3PagerLookup(Pager *pPager, Pgno pgno);
pPager           10268 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerSync(Pager *pPager, const char *zMaster);
pPager           10271 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerOpenSavepoint(Pager *pPager, int n);
pPager           10272 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerSavepoint(Pager *pPager, int op, int iSavepoint);
pPager           10273 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerSharedLock(Pager *pPager);
pPager           10276 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE   int sqlite3PagerCheckpoint(Pager *pPager, int, int*, int*);
pPager           10277 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE   int sqlite3PagerWalSupported(Pager *pPager);
pPager           10278 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE   int sqlite3PagerWalCallback(Pager *pPager);
pPager           10279 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE   int sqlite3PagerOpenWal(Pager *pPager, int *pisOpen);
pPager           10280 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE   int sqlite3PagerCloseWal(Pager *pPager);
pPager           10284 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE   int sqlite3PagerWalFramesize(Pager *pPager);
pPager           10362 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager;                 /* The pager this page is part of */
pPager           15205 ext/sqlite3/libsqlite/sqlite3.c           Pager *pPager = sqlite3BtreePager(pBt);
pPager           15206 ext/sqlite3/libsqlite/sqlite3.c           totalUsed += sqlite3PagerMemUsed(pPager);
pPager           15295 ext/sqlite3/libsqlite/sqlite3.c           Pager *pPager = sqlite3BtreePager(db->aDb[i].pBt);
pPager           15296 ext/sqlite3/libsqlite/sqlite3.c           sqlite3PagerCacheStat(pPager, op, resetFlag, &nRet);
pPager           42394 ext/sqlite3/libsqlite/sqlite3.c #define JOURNAL_PG_SZ(pPager)  ((pPager->pageSize) + 8)
pPager           42400 ext/sqlite3/libsqlite/sqlite3.c #define JOURNAL_HDR_SZ(pPager) (pPager->sectorSize)
pPager           42411 ext/sqlite3/libsqlite/sqlite3.c # define MEMDB pPager->memDb
pPager           42448 ext/sqlite3/libsqlite/sqlite3.c static int pagerUseWal(Pager *pPager){
pPager           42449 ext/sqlite3/libsqlite/sqlite3.c   return (pPager->pWal!=0);
pPager           42469 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = p;
pPager           42486 ext/sqlite3/libsqlite/sqlite3.c   assert( p->tempFile==0 || pPager->changeCountDone );
pPager           42514 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->changeCountDone==0 || pPager->eLock>=RESERVED_LOCK );
pPager           42520 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->errCode==SQLITE_OK );
pPager           42521 ext/sqlite3/libsqlite/sqlite3.c       assert( sqlite3PcacheRefCount(pPager->pPCache)==0 || pPager->tempFile );
pPager           42525 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->errCode==SQLITE_OK );
pPager           42532 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->errCode==SQLITE_OK );
pPager           42533 ext/sqlite3/libsqlite/sqlite3.c       if( !pagerUseWal(pPager) ){
pPager           42536 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->dbSize==pPager->dbOrigSize );
pPager           42537 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->dbOrigSize==pPager->dbFileSize );
pPager           42538 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->dbOrigSize==pPager->dbHintSize );
pPager           42539 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->setMaster==0 );
pPager           42544 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->errCode==SQLITE_OK );
pPager           42545 ext/sqlite3/libsqlite/sqlite3.c       if( !pagerUseWal(pPager) ){
pPager           42557 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->dbOrigSize==pPager->dbFileSize );
pPager           42558 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->dbOrigSize==pPager->dbHintSize );
pPager           42563 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->errCode==SQLITE_OK );
pPager           42564 ext/sqlite3/libsqlite/sqlite3.c       assert( !pagerUseWal(pPager) );
pPager           42570 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->dbOrigSize<=pPager->dbHintSize );
pPager           42575 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->errCode==SQLITE_OK );
pPager           42576 ext/sqlite3/libsqlite/sqlite3.c       assert( !pagerUseWal(pPager) );
pPager           42588 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->errCode!=SQLITE_OK );
pPager           42589 ext/sqlite3/libsqlite/sqlite3.c       assert( sqlite3PcacheRefCount(pPager->pPCache)>0 );
pPager           42658 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = pPg->pPager;
pPager           42662 ext/sqlite3/libsqlite/sqlite3.c   for(i=0; i<pPager->nSavepoint; i++){
pPager           42663 ext/sqlite3/libsqlite/sqlite3.c     p = &pPager->aSavepoint[i];
pPager           42674 ext/sqlite3/libsqlite/sqlite3.c static int pageInJournal(Pager *pPager, PgHdr *pPg){
pPager           42675 ext/sqlite3/libsqlite/sqlite3.c   return sqlite3BitvecTest(pPager->pInJournal, pPg->pgno);
pPager           42719 ext/sqlite3/libsqlite/sqlite3.c static int pagerUnlockDb(Pager *pPager, int eLock){
pPager           42722 ext/sqlite3/libsqlite/sqlite3.c   assert( !pPager->exclusiveMode || pPager->eLock==eLock );
pPager           42724 ext/sqlite3/libsqlite/sqlite3.c   assert( eLock!=NO_LOCK || pagerUseWal(pPager)==0 );
pPager           42725 ext/sqlite3/libsqlite/sqlite3.c   if( isOpen(pPager->fd) ){
pPager           42726 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->eLock>=eLock );
pPager           42727 ext/sqlite3/libsqlite/sqlite3.c     rc = pPager->noLock ? SQLITE_OK : sqlite3OsUnlock(pPager->fd, eLock);
pPager           42728 ext/sqlite3/libsqlite/sqlite3.c     if( pPager->eLock!=UNKNOWN_LOCK ){
pPager           42729 ext/sqlite3/libsqlite/sqlite3.c       pPager->eLock = (u8)eLock;
pPager           42731 ext/sqlite3/libsqlite/sqlite3.c     IOTRACE(("UNLOCK %p %d\n", pPager, eLock))
pPager           42746 ext/sqlite3/libsqlite/sqlite3.c static int pagerLockDb(Pager *pPager, int eLock){
pPager           42750 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->eLock<eLock || pPager->eLock==UNKNOWN_LOCK ){
pPager           42751 ext/sqlite3/libsqlite/sqlite3.c     rc = pPager->noLock ? SQLITE_OK : sqlite3OsLock(pPager->fd, eLock);
pPager           42752 ext/sqlite3/libsqlite/sqlite3.c     if( rc==SQLITE_OK && (pPager->eLock!=UNKNOWN_LOCK||eLock==EXCLUSIVE_LOCK) ){
pPager           42753 ext/sqlite3/libsqlite/sqlite3.c       pPager->eLock = (u8)eLock;
pPager           42754 ext/sqlite3/libsqlite/sqlite3.c       IOTRACE(("LOCK %p %d\n", pPager, eLock))
pPager           42778 ext/sqlite3/libsqlite/sqlite3.c static int jrnlBufferSize(Pager *pPager){
pPager           42780 ext/sqlite3/libsqlite/sqlite3.c   if( !pPager->tempFile ){
pPager           42785 ext/sqlite3/libsqlite/sqlite3.c     assert( isOpen(pPager->fd) );
pPager           42786 ext/sqlite3/libsqlite/sqlite3.c     dc = sqlite3OsDeviceCharacteristics(pPager->fd);
pPager           42787 ext/sqlite3/libsqlite/sqlite3.c     nSector = pPager->sectorSize;
pPager           42788 ext/sqlite3/libsqlite/sqlite3.c     szPage = pPager->pageSize;
pPager           42797 ext/sqlite3/libsqlite/sqlite3.c   return JOURNAL_HDR_SZ(pPager) + JOURNAL_PG_SZ(pPager);
pPager           42819 ext/sqlite3/libsqlite/sqlite3.c   return pager_datahash(pPage->pPager->pageSize, (unsigned char *)pPage->pData);
pPager           42832 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = pPg->pPager;
pPager           42833 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState!=PAGER_ERROR );
pPager           42923 ext/sqlite3/libsqlite/sqlite3.c static i64 journalHdrOffset(Pager *pPager){
pPager           42925 ext/sqlite3/libsqlite/sqlite3.c   i64 c = pPager->journalOff;
pPager           42927 ext/sqlite3/libsqlite/sqlite3.c     offset = ((c-1)/JOURNAL_HDR_SZ(pPager) + 1) * JOURNAL_HDR_SZ(pPager);
pPager           42929 ext/sqlite3/libsqlite/sqlite3.c   assert( offset%JOURNAL_HDR_SZ(pPager)==0 );
pPager           42931 ext/sqlite3/libsqlite/sqlite3.c   assert( (offset-c)<JOURNAL_HDR_SZ(pPager) );
pPager           42956 ext/sqlite3/libsqlite/sqlite3.c static int zeroJournalHdr(Pager *pPager, int doTruncate){
pPager           42958 ext/sqlite3/libsqlite/sqlite3.c   assert( isOpen(pPager->jfd) );
pPager           42959 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->journalOff ){
pPager           42960 ext/sqlite3/libsqlite/sqlite3.c     const i64 iLimit = pPager->journalSizeLimit;    /* Local cache of jsl */
pPager           42962 ext/sqlite3/libsqlite/sqlite3.c     IOTRACE(("JZEROHDR %p\n", pPager))
pPager           42964 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3OsTruncate(pPager->jfd, 0);
pPager           42967 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3OsWrite(pPager->jfd, zeroHdr, sizeof(zeroHdr), 0);
pPager           42969 ext/sqlite3/libsqlite/sqlite3.c     if( rc==SQLITE_OK && !pPager->noSync ){
pPager           42970 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3OsSync(pPager->jfd, SQLITE_SYNC_DATAONLY|pPager->syncFlags);
pPager           42981 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3OsFileSize(pPager->jfd, &sz);
pPager           42983 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3OsTruncate(pPager->jfd, iLimit);
pPager           43005 ext/sqlite3/libsqlite/sqlite3.c static int writeJournalHdr(Pager *pPager){
pPager           43007 ext/sqlite3/libsqlite/sqlite3.c   char *zHeader = pPager->pTmpSpace;  /* Temporary space used to build header */
pPager           43008 ext/sqlite3/libsqlite/sqlite3.c   u32 nHeader = (u32)pPager->pageSize;/* Size of buffer pointed to by zHeader */
pPager           43012 ext/sqlite3/libsqlite/sqlite3.c   assert( isOpen(pPager->jfd) );      /* Journal file must be open. */
pPager           43014 ext/sqlite3/libsqlite/sqlite3.c   if( nHeader>JOURNAL_HDR_SZ(pPager) ){
pPager           43015 ext/sqlite3/libsqlite/sqlite3.c     nHeader = JOURNAL_HDR_SZ(pPager);
pPager           43022 ext/sqlite3/libsqlite/sqlite3.c   for(ii=0; ii<pPager->nSavepoint; ii++){
pPager           43023 ext/sqlite3/libsqlite/sqlite3.c     if( pPager->aSavepoint[ii].iHdrOffset==0 ){
pPager           43024 ext/sqlite3/libsqlite/sqlite3.c       pPager->aSavepoint[ii].iHdrOffset = pPager->journalOff;
pPager           43028 ext/sqlite3/libsqlite/sqlite3.c   pPager->journalHdr = pPager->journalOff = journalHdrOffset(pPager);
pPager           43050 ext/sqlite3/libsqlite/sqlite3.c   assert( isOpen(pPager->fd) || pPager->noSync );
pPager           43051 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->noSync || (pPager->journalMode==PAGER_JOURNALMODE_MEMORY)
pPager           43052 ext/sqlite3/libsqlite/sqlite3.c    || (sqlite3OsDeviceCharacteristics(pPager->fd)&SQLITE_IOCAP_SAFE_APPEND) 
pPager           43061 ext/sqlite3/libsqlite/sqlite3.c   sqlite3_randomness(sizeof(pPager->cksumInit), &pPager->cksumInit);
pPager           43062 ext/sqlite3/libsqlite/sqlite3.c   put32bits(&zHeader[sizeof(aJournalMagic)+4], pPager->cksumInit);
pPager           43064 ext/sqlite3/libsqlite/sqlite3.c   put32bits(&zHeader[sizeof(aJournalMagic)+8], pPager->dbOrigSize);
pPager           43066 ext/sqlite3/libsqlite/sqlite3.c   put32bits(&zHeader[sizeof(aJournalMagic)+12], pPager->sectorSize);
pPager           43069 ext/sqlite3/libsqlite/sqlite3.c   put32bits(&zHeader[sizeof(aJournalMagic)+16], pPager->pageSize);
pPager           43096 ext/sqlite3/libsqlite/sqlite3.c   for(nWrite=0; rc==SQLITE_OK&&nWrite<JOURNAL_HDR_SZ(pPager); nWrite+=nHeader){
pPager           43097 ext/sqlite3/libsqlite/sqlite3.c     IOTRACE(("JHDR %p %lld %d\n", pPager, pPager->journalHdr, nHeader))
pPager           43098 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3OsWrite(pPager->jfd, zHeader, nHeader, pPager->journalOff);
pPager           43099 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->journalHdr <= pPager->journalOff );
pPager           43100 ext/sqlite3/libsqlite/sqlite3.c     pPager->journalOff += nHeader;
pPager           43124 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager,               /* Pager object */
pPager           43134 ext/sqlite3/libsqlite/sqlite3.c   assert( isOpen(pPager->jfd) );      /* Journal file must be open. */
pPager           43140 ext/sqlite3/libsqlite/sqlite3.c   pPager->journalOff = journalHdrOffset(pPager);
pPager           43141 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->journalOff+JOURNAL_HDR_SZ(pPager) > journalSize ){
pPager           43144 ext/sqlite3/libsqlite/sqlite3.c   iHdrOff = pPager->journalOff;
pPager           43151 ext/sqlite3/libsqlite/sqlite3.c   if( isHot || iHdrOff!=pPager->journalHdr ){
pPager           43152 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3OsRead(pPager->jfd, aMagic, sizeof(aMagic), iHdrOff);
pPager           43165 ext/sqlite3/libsqlite/sqlite3.c   if( SQLITE_OK!=(rc = read32bits(pPager->jfd, iHdrOff+8, pNRec))
pPager           43166 ext/sqlite3/libsqlite/sqlite3.c    || SQLITE_OK!=(rc = read32bits(pPager->jfd, iHdrOff+12, &pPager->cksumInit))
pPager           43167 ext/sqlite3/libsqlite/sqlite3.c    || SQLITE_OK!=(rc = read32bits(pPager->jfd, iHdrOff+16, pDbSize))
pPager           43172 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->journalOff==0 ){
pPager           43177 ext/sqlite3/libsqlite/sqlite3.c     if( SQLITE_OK!=(rc = read32bits(pPager->jfd, iHdrOff+20, &iSectorSize))
pPager           43178 ext/sqlite3/libsqlite/sqlite3.c      || SQLITE_OK!=(rc = read32bits(pPager->jfd, iHdrOff+24, &iPageSize))
pPager           43188 ext/sqlite3/libsqlite/sqlite3.c       iPageSize = pPager->pageSize;
pPager           43212 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3PagerSetPagesize(pPager, &iPageSize, -1);
pPager           43221 ext/sqlite3/libsqlite/sqlite3.c     pPager->sectorSize = iSectorSize;
pPager           43224 ext/sqlite3/libsqlite/sqlite3.c   pPager->journalOff += JOURNAL_HDR_SZ(pPager);
pPager           43248 ext/sqlite3/libsqlite/sqlite3.c static int writeMasterJournal(Pager *pPager, const char *zMaster){
pPager           43255 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->setMaster==0 );
pPager           43256 ext/sqlite3/libsqlite/sqlite3.c   assert( !pagerUseWal(pPager) );
pPager           43259 ext/sqlite3/libsqlite/sqlite3.c    || pPager->journalMode==PAGER_JOURNALMODE_MEMORY 
pPager           43260 ext/sqlite3/libsqlite/sqlite3.c    || !isOpen(pPager->jfd)
pPager           43264 ext/sqlite3/libsqlite/sqlite3.c   pPager->setMaster = 1;
pPager           43265 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->journalHdr <= pPager->journalOff );
pPager           43276 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->fullSync ){
pPager           43277 ext/sqlite3/libsqlite/sqlite3.c     pPager->journalOff = journalHdrOffset(pPager);
pPager           43279 ext/sqlite3/libsqlite/sqlite3.c   iHdrOff = pPager->journalOff;
pPager           43284 ext/sqlite3/libsqlite/sqlite3.c   if( (0 != (rc = write32bits(pPager->jfd, iHdrOff, PAGER_MJ_PGNO(pPager))))
pPager           43285 ext/sqlite3/libsqlite/sqlite3.c    || (0 != (rc = sqlite3OsWrite(pPager->jfd, zMaster, nMaster, iHdrOff+4)))
pPager           43286 ext/sqlite3/libsqlite/sqlite3.c    || (0 != (rc = write32bits(pPager->jfd, iHdrOff+4+nMaster, nMaster)))
pPager           43287 ext/sqlite3/libsqlite/sqlite3.c    || (0 != (rc = write32bits(pPager->jfd, iHdrOff+4+nMaster+4, cksum)))
pPager           43288 ext/sqlite3/libsqlite/sqlite3.c    || (0 != (rc = sqlite3OsWrite(pPager->jfd, aJournalMagic, 8, iHdrOff+4+nMaster+8)))
pPager           43292 ext/sqlite3/libsqlite/sqlite3.c   pPager->journalOff += (nMaster+20);
pPager           43304 ext/sqlite3/libsqlite/sqlite3.c   if( SQLITE_OK==(rc = sqlite3OsFileSize(pPager->jfd, &jrnlSize))
pPager           43305 ext/sqlite3/libsqlite/sqlite3.c    && jrnlSize>pPager->journalOff
pPager           43307 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3OsTruncate(pPager->jfd, pPager->journalOff);
pPager           43315 ext/sqlite3/libsqlite/sqlite3.c static void pager_reset(Pager *pPager){
pPager           43316 ext/sqlite3/libsqlite/sqlite3.c   pPager->iDataVersion++;
pPager           43317 ext/sqlite3/libsqlite/sqlite3.c   sqlite3BackupRestart(pPager->pBackup);
pPager           43318 ext/sqlite3/libsqlite/sqlite3.c   sqlite3PcacheClear(pPager->pPCache);
pPager           43324 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE u32 sqlite3PagerDataVersion(Pager *pPager){
pPager           43325 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState>PAGER_OPEN );
pPager           43326 ext/sqlite3/libsqlite/sqlite3.c   return pPager->iDataVersion;
pPager           43334 ext/sqlite3/libsqlite/sqlite3.c static void releaseAllSavepoints(Pager *pPager){
pPager           43336 ext/sqlite3/libsqlite/sqlite3.c   for(ii=0; ii<pPager->nSavepoint; ii++){
pPager           43337 ext/sqlite3/libsqlite/sqlite3.c     sqlite3BitvecDestroy(pPager->aSavepoint[ii].pInSavepoint);
pPager           43339 ext/sqlite3/libsqlite/sqlite3.c   if( !pPager->exclusiveMode || sqlite3IsMemJournal(pPager->sjfd) ){
pPager           43340 ext/sqlite3/libsqlite/sqlite3.c     sqlite3OsClose(pPager->sjfd);
pPager           43342 ext/sqlite3/libsqlite/sqlite3.c   sqlite3_free(pPager->aSavepoint);
pPager           43343 ext/sqlite3/libsqlite/sqlite3.c   pPager->aSavepoint = 0;
pPager           43344 ext/sqlite3/libsqlite/sqlite3.c   pPager->nSavepoint = 0;
pPager           43345 ext/sqlite3/libsqlite/sqlite3.c   pPager->nSubRec = 0;
pPager           43353 ext/sqlite3/libsqlite/sqlite3.c static int addToSavepointBitvecs(Pager *pPager, Pgno pgno){
pPager           43357 ext/sqlite3/libsqlite/sqlite3.c   for(ii=0; ii<pPager->nSavepoint; ii++){
pPager           43358 ext/sqlite3/libsqlite/sqlite3.c     PagerSavepoint *p = &pPager->aSavepoint[ii];
pPager           43385 ext/sqlite3/libsqlite/sqlite3.c static void pager_unlock(Pager *pPager){
pPager           43387 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_READER 
pPager           43388 ext/sqlite3/libsqlite/sqlite3.c        || pPager->eState==PAGER_OPEN 
pPager           43389 ext/sqlite3/libsqlite/sqlite3.c        || pPager->eState==PAGER_ERROR 
pPager           43392 ext/sqlite3/libsqlite/sqlite3.c   sqlite3BitvecDestroy(pPager->pInJournal);
pPager           43393 ext/sqlite3/libsqlite/sqlite3.c   pPager->pInJournal = 0;
pPager           43394 ext/sqlite3/libsqlite/sqlite3.c   releaseAllSavepoints(pPager);
pPager           43396 ext/sqlite3/libsqlite/sqlite3.c   if( pagerUseWal(pPager) ){
pPager           43397 ext/sqlite3/libsqlite/sqlite3.c     assert( !isOpen(pPager->jfd) );
pPager           43398 ext/sqlite3/libsqlite/sqlite3.c     sqlite3WalEndReadTransaction(pPager->pWal);
pPager           43399 ext/sqlite3/libsqlite/sqlite3.c     pPager->eState = PAGER_OPEN;
pPager           43400 ext/sqlite3/libsqlite/sqlite3.c   }else if( !pPager->exclusiveMode ){
pPager           43402 ext/sqlite3/libsqlite/sqlite3.c     int iDc = isOpen(pPager->fd)?sqlite3OsDeviceCharacteristics(pPager->fd):0;
pPager           43416 ext/sqlite3/libsqlite/sqlite3.c      || 1!=(pPager->journalMode & 5)
pPager           43418 ext/sqlite3/libsqlite/sqlite3.c       sqlite3OsClose(pPager->jfd);
pPager           43426 ext/sqlite3/libsqlite/sqlite3.c     rc = pagerUnlockDb(pPager, NO_LOCK);
pPager           43427 ext/sqlite3/libsqlite/sqlite3.c     if( rc!=SQLITE_OK && pPager->eState==PAGER_ERROR ){
pPager           43428 ext/sqlite3/libsqlite/sqlite3.c       pPager->eLock = UNKNOWN_LOCK;
pPager           43435 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->errCode || pPager->eState!=PAGER_ERROR );
pPager           43436 ext/sqlite3/libsqlite/sqlite3.c     pPager->changeCountDone = 0;
pPager           43437 ext/sqlite3/libsqlite/sqlite3.c     pPager->eState = PAGER_OPEN;
pPager           43445 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->errCode ){
pPager           43447 ext/sqlite3/libsqlite/sqlite3.c     pager_reset(pPager);
pPager           43448 ext/sqlite3/libsqlite/sqlite3.c     pPager->changeCountDone = pPager->tempFile;
pPager           43449 ext/sqlite3/libsqlite/sqlite3.c     pPager->eState = PAGER_OPEN;
pPager           43450 ext/sqlite3/libsqlite/sqlite3.c     pPager->errCode = SQLITE_OK;
pPager           43451 ext/sqlite3/libsqlite/sqlite3.c     if( USEFETCH(pPager) ) sqlite3OsUnfetch(pPager->fd, 0, 0);
pPager           43454 ext/sqlite3/libsqlite/sqlite3.c   pPager->journalOff = 0;
pPager           43455 ext/sqlite3/libsqlite/sqlite3.c   pPager->journalHdr = 0;
pPager           43456 ext/sqlite3/libsqlite/sqlite3.c   pPager->setMaster = 0;
pPager           43478 ext/sqlite3/libsqlite/sqlite3.c static int pager_error(Pager *pPager, int rc){
pPager           43482 ext/sqlite3/libsqlite/sqlite3.c        pPager->errCode==SQLITE_FULL ||
pPager           43483 ext/sqlite3/libsqlite/sqlite3.c        pPager->errCode==SQLITE_OK ||
pPager           43484 ext/sqlite3/libsqlite/sqlite3.c        (pPager->errCode & 0xff)==SQLITE_IOERR
pPager           43487 ext/sqlite3/libsqlite/sqlite3.c     pPager->errCode = rc;
pPager           43488 ext/sqlite3/libsqlite/sqlite3.c     pPager->eState = PAGER_ERROR;
pPager           43493 ext/sqlite3/libsqlite/sqlite3.c static int pager_truncate(Pager *pPager, Pgno nPage);
pPager           43548 ext/sqlite3/libsqlite/sqlite3.c static int pager_end_transaction(Pager *pPager, int hasMaster, int bCommit){
pPager           43565 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           43566 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState!=PAGER_ERROR );
pPager           43567 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->eState<PAGER_WRITER_LOCKED && pPager->eLock<RESERVED_LOCK ){
pPager           43571 ext/sqlite3/libsqlite/sqlite3.c   releaseAllSavepoints(pPager);
pPager           43572 ext/sqlite3/libsqlite/sqlite3.c   assert( isOpen(pPager->jfd) || pPager->pInJournal==0 );
pPager           43573 ext/sqlite3/libsqlite/sqlite3.c   if( isOpen(pPager->jfd) ){
pPager           43574 ext/sqlite3/libsqlite/sqlite3.c     assert( !pagerUseWal(pPager) );
pPager           43577 ext/sqlite3/libsqlite/sqlite3.c     if( sqlite3IsMemJournal(pPager->jfd) ){
pPager           43578 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->journalMode==PAGER_JOURNALMODE_MEMORY );
pPager           43579 ext/sqlite3/libsqlite/sqlite3.c       sqlite3OsClose(pPager->jfd);
pPager           43580 ext/sqlite3/libsqlite/sqlite3.c     }else if( pPager->journalMode==PAGER_JOURNALMODE_TRUNCATE ){
pPager           43581 ext/sqlite3/libsqlite/sqlite3.c       if( pPager->journalOff==0 ){
pPager           43584 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3OsTruncate(pPager->jfd, 0);
pPager           43585 ext/sqlite3/libsqlite/sqlite3.c         if( rc==SQLITE_OK && pPager->fullSync ){
pPager           43591 ext/sqlite3/libsqlite/sqlite3.c           rc = sqlite3OsSync(pPager->jfd, pPager->syncFlags);
pPager           43594 ext/sqlite3/libsqlite/sqlite3.c       pPager->journalOff = 0;
pPager           43595 ext/sqlite3/libsqlite/sqlite3.c     }else if( pPager->journalMode==PAGER_JOURNALMODE_PERSIST
pPager           43596 ext/sqlite3/libsqlite/sqlite3.c       || (pPager->exclusiveMode && pPager->journalMode!=PAGER_JOURNALMODE_WAL)
pPager           43598 ext/sqlite3/libsqlite/sqlite3.c       rc = zeroJournalHdr(pPager, hasMaster);
pPager           43599 ext/sqlite3/libsqlite/sqlite3.c       pPager->journalOff = 0;
pPager           43606 ext/sqlite3/libsqlite/sqlite3.c       int bDelete = (!pPager->tempFile && sqlite3JournalExists(pPager->jfd));
pPager           43607 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->journalMode==PAGER_JOURNALMODE_DELETE 
pPager           43608 ext/sqlite3/libsqlite/sqlite3.c            || pPager->journalMode==PAGER_JOURNALMODE_MEMORY 
pPager           43609 ext/sqlite3/libsqlite/sqlite3.c            || pPager->journalMode==PAGER_JOURNALMODE_WAL 
pPager           43611 ext/sqlite3/libsqlite/sqlite3.c       sqlite3OsClose(pPager->jfd);
pPager           43613 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3OsDelete(pPager->pVfs, pPager->zJournal, 0);
pPager           43619 ext/sqlite3/libsqlite/sqlite3.c   sqlite3PcacheIterateDirty(pPager->pPCache, pager_set_pagehash);
pPager           43620 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->dbSize==0 && sqlite3PcacheRefCount(pPager->pPCache)>0 ){
pPager           43621 ext/sqlite3/libsqlite/sqlite3.c     PgHdr *p = sqlite3PagerLookup(pPager, 1);
pPager           43629 ext/sqlite3/libsqlite/sqlite3.c   sqlite3BitvecDestroy(pPager->pInJournal);
pPager           43630 ext/sqlite3/libsqlite/sqlite3.c   pPager->pInJournal = 0;
pPager           43631 ext/sqlite3/libsqlite/sqlite3.c   pPager->nRec = 0;
pPager           43632 ext/sqlite3/libsqlite/sqlite3.c   sqlite3PcacheCleanAll(pPager->pPCache);
pPager           43633 ext/sqlite3/libsqlite/sqlite3.c   sqlite3PcacheTruncate(pPager->pPCache, pPager->dbSize);
pPager           43635 ext/sqlite3/libsqlite/sqlite3.c   if( pagerUseWal(pPager) ){
pPager           43640 ext/sqlite3/libsqlite/sqlite3.c     rc2 = sqlite3WalEndWriteTransaction(pPager->pWal);
pPager           43642 ext/sqlite3/libsqlite/sqlite3.c   }else if( rc==SQLITE_OK && bCommit && pPager->dbFileSize>pPager->dbSize ){
pPager           43649 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->eLock==EXCLUSIVE_LOCK );
pPager           43650 ext/sqlite3/libsqlite/sqlite3.c     rc = pager_truncate(pPager, pPager->dbSize);
pPager           43653 ext/sqlite3/libsqlite/sqlite3.c   if( rc==SQLITE_OK && bCommit && isOpen(pPager->fd) ){
pPager           43654 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3OsFileControl(pPager->fd, SQLITE_FCNTL_COMMIT_PHASETWO, 0);
pPager           43658 ext/sqlite3/libsqlite/sqlite3.c   if( !pPager->exclusiveMode 
pPager           43659 ext/sqlite3/libsqlite/sqlite3.c    && (!pagerUseWal(pPager) || sqlite3WalExclusiveMode(pPager->pWal, 0))
pPager           43661 ext/sqlite3/libsqlite/sqlite3.c     rc2 = pagerUnlockDb(pPager, SHARED_LOCK);
pPager           43662 ext/sqlite3/libsqlite/sqlite3.c     pPager->changeCountDone = 0;
pPager           43664 ext/sqlite3/libsqlite/sqlite3.c   pPager->eState = PAGER_READER;
pPager           43665 ext/sqlite3/libsqlite/sqlite3.c   pPager->setMaster = 0;
pPager           43687 ext/sqlite3/libsqlite/sqlite3.c static void pagerUnlockAndRollback(Pager *pPager){
pPager           43688 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->eState!=PAGER_ERROR && pPager->eState!=PAGER_OPEN ){
pPager           43689 ext/sqlite3/libsqlite/sqlite3.c     assert( assert_pager_state(pPager) );
pPager           43690 ext/sqlite3/libsqlite/sqlite3.c     if( pPager->eState>=PAGER_WRITER_LOCKED ){
pPager           43692 ext/sqlite3/libsqlite/sqlite3.c       sqlite3PagerRollback(pPager);
pPager           43694 ext/sqlite3/libsqlite/sqlite3.c     }else if( !pPager->exclusiveMode ){
pPager           43695 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->eState==PAGER_READER );
pPager           43696 ext/sqlite3/libsqlite/sqlite3.c       pager_end_transaction(pPager, 0, 0);
pPager           43699 ext/sqlite3/libsqlite/sqlite3.c   pager_unlock(pPager);
pPager           43721 ext/sqlite3/libsqlite/sqlite3.c static u32 pager_cksum(Pager *pPager, const u8 *aData){
pPager           43722 ext/sqlite3/libsqlite/sqlite3.c   u32 cksum = pPager->cksumInit;         /* Checksum value to return */
pPager           43723 ext/sqlite3/libsqlite/sqlite3.c   int i = pPager->pageSize-200;          /* Loop counter */
pPager           43736 ext/sqlite3/libsqlite/sqlite3.c static void pagerReportSize(Pager *pPager){
pPager           43737 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->xCodecSizeChng ){
pPager           43738 ext/sqlite3/libsqlite/sqlite3.c     pPager->xCodecSizeChng(pPager->pCodec, pPager->pageSize,
pPager           43739 ext/sqlite3/libsqlite/sqlite3.c                            (int)pPager->nReserve);
pPager           43784 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager,                /* The pager being played back */
pPager           43803 ext/sqlite3/libsqlite/sqlite3.c   aData = pPager->pTmpSpace;
pPager           43805 ext/sqlite3/libsqlite/sqlite3.c   assert( pagerUseWal(pPager)==0 || (!isMainJrnl && isSavepnt) );
pPager           43813 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState>=PAGER_WRITER_CACHEMOD
pPager           43814 ext/sqlite3/libsqlite/sqlite3.c        || (pPager->eState==PAGER_OPEN && pPager->eLock==EXCLUSIVE_LOCK)
pPager           43816 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState>=PAGER_WRITER_CACHEMOD || isMainJrnl );
pPager           43821 ext/sqlite3/libsqlite/sqlite3.c   jfd = isMainJrnl ? pPager->jfd : pPager->sjfd;
pPager           43824 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3OsRead(jfd, (u8*)aData, pPager->pageSize, (*pOffset)+4);
pPager           43826 ext/sqlite3/libsqlite/sqlite3.c   *pOffset += pPager->pageSize + 4 + isMainJrnl*4;
pPager           43833 ext/sqlite3/libsqlite/sqlite3.c   if( pgno==0 || pgno==PAGER_MJ_PGNO(pPager) ){
pPager           43837 ext/sqlite3/libsqlite/sqlite3.c   if( pgno>(Pgno)pPager->dbSize || sqlite3BitvecTest(pDone, pgno) ){
pPager           43843 ext/sqlite3/libsqlite/sqlite3.c     if( !isSavepnt && pager_cksum(pPager, (u8*)aData)!=cksum ){
pPager           43857 ext/sqlite3/libsqlite/sqlite3.c   if( pgno==1 && pPager->nReserve!=((u8*)aData)[20] ){
pPager           43858 ext/sqlite3/libsqlite/sqlite3.c     pPager->nReserve = ((u8*)aData)[20];
pPager           43859 ext/sqlite3/libsqlite/sqlite3.c     pagerReportSize(pPager);
pPager           43897 ext/sqlite3/libsqlite/sqlite3.c   if( pagerUseWal(pPager) ){
pPager           43900 ext/sqlite3/libsqlite/sqlite3.c     pPg = sqlite3PagerLookup(pPager, pgno);
pPager           43903 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState!=PAGER_OPEN || pPg==0 );
pPager           43905 ext/sqlite3/libsqlite/sqlite3.c            PAGERID(pPager), pgno, pager_datahash(pPager->pageSize, (u8*)aData),
pPager           43909 ext/sqlite3/libsqlite/sqlite3.c     isSynced = pPager->noSync || (*pOffset <= pPager->journalHdr);
pPager           43913 ext/sqlite3/libsqlite/sqlite3.c   if( isOpen(pPager->fd)
pPager           43914 ext/sqlite3/libsqlite/sqlite3.c    && (pPager->eState>=PAGER_WRITER_DBMOD || pPager->eState==PAGER_OPEN)
pPager           43917 ext/sqlite3/libsqlite/sqlite3.c     i64 ofst = (pgno-1)*(i64)pPager->pageSize;
pPager           43919 ext/sqlite3/libsqlite/sqlite3.c     assert( !pagerUseWal(pPager) );
pPager           43920 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3OsWrite(pPager->fd, (u8 *)aData, pPager->pageSize, ofst);
pPager           43921 ext/sqlite3/libsqlite/sqlite3.c     if( pgno>pPager->dbFileSize ){
pPager           43922 ext/sqlite3/libsqlite/sqlite3.c       pPager->dbFileSize = pgno;
pPager           43924 ext/sqlite3/libsqlite/sqlite3.c     if( pPager->pBackup ){
pPager           43925 ext/sqlite3/libsqlite/sqlite3.c       CODEC1(pPager, aData, pgno, 3, rc=SQLITE_NOMEM);
pPager           43926 ext/sqlite3/libsqlite/sqlite3.c       sqlite3BackupUpdate(pPager->pBackup, pgno, (u8*)aData);
pPager           43927 ext/sqlite3/libsqlite/sqlite3.c       CODEC2(pPager, aData, pgno, 7, rc=SQLITE_NOMEM, aData);
pPager           43947 ext/sqlite3/libsqlite/sqlite3.c     assert( (pPager->doNotSpill & SPILLFLAG_ROLLBACK)==0 );
pPager           43948 ext/sqlite3/libsqlite/sqlite3.c     pPager->doNotSpill |= SPILLFLAG_ROLLBACK;
pPager           43949 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3PagerAcquire(pPager, pgno, &pPg, 1);
pPager           43950 ext/sqlite3/libsqlite/sqlite3.c     assert( (pPager->doNotSpill & SPILLFLAG_ROLLBACK)!=0 );
pPager           43951 ext/sqlite3/libsqlite/sqlite3.c     pPager->doNotSpill &= ~SPILLFLAG_ROLLBACK;
pPager           43965 ext/sqlite3/libsqlite/sqlite3.c     memcpy(pData, (u8*)aData, pPager->pageSize);
pPager           43966 ext/sqlite3/libsqlite/sqlite3.c     pPager->xReiniter(pPg);
pPager           43967 ext/sqlite3/libsqlite/sqlite3.c     if( isMainJrnl && (!isSavepnt || *pOffset<=pPager->journalHdr) ){
pPager           43987 ext/sqlite3/libsqlite/sqlite3.c       assert( !pagerUseWal(pPager) );
pPager           43995 ext/sqlite3/libsqlite/sqlite3.c       memcpy(&pPager->dbFileVers, &((u8*)pData)[24],sizeof(pPager->dbFileVers));
pPager           43999 ext/sqlite3/libsqlite/sqlite3.c     CODEC1(pPager, pData, pPg->pgno, 3, rc=SQLITE_NOMEM);
pPager           44048 ext/sqlite3/libsqlite/sqlite3.c static int pager_delmaster(Pager *pPager, const char *zMaster){
pPager           44049 ext/sqlite3/libsqlite/sqlite3.c   sqlite3_vfs *pVfs = pPager->pVfs;
pPager           44158 ext/sqlite3/libsqlite/sqlite3.c static int pager_truncate(Pager *pPager, Pgno nPage){
pPager           44160 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState!=PAGER_ERROR );
pPager           44161 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState!=PAGER_READER );
pPager           44163 ext/sqlite3/libsqlite/sqlite3.c   if( isOpen(pPager->fd) 
pPager           44164 ext/sqlite3/libsqlite/sqlite3.c    && (pPager->eState>=PAGER_WRITER_DBMOD || pPager->eState==PAGER_OPEN) 
pPager           44167 ext/sqlite3/libsqlite/sqlite3.c     int szPage = pPager->pageSize;
pPager           44168 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->eLock==EXCLUSIVE_LOCK );
pPager           44170 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3OsFileSize(pPager->fd, &currentSize);
pPager           44174 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3OsTruncate(pPager->fd, newSize);
pPager           44176 ext/sqlite3/libsqlite/sqlite3.c         char *pTmp = pPager->pTmpSpace;
pPager           44180 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3OsWrite(pPager->fd, pTmp, szPage, newSize-szPage);
pPager           44183 ext/sqlite3/libsqlite/sqlite3.c         pPager->dbFileSize = nPage;
pPager           44228 ext/sqlite3/libsqlite/sqlite3.c static void setSectorSize(Pager *pPager){
pPager           44229 ext/sqlite3/libsqlite/sqlite3.c   assert( isOpen(pPager->fd) || pPager->tempFile );
pPager           44231 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->tempFile
pPager           44232 ext/sqlite3/libsqlite/sqlite3.c    || (sqlite3OsDeviceCharacteristics(pPager->fd) & 
pPager           44238 ext/sqlite3/libsqlite/sqlite3.c     pPager->sectorSize = 512;
pPager           44240 ext/sqlite3/libsqlite/sqlite3.c     pPager->sectorSize = sqlite3SectorSize(pPager->fd);
pPager           44301 ext/sqlite3/libsqlite/sqlite3.c static int pager_playback(Pager *pPager, int isHot){
pPager           44302 ext/sqlite3/libsqlite/sqlite3.c   sqlite3_vfs *pVfs = pPager->pVfs;
pPager           44316 ext/sqlite3/libsqlite/sqlite3.c   assert( isOpen(pPager->jfd) );
pPager           44317 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3OsFileSize(pPager->jfd, &szJ);
pPager           44333 ext/sqlite3/libsqlite/sqlite3.c   zMaster = pPager->pTmpSpace;
pPager           44334 ext/sqlite3/libsqlite/sqlite3.c   rc = readMasterJournal(pPager->jfd, zMaster, pPager->pVfs->mxPathname+1);
pPager           44342 ext/sqlite3/libsqlite/sqlite3.c   pPager->journalOff = 0;
pPager           44355 ext/sqlite3/libsqlite/sqlite3.c     rc = readJournalHdr(pPager, isHot, szJ, &nRec, &mxPg);
pPager           44369 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->journalOff==JOURNAL_HDR_SZ(pPager) );
pPager           44370 ext/sqlite3/libsqlite/sqlite3.c       nRec = (int)((szJ - JOURNAL_HDR_SZ(pPager))/JOURNAL_PG_SZ(pPager));
pPager           44388 ext/sqlite3/libsqlite/sqlite3.c         pPager->journalHdr+JOURNAL_HDR_SZ(pPager)==pPager->journalOff ){
pPager           44389 ext/sqlite3/libsqlite/sqlite3.c       nRec = (int)((szJ - pPager->journalOff) / JOURNAL_PG_SZ(pPager));
pPager           44395 ext/sqlite3/libsqlite/sqlite3.c     if( pPager->journalOff==JOURNAL_HDR_SZ(pPager) ){
pPager           44396 ext/sqlite3/libsqlite/sqlite3.c       rc = pager_truncate(pPager, mxPg);
pPager           44400 ext/sqlite3/libsqlite/sqlite3.c       pPager->dbSize = mxPg;
pPager           44408 ext/sqlite3/libsqlite/sqlite3.c         pager_reset(pPager);
pPager           44411 ext/sqlite3/libsqlite/sqlite3.c       rc = pager_playback_one_page(pPager,&pPager->journalOff,0,1,0);
pPager           44416 ext/sqlite3/libsqlite/sqlite3.c           pPager->journalOff = szJ;
pPager           44447 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->fd->pMethods ){
pPager           44448 ext/sqlite3/libsqlite/sqlite3.c     sqlite3OsFileControlHint(pPager->fd,SQLITE_FCNTL_DB_UNCHANGED,0);
pPager           44461 ext/sqlite3/libsqlite/sqlite3.c   pPager->changeCountDone = pPager->tempFile;
pPager           44464 ext/sqlite3/libsqlite/sqlite3.c     zMaster = pPager->pTmpSpace;
pPager           44465 ext/sqlite3/libsqlite/sqlite3.c     rc = readMasterJournal(pPager->jfd, zMaster, pPager->pVfs->mxPathname+1);
pPager           44469 ext/sqlite3/libsqlite/sqlite3.c    && (pPager->eState>=PAGER_WRITER_DBMOD || pPager->eState==PAGER_OPEN)
pPager           44471 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3PagerSync(pPager, 0);
pPager           44474 ext/sqlite3/libsqlite/sqlite3.c     rc = pager_end_transaction(pPager, zMaster[0]!='\0', 0);
pPager           44481 ext/sqlite3/libsqlite/sqlite3.c     rc = pager_delmaster(pPager, zMaster);
pPager           44486 ext/sqlite3/libsqlite/sqlite3.c                 nPlayback, pPager->zJournal);
pPager           44493 ext/sqlite3/libsqlite/sqlite3.c   setSectorSize(pPager);
pPager           44510 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = pPg->pPager; /* Pager object associated with page pPg */
pPager           44513 ext/sqlite3/libsqlite/sqlite3.c   int pgsz = pPager->pageSize; /* Number of bytes to read */
pPager           44515 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState>=PAGER_READER && !MEMDB );
pPager           44516 ext/sqlite3/libsqlite/sqlite3.c   assert( isOpen(pPager->fd) );
pPager           44521 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3WalReadFrame(pPager->pWal, iFrame, pgsz, pPg->pData);
pPager           44525 ext/sqlite3/libsqlite/sqlite3.c     i64 iOffset = (pgno-1)*(i64)pPager->pageSize;
pPager           44526 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3OsRead(pPager->fd, pPg->pData, pgsz, iOffset);
pPager           44546 ext/sqlite3/libsqlite/sqlite3.c       memset(pPager->dbFileVers, 0xff, sizeof(pPager->dbFileVers));
pPager           44549 ext/sqlite3/libsqlite/sqlite3.c       memcpy(&pPager->dbFileVers, dbFileVers, sizeof(pPager->dbFileVers));
pPager           44552 ext/sqlite3/libsqlite/sqlite3.c   CODEC1(pPager, pPg->pData, pgno, 3, rc = SQLITE_NOMEM);
pPager           44555 ext/sqlite3/libsqlite/sqlite3.c   PAGER_INCR(pPager->nRead);
pPager           44556 ext/sqlite3/libsqlite/sqlite3.c   IOTRACE(("PGIN %p %d\n", pPager, pgno));
pPager           44558 ext/sqlite3/libsqlite/sqlite3.c                PAGERID(pPager), pgno, pager_pagehash(pPg)));
pPager           44575 ext/sqlite3/libsqlite/sqlite3.c   change_counter = sqlite3Get4byte((u8*)pPg->pPager->dbFileVers)+1;
pPager           44600 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = (Pager *)pCtx;
pPager           44603 ext/sqlite3/libsqlite/sqlite3.c   assert( pagerUseWal(pPager) );
pPager           44604 ext/sqlite3/libsqlite/sqlite3.c   pPg = sqlite3PagerLookup(pPager, iPg);
pPager           44610 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3WalFindFrame(pPager->pWal, pPg->pgno, &iFrame);
pPager           44615 ext/sqlite3/libsqlite/sqlite3.c         pPager->xReiniter(pPg);
pPager           44629 ext/sqlite3/libsqlite/sqlite3.c   sqlite3BackupRestart(pPager->pBackup);
pPager           44637 ext/sqlite3/libsqlite/sqlite3.c static int pagerRollbackWal(Pager *pPager){
pPager           44648 ext/sqlite3/libsqlite/sqlite3.c   pPager->dbSize = pPager->dbOrigSize;
pPager           44649 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3WalUndo(pPager->pWal, pagerUndoCallback, (void *)pPager);
pPager           44650 ext/sqlite3/libsqlite/sqlite3.c   pList = sqlite3PcacheDirtyList(pPager->pPCache);
pPager           44653 ext/sqlite3/libsqlite/sqlite3.c     rc = pagerUndoCallback((void *)pPager, pList->pgno);
pPager           44670 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager,                  /* Pager object */
pPager           44679 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->pWal );
pPager           44706 ext/sqlite3/libsqlite/sqlite3.c   pPager->aStat[PAGER_STAT_WRITE] += nList;
pPager           44709 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3WalFrames(pPager->pWal, 
pPager           44710 ext/sqlite3/libsqlite/sqlite3.c       pPager->pageSize, pList, nTruncate, isCommit, pPager->walSyncFlags
pPager           44712 ext/sqlite3/libsqlite/sqlite3.c   if( rc==SQLITE_OK && pPager->pBackup ){
pPager           44714 ext/sqlite3/libsqlite/sqlite3.c       sqlite3BackupUpdate(pPager->pBackup, p->pgno, (u8 *)p->pData);
pPager           44719 ext/sqlite3/libsqlite/sqlite3.c   pList = sqlite3PcacheDirtyList(pPager->pPCache);
pPager           44736 ext/sqlite3/libsqlite/sqlite3.c static int pagerBeginReadTransaction(Pager *pPager){
pPager           44740 ext/sqlite3/libsqlite/sqlite3.c   assert( pagerUseWal(pPager) );
pPager           44741 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_OPEN || pPager->eState==PAGER_READER );
pPager           44748 ext/sqlite3/libsqlite/sqlite3.c   sqlite3WalEndReadTransaction(pPager->pWal);
pPager           44750 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3WalBeginReadTransaction(pPager->pWal, &changed);
pPager           44752 ext/sqlite3/libsqlite/sqlite3.c     pager_reset(pPager);
pPager           44753 ext/sqlite3/libsqlite/sqlite3.c     if( USEFETCH(pPager) ) sqlite3OsUnfetch(pPager->fd, 0, 0);
pPager           44769 ext/sqlite3/libsqlite/sqlite3.c static int pagerPagecount(Pager *pPager, Pgno *pnPage){
pPager           44778 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_OPEN );
pPager           44779 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eLock>=SHARED_LOCK );
pPager           44780 ext/sqlite3/libsqlite/sqlite3.c   nPage = sqlite3WalDbsize(pPager->pWal);
pPager           44790 ext/sqlite3/libsqlite/sqlite3.c     assert( isOpen(pPager->fd) || pPager->tempFile );
pPager           44791 ext/sqlite3/libsqlite/sqlite3.c     if( isOpen(pPager->fd) ){
pPager           44792 ext/sqlite3/libsqlite/sqlite3.c       int rc = sqlite3OsFileSize(pPager->fd, &n);
pPager           44797 ext/sqlite3/libsqlite/sqlite3.c     nPage = (Pgno)((n+pPager->pageSize-1) / pPager->pageSize);
pPager           44804 ext/sqlite3/libsqlite/sqlite3.c   if( nPage>pPager->mxPgno ){
pPager           44805 ext/sqlite3/libsqlite/sqlite3.c     pPager->mxPgno = (Pgno)nPage;
pPager           44831 ext/sqlite3/libsqlite/sqlite3.c static int pagerOpenWalIfPresent(Pager *pPager){
pPager           44833 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_OPEN );
pPager           44834 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eLock>=SHARED_LOCK );
pPager           44836 ext/sqlite3/libsqlite/sqlite3.c   if( !pPager->tempFile ){
pPager           44840 ext/sqlite3/libsqlite/sqlite3.c     rc = pagerPagecount(pPager, &nPage);
pPager           44843 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3OsDelete(pPager->pVfs, pPager->zWal, 0);
pPager           44848 ext/sqlite3/libsqlite/sqlite3.c           pPager->pVfs, pPager->zWal, SQLITE_ACCESS_EXISTS, &isWal
pPager           44853 ext/sqlite3/libsqlite/sqlite3.c         testcase( sqlite3PcachePagecount(pPager->pPCache)==0 );
pPager           44854 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3PagerOpenWal(pPager, 0);
pPager           44855 ext/sqlite3/libsqlite/sqlite3.c       }else if( pPager->journalMode==PAGER_JOURNALMODE_WAL ){
pPager           44856 ext/sqlite3/libsqlite/sqlite3.c         pPager->journalMode = PAGER_JOURNALMODE_DELETE;
pPager           44900 ext/sqlite3/libsqlite/sqlite3.c static int pagerPlaybackSavepoint(Pager *pPager, PagerSavepoint *pSavepoint){
pPager           44906 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState!=PAGER_ERROR );
pPager           44907 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState>=PAGER_WRITER_LOCKED );
pPager           44920 ext/sqlite3/libsqlite/sqlite3.c   pPager->dbSize = pSavepoint ? pSavepoint->nOrig : pPager->dbOrigSize;
pPager           44921 ext/sqlite3/libsqlite/sqlite3.c   pPager->changeCountDone = pPager->tempFile;
pPager           44923 ext/sqlite3/libsqlite/sqlite3.c   if( !pSavepoint && pagerUseWal(pPager) ){
pPager           44924 ext/sqlite3/libsqlite/sqlite3.c     return pagerRollbackWal(pPager);
pPager           44932 ext/sqlite3/libsqlite/sqlite3.c   szJ = pPager->journalOff;
pPager           44933 ext/sqlite3/libsqlite/sqlite3.c   assert( pagerUseWal(pPager)==0 || szJ==0 );
pPager           44942 ext/sqlite3/libsqlite/sqlite3.c   if( pSavepoint && !pagerUseWal(pPager) ){
pPager           44944 ext/sqlite3/libsqlite/sqlite3.c     pPager->journalOff = pSavepoint->iOffset;
pPager           44945 ext/sqlite3/libsqlite/sqlite3.c     while( rc==SQLITE_OK && pPager->journalOff<iHdrOff ){
pPager           44946 ext/sqlite3/libsqlite/sqlite3.c       rc = pager_playback_one_page(pPager, &pPager->journalOff, pDone, 1, 1);
pPager           44950 ext/sqlite3/libsqlite/sqlite3.c     pPager->journalOff = 0;
pPager           44958 ext/sqlite3/libsqlite/sqlite3.c   while( rc==SQLITE_OK && pPager->journalOff<szJ ){
pPager           44962 ext/sqlite3/libsqlite/sqlite3.c     rc = readJournalHdr(pPager, 0, szJ, &nJRec, &dummy);
pPager           44971 ext/sqlite3/libsqlite/sqlite3.c      && pPager->journalHdr+JOURNAL_HDR_SZ(pPager)==pPager->journalOff
pPager           44973 ext/sqlite3/libsqlite/sqlite3.c       nJRec = (u32)((szJ - pPager->journalOff)/JOURNAL_PG_SZ(pPager));
pPager           44975 ext/sqlite3/libsqlite/sqlite3.c     for(ii=0; rc==SQLITE_OK && ii<nJRec && pPager->journalOff<szJ; ii++){
pPager           44976 ext/sqlite3/libsqlite/sqlite3.c       rc = pager_playback_one_page(pPager, &pPager->journalOff, pDone, 1, 1);
pPager           44980 ext/sqlite3/libsqlite/sqlite3.c   assert( rc!=SQLITE_OK || pPager->journalOff>=szJ );
pPager           44988 ext/sqlite3/libsqlite/sqlite3.c     i64 offset = (i64)pSavepoint->iSubRec*(4+pPager->pageSize);
pPager           44990 ext/sqlite3/libsqlite/sqlite3.c     if( pagerUseWal(pPager) ){
pPager           44991 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3WalSavepointUndo(pPager->pWal, pSavepoint->aWalData);
pPager           44993 ext/sqlite3/libsqlite/sqlite3.c     for(ii=pSavepoint->iSubRec; rc==SQLITE_OK && ii<pPager->nSubRec; ii++){
pPager           44994 ext/sqlite3/libsqlite/sqlite3.c       assert( offset==(i64)ii*(4+pPager->pageSize) );
pPager           44995 ext/sqlite3/libsqlite/sqlite3.c       rc = pager_playback_one_page(pPager, &offset, pDone, 0, 1);
pPager           45002 ext/sqlite3/libsqlite/sqlite3.c     pPager->journalOff = szJ;
pPager           45011 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE void sqlite3PagerSetCachesize(Pager *pPager, int mxPage){
pPager           45012 ext/sqlite3/libsqlite/sqlite3.c   sqlite3PcacheSetCachesize(pPager->pPCache, mxPage);
pPager           45018 ext/sqlite3/libsqlite/sqlite3.c static void pagerFixMaplimit(Pager *pPager){
pPager           45020 ext/sqlite3/libsqlite/sqlite3.c   sqlite3_file *fd = pPager->fd;
pPager           45023 ext/sqlite3/libsqlite/sqlite3.c     sz = pPager->szMmap;
pPager           45024 ext/sqlite3/libsqlite/sqlite3.c     pPager->bUseFetch = (sz>0);
pPager           45025 ext/sqlite3/libsqlite/sqlite3.c     sqlite3OsFileControlHint(pPager->fd, SQLITE_FCNTL_MMAP_SIZE, &sz);
pPager           45033 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE void sqlite3PagerSetMmapLimit(Pager *pPager, sqlite3_int64 szMmap){
pPager           45034 ext/sqlite3/libsqlite/sqlite3.c   pPager->szMmap = szMmap;
pPager           45035 ext/sqlite3/libsqlite/sqlite3.c   pagerFixMaplimit(pPager);
pPager           45041 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE void sqlite3PagerShrink(Pager *pPager){
pPager           45042 ext/sqlite3/libsqlite/sqlite3.c   sqlite3PcacheShrink(pPager->pPCache);
pPager           45093 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager,        /* The pager to set safety level for */
pPager           45098 ext/sqlite3/libsqlite/sqlite3.c   pPager->noSync =  (level==1 || pPager->tempFile) ?1:0;
pPager           45099 ext/sqlite3/libsqlite/sqlite3.c   pPager->fullSync = (level==3 && !pPager->tempFile) ?1:0;
pPager           45100 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->noSync ){
pPager           45101 ext/sqlite3/libsqlite/sqlite3.c     pPager->syncFlags = 0;
pPager           45102 ext/sqlite3/libsqlite/sqlite3.c     pPager->ckptSyncFlags = 0;
pPager           45104 ext/sqlite3/libsqlite/sqlite3.c     pPager->syncFlags = SQLITE_SYNC_FULL;
pPager           45105 ext/sqlite3/libsqlite/sqlite3.c     pPager->ckptSyncFlags = SQLITE_SYNC_FULL;
pPager           45107 ext/sqlite3/libsqlite/sqlite3.c     pPager->syncFlags = SQLITE_SYNC_NORMAL;
pPager           45108 ext/sqlite3/libsqlite/sqlite3.c     pPager->ckptSyncFlags = SQLITE_SYNC_FULL;
pPager           45110 ext/sqlite3/libsqlite/sqlite3.c     pPager->syncFlags = SQLITE_SYNC_NORMAL;
pPager           45111 ext/sqlite3/libsqlite/sqlite3.c     pPager->ckptSyncFlags = SQLITE_SYNC_NORMAL;
pPager           45113 ext/sqlite3/libsqlite/sqlite3.c   pPager->walSyncFlags = pPager->syncFlags;
pPager           45114 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->fullSync ){
pPager           45115 ext/sqlite3/libsqlite/sqlite3.c     pPager->walSyncFlags |= WAL_SYNC_TRANSACTIONS;
pPager           45118 ext/sqlite3/libsqlite/sqlite3.c     pPager->doNotSpill &= ~SPILLFLAG_OFF;
pPager           45120 ext/sqlite3/libsqlite/sqlite3.c     pPager->doNotSpill |= SPILLFLAG_OFF;
pPager           45150 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager,        /* The pager object */
pPager           45162 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3OsOpen(pPager->pVfs, 0, pFile, vfsFlags, 0);
pPager           45189 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager,                       /* Pager object */
pPager           45193 ext/sqlite3/libsqlite/sqlite3.c   pPager->xBusyHandler = xBusyHandler;
pPager           45194 ext/sqlite3/libsqlite/sqlite3.c   pPager->pBusyHandlerArg = pBusyHandlerArg;
pPager           45196 ext/sqlite3/libsqlite/sqlite3.c   if( isOpen(pPager->fd) ){
pPager           45197 ext/sqlite3/libsqlite/sqlite3.c     void **ap = (void **)&pPager->xBusyHandler;
pPager           45200 ext/sqlite3/libsqlite/sqlite3.c     sqlite3OsFileControlHint(pPager->fd, SQLITE_FCNTL_BUSYHANDLER, (void *)ap);
pPager           45234 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerSetPagesize(Pager *pPager, u32 *pPageSize, int nReserve){
pPager           45249 ext/sqlite3/libsqlite/sqlite3.c   if( (pPager->memDb==0 || pPager->dbSize==0)
pPager           45250 ext/sqlite3/libsqlite/sqlite3.c    && sqlite3PcacheRefCount(pPager->pPCache)==0 
pPager           45251 ext/sqlite3/libsqlite/sqlite3.c    && pageSize && pageSize!=(u32)pPager->pageSize 
pPager           45256 ext/sqlite3/libsqlite/sqlite3.c     if( pPager->eState>PAGER_OPEN && isOpen(pPager->fd) ){
pPager           45257 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3OsFileSize(pPager->fd, &nByte);
pPager           45265 ext/sqlite3/libsqlite/sqlite3.c       pager_reset(pPager);
pPager           45266 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3PcacheSetPageSize(pPager->pPCache, pageSize);
pPager           45269 ext/sqlite3/libsqlite/sqlite3.c       sqlite3PageFree(pPager->pTmpSpace);
pPager           45270 ext/sqlite3/libsqlite/sqlite3.c       pPager->pTmpSpace = pNew;
pPager           45271 ext/sqlite3/libsqlite/sqlite3.c       pPager->dbSize = (Pgno)((nByte+pageSize-1)/pageSize);
pPager           45272 ext/sqlite3/libsqlite/sqlite3.c       pPager->pageSize = pageSize;
pPager           45278 ext/sqlite3/libsqlite/sqlite3.c   *pPageSize = pPager->pageSize;
pPager           45280 ext/sqlite3/libsqlite/sqlite3.c     if( nReserve<0 ) nReserve = pPager->nReserve;
pPager           45282 ext/sqlite3/libsqlite/sqlite3.c     pPager->nReserve = (i16)nReserve;
pPager           45283 ext/sqlite3/libsqlite/sqlite3.c     pagerReportSize(pPager);
pPager           45284 ext/sqlite3/libsqlite/sqlite3.c     pagerFixMaplimit(pPager);
pPager           45297 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE void *sqlite3PagerTempSpace(Pager *pPager){
pPager           45298 ext/sqlite3/libsqlite/sqlite3.c   return pPager->pTmpSpace;
pPager           45308 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerMaxPageCount(Pager *pPager, int mxPage){
pPager           45310 ext/sqlite3/libsqlite/sqlite3.c     pPager->mxPgno = mxPage;
pPager           45312 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState!=PAGER_OPEN );      /* Called only by OP_MaxPgcnt */
pPager           45313 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->mxPgno>=pPager->dbSize );  /* OP_MaxPgcnt enforces this */
pPager           45314 ext/sqlite3/libsqlite/sqlite3.c   return pPager->mxPgno;
pPager           45355 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerReadFileheader(Pager *pPager, int N, unsigned char *pDest){
pPager           45358 ext/sqlite3/libsqlite/sqlite3.c   assert( isOpen(pPager->fd) || pPager->tempFile );
pPager           45364 ext/sqlite3/libsqlite/sqlite3.c   assert( !pagerUseWal(pPager) );
pPager           45366 ext/sqlite3/libsqlite/sqlite3.c   if( isOpen(pPager->fd) ){
pPager           45367 ext/sqlite3/libsqlite/sqlite3.c     IOTRACE(("DBHDR %p 0 %d\n", pPager, N))
pPager           45368 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3OsRead(pPager->fd, pDest, N, 0);
pPager           45383 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE void sqlite3PagerPagecount(Pager *pPager, int *pnPage){
pPager           45384 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState>=PAGER_READER );
pPager           45385 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState!=PAGER_WRITER_FINISHED );
pPager           45386 ext/sqlite3/libsqlite/sqlite3.c   *pnPage = (int)pPager->dbSize;
pPager           45404 ext/sqlite3/libsqlite/sqlite3.c static int pager_wait_on_lock(Pager *pPager, int locktype){
pPager           45412 ext/sqlite3/libsqlite/sqlite3.c   assert( (pPager->eLock>=locktype)
pPager           45413 ext/sqlite3/libsqlite/sqlite3.c        || (pPager->eLock==NO_LOCK && locktype==SHARED_LOCK)
pPager           45414 ext/sqlite3/libsqlite/sqlite3.c        || (pPager->eLock==RESERVED_LOCK && locktype==EXCLUSIVE_LOCK)
pPager           45418 ext/sqlite3/libsqlite/sqlite3.c     rc = pagerLockDb(pPager, locktype);
pPager           45419 ext/sqlite3/libsqlite/sqlite3.c   }while( rc==SQLITE_BUSY && pPager->xBusyHandler(pPager->pBusyHandlerArg) );
pPager           45448 ext/sqlite3/libsqlite/sqlite3.c   assert( !subjRequiresPage(pPg) || pPg->pgno<=pPg->pPager->dbSize );
pPager           45450 ext/sqlite3/libsqlite/sqlite3.c static void assertTruncateConstraint(Pager *pPager){
pPager           45451 ext/sqlite3/libsqlite/sqlite3.c   sqlite3PcacheIterateDirty(pPager->pPCache, assertTruncateConstraintCb);
pPager           45454 ext/sqlite3/libsqlite/sqlite3.c # define assertTruncateConstraint(pPager)
pPager           45468 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE void sqlite3PagerTruncateImage(Pager *pPager, Pgno nPage){
pPager           45469 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->dbSize>=nPage );
pPager           45470 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState>=PAGER_WRITER_CACHEMOD );
pPager           45471 ext/sqlite3/libsqlite/sqlite3.c   pPager->dbSize = nPage;
pPager           45499 ext/sqlite3/libsqlite/sqlite3.c static int pagerSyncHotJournal(Pager *pPager){
pPager           45501 ext/sqlite3/libsqlite/sqlite3.c   if( !pPager->noSync ){
pPager           45502 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3OsSync(pPager->jfd, SQLITE_SYNC_NORMAL);
pPager           45505 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3OsFileSize(pPager->jfd, &pPager->journalHdr);
pPager           45521 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager,                  /* Pager object */
pPager           45528 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->pMmapFreelist ){
pPager           45529 ext/sqlite3/libsqlite/sqlite3.c     *ppPage = p = pPager->pMmapFreelist;
pPager           45530 ext/sqlite3/libsqlite/sqlite3.c     pPager->pMmapFreelist = p->pDirty;
pPager           45532 ext/sqlite3/libsqlite/sqlite3.c     memset(p->pExtra, 0, pPager->nExtra);
pPager           45534 ext/sqlite3/libsqlite/sqlite3.c     *ppPage = p = (PgHdr *)sqlite3MallocZero(sizeof(PgHdr) + pPager->nExtra);
pPager           45536 ext/sqlite3/libsqlite/sqlite3.c       sqlite3OsUnfetch(pPager->fd, (i64)(pgno-1) * pPager->pageSize, pData);
pPager           45542 ext/sqlite3/libsqlite/sqlite3.c     p->pPager = pPager;
pPager           45548 ext/sqlite3/libsqlite/sqlite3.c   assert( p->pPager==pPager );
pPager           45553 ext/sqlite3/libsqlite/sqlite3.c   pPager->nMmapOut++;
pPager           45563 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = pPg->pPager;
pPager           45564 ext/sqlite3/libsqlite/sqlite3.c   pPager->nMmapOut--;
pPager           45565 ext/sqlite3/libsqlite/sqlite3.c   pPg->pDirty = pPager->pMmapFreelist;
pPager           45566 ext/sqlite3/libsqlite/sqlite3.c   pPager->pMmapFreelist = pPg;
pPager           45568 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->fd->pMethods->iVersion>=3 );
pPager           45569 ext/sqlite3/libsqlite/sqlite3.c   sqlite3OsUnfetch(pPager->fd, (i64)(pPg->pgno-1)*pPager->pageSize, pPg->pData);
pPager           45575 ext/sqlite3/libsqlite/sqlite3.c static void pagerFreeMapHdrs(Pager *pPager){
pPager           45578 ext/sqlite3/libsqlite/sqlite3.c   for(p=pPager->pMmapFreelist; p; p=pNext){
pPager           45599 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerClose(Pager *pPager){
pPager           45600 ext/sqlite3/libsqlite/sqlite3.c   u8 *pTmp = (u8 *)pPager->pTmpSpace;
pPager           45602 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           45605 ext/sqlite3/libsqlite/sqlite3.c   pagerFreeMapHdrs(pPager);
pPager           45607 ext/sqlite3/libsqlite/sqlite3.c   pPager->exclusiveMode = 0;
pPager           45609 ext/sqlite3/libsqlite/sqlite3.c   sqlite3WalClose(pPager->pWal, pPager->ckptSyncFlags, pPager->pageSize, pTmp);
pPager           45610 ext/sqlite3/libsqlite/sqlite3.c   pPager->pWal = 0;
pPager           45612 ext/sqlite3/libsqlite/sqlite3.c   pager_reset(pPager);
pPager           45614 ext/sqlite3/libsqlite/sqlite3.c     pager_unlock(pPager);
pPager           45627 ext/sqlite3/libsqlite/sqlite3.c     if( isOpen(pPager->jfd) ){
pPager           45628 ext/sqlite3/libsqlite/sqlite3.c       pager_error(pPager, pagerSyncHotJournal(pPager));
pPager           45630 ext/sqlite3/libsqlite/sqlite3.c     pagerUnlockAndRollback(pPager);
pPager           45634 ext/sqlite3/libsqlite/sqlite3.c   PAGERTRACE(("CLOSE %d\n", PAGERID(pPager)));
pPager           45635 ext/sqlite3/libsqlite/sqlite3.c   IOTRACE(("CLOSE %p\n", pPager))
pPager           45636 ext/sqlite3/libsqlite/sqlite3.c   sqlite3OsClose(pPager->jfd);
pPager           45637 ext/sqlite3/libsqlite/sqlite3.c   sqlite3OsClose(pPager->fd);
pPager           45639 ext/sqlite3/libsqlite/sqlite3.c   sqlite3PcacheClose(pPager->pPCache);
pPager           45642 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->xCodecFree ) pPager->xCodecFree(pPager->pCodec);
pPager           45645 ext/sqlite3/libsqlite/sqlite3.c   assert( !pPager->aSavepoint && !pPager->pInJournal );
pPager           45646 ext/sqlite3/libsqlite/sqlite3.c   assert( !isOpen(pPager->jfd) && !isOpen(pPager->sjfd) );
pPager           45648 ext/sqlite3/libsqlite/sqlite3.c   sqlite3_free(pPager);
pPager           45703 ext/sqlite3/libsqlite/sqlite3.c static int syncJournal(Pager *pPager, int newHdr){
pPager           45706 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_WRITER_CACHEMOD
pPager           45707 ext/sqlite3/libsqlite/sqlite3.c        || pPager->eState==PAGER_WRITER_DBMOD
pPager           45709 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           45710 ext/sqlite3/libsqlite/sqlite3.c   assert( !pagerUseWal(pPager) );
pPager           45712 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3PagerExclusiveLock(pPager);
pPager           45715 ext/sqlite3/libsqlite/sqlite3.c   if( !pPager->noSync ){
pPager           45716 ext/sqlite3/libsqlite/sqlite3.c     assert( !pPager->tempFile );
pPager           45717 ext/sqlite3/libsqlite/sqlite3.c     if( isOpen(pPager->jfd) && pPager->journalMode!=PAGER_JOURNALMODE_MEMORY ){
pPager           45718 ext/sqlite3/libsqlite/sqlite3.c       const int iDc = sqlite3OsDeviceCharacteristics(pPager->fd);
pPager           45719 ext/sqlite3/libsqlite/sqlite3.c       assert( isOpen(pPager->jfd) );
pPager           45749 ext/sqlite3/libsqlite/sqlite3.c         put32bits(&zHeader[sizeof(aJournalMagic)], pPager->nRec);
pPager           45751 ext/sqlite3/libsqlite/sqlite3.c         iNextHdrOffset = journalHdrOffset(pPager);
pPager           45752 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3OsRead(pPager->jfd, aMagic, 8, iNextHdrOffset);
pPager           45755 ext/sqlite3/libsqlite/sqlite3.c           rc = sqlite3OsWrite(pPager->jfd, &zerobyte, 1, iNextHdrOffset);
pPager           45772 ext/sqlite3/libsqlite/sqlite3.c         if( pPager->fullSync && 0==(iDc&SQLITE_IOCAP_SEQUENTIAL) ){
pPager           45773 ext/sqlite3/libsqlite/sqlite3.c           PAGERTRACE(("SYNC journal of %d\n", PAGERID(pPager)));
pPager           45774 ext/sqlite3/libsqlite/sqlite3.c           IOTRACE(("JSYNC %p\n", pPager))
pPager           45775 ext/sqlite3/libsqlite/sqlite3.c           rc = sqlite3OsSync(pPager->jfd, pPager->syncFlags);
pPager           45778 ext/sqlite3/libsqlite/sqlite3.c         IOTRACE(("JHDR %p %lld\n", pPager, pPager->journalHdr));
pPager           45780 ext/sqlite3/libsqlite/sqlite3.c             pPager->jfd, zHeader, sizeof(zHeader), pPager->journalHdr
pPager           45785 ext/sqlite3/libsqlite/sqlite3.c         PAGERTRACE(("SYNC journal of %d\n", PAGERID(pPager)));
pPager           45786 ext/sqlite3/libsqlite/sqlite3.c         IOTRACE(("JSYNC %p\n", pPager))
pPager           45787 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3OsSync(pPager->jfd, pPager->syncFlags| 
pPager           45788 ext/sqlite3/libsqlite/sqlite3.c           (pPager->syncFlags==SQLITE_SYNC_FULL?SQLITE_SYNC_DATAONLY:0)
pPager           45793 ext/sqlite3/libsqlite/sqlite3.c       pPager->journalHdr = pPager->journalOff;
pPager           45795 ext/sqlite3/libsqlite/sqlite3.c         pPager->nRec = 0;
pPager           45796 ext/sqlite3/libsqlite/sqlite3.c         rc = writeJournalHdr(pPager);
pPager           45800 ext/sqlite3/libsqlite/sqlite3.c       pPager->journalHdr = pPager->journalOff;
pPager           45808 ext/sqlite3/libsqlite/sqlite3.c   sqlite3PcacheClearSyncFlags(pPager->pPCache);
pPager           45809 ext/sqlite3/libsqlite/sqlite3.c   pPager->eState = PAGER_WRITER_DBMOD;
pPager           45810 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           45846 ext/sqlite3/libsqlite/sqlite3.c static int pager_write_pagelist(Pager *pPager, PgHdr *pList){
pPager           45850 ext/sqlite3/libsqlite/sqlite3.c   assert( !pagerUseWal(pPager) );
pPager           45851 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_WRITER_DBMOD );
pPager           45852 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eLock==EXCLUSIVE_LOCK );
pPager           45858 ext/sqlite3/libsqlite/sqlite3.c   if( !isOpen(pPager->fd) ){
pPager           45859 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->tempFile && rc==SQLITE_OK );
pPager           45860 ext/sqlite3/libsqlite/sqlite3.c     rc = pagerOpentemp(pPager, pPager->fd, pPager->vfsFlags);
pPager           45866 ext/sqlite3/libsqlite/sqlite3.c   assert( rc!=SQLITE_OK || isOpen(pPager->fd) );
pPager           45868 ext/sqlite3/libsqlite/sqlite3.c    && pPager->dbHintSize<pPager->dbSize
pPager           45869 ext/sqlite3/libsqlite/sqlite3.c    && (pList->pDirty || pList->pgno>pPager->dbHintSize)
pPager           45871 ext/sqlite3/libsqlite/sqlite3.c     sqlite3_int64 szFile = pPager->pageSize * (sqlite3_int64)pPager->dbSize;
pPager           45872 ext/sqlite3/libsqlite/sqlite3.c     sqlite3OsFileControlHint(pPager->fd, SQLITE_FCNTL_SIZE_HINT, &szFile);
pPager           45873 ext/sqlite3/libsqlite/sqlite3.c     pPager->dbHintSize = pPager->dbSize;
pPager           45887 ext/sqlite3/libsqlite/sqlite3.c     if( pgno<=pPager->dbSize && 0==(pList->flags&PGHDR_DONT_WRITE) ){
pPager           45888 ext/sqlite3/libsqlite/sqlite3.c       i64 offset = (pgno-1)*(i64)pPager->pageSize;   /* Offset to write */
pPager           45895 ext/sqlite3/libsqlite/sqlite3.c       CODEC2(pPager, pList->pData, pgno, 6, return SQLITE_NOMEM, pData);
pPager           45898 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3OsWrite(pPager->fd, pData, pPager->pageSize, offset);
pPager           45905 ext/sqlite3/libsqlite/sqlite3.c         memcpy(&pPager->dbFileVers, &pData[24], sizeof(pPager->dbFileVers));
pPager           45907 ext/sqlite3/libsqlite/sqlite3.c       if( pgno>pPager->dbFileSize ){
pPager           45908 ext/sqlite3/libsqlite/sqlite3.c         pPager->dbFileSize = pgno;
pPager           45910 ext/sqlite3/libsqlite/sqlite3.c       pPager->aStat[PAGER_STAT_WRITE]++;
pPager           45913 ext/sqlite3/libsqlite/sqlite3.c       sqlite3BackupUpdate(pPager->pBackup, pgno, (u8*)pList->pData);
pPager           45916 ext/sqlite3/libsqlite/sqlite3.c                    PAGERID(pPager), pgno, pager_pagehash(pList)));
pPager           45917 ext/sqlite3/libsqlite/sqlite3.c       IOTRACE(("PGOUT %p %d\n", pPager, pgno));
pPager           45920 ext/sqlite3/libsqlite/sqlite3.c       PAGERTRACE(("NOSTORE %d page %d\n", PAGERID(pPager), pgno));
pPager           45937 ext/sqlite3/libsqlite/sqlite3.c static int openSubJournal(Pager *pPager){
pPager           45939 ext/sqlite3/libsqlite/sqlite3.c   if( !isOpen(pPager->sjfd) ){
pPager           45940 ext/sqlite3/libsqlite/sqlite3.c     if( pPager->journalMode==PAGER_JOURNALMODE_MEMORY || pPager->subjInMemory ){
pPager           45941 ext/sqlite3/libsqlite/sqlite3.c       sqlite3MemJournalOpen(pPager->sjfd);
pPager           45943 ext/sqlite3/libsqlite/sqlite3.c       rc = pagerOpentemp(pPager, pPager->sjfd, SQLITE_OPEN_SUBJOURNAL);
pPager           45964 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = pPg->pPager;
pPager           45965 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->journalMode!=PAGER_JOURNALMODE_OFF ){
pPager           45968 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->useJournal );
pPager           45969 ext/sqlite3/libsqlite/sqlite3.c     assert( isOpen(pPager->jfd) || pagerUseWal(pPager) );
pPager           45970 ext/sqlite3/libsqlite/sqlite3.c     assert( isOpen(pPager->sjfd) || pPager->nSubRec==0 );
pPager           45971 ext/sqlite3/libsqlite/sqlite3.c     assert( pagerUseWal(pPager) 
pPager           45972 ext/sqlite3/libsqlite/sqlite3.c          || pageInJournal(pPager, pPg) 
pPager           45973 ext/sqlite3/libsqlite/sqlite3.c          || pPg->pgno>pPager->dbOrigSize 
pPager           45975 ext/sqlite3/libsqlite/sqlite3.c     rc = openSubJournal(pPager);
pPager           45981 ext/sqlite3/libsqlite/sqlite3.c       i64 offset = (i64)pPager->nSubRec*(4+pPager->pageSize);
pPager           45984 ext/sqlite3/libsqlite/sqlite3.c       CODEC2(pPager, pData, pPg->pgno, 7, return SQLITE_NOMEM, pData2);
pPager           45985 ext/sqlite3/libsqlite/sqlite3.c       PAGERTRACE(("STMT-JOURNAL %d page %d\n", PAGERID(pPager), pPg->pgno));
pPager           45986 ext/sqlite3/libsqlite/sqlite3.c       rc = write32bits(pPager->sjfd, offset, pPg->pgno);
pPager           45988 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3OsWrite(pPager->sjfd, pData2, pPager->pageSize, offset+4);
pPager           45993 ext/sqlite3/libsqlite/sqlite3.c     pPager->nSubRec++;
pPager           45994 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->nSavepoint>0 );
pPager           45995 ext/sqlite3/libsqlite/sqlite3.c     rc = addToSavepointBitvecs(pPager, pPg->pgno);
pPager           46020 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = (Pager *)p;
pPager           46023 ext/sqlite3/libsqlite/sqlite3.c   assert( pPg->pPager==pPager );
pPager           46042 ext/sqlite3/libsqlite/sqlite3.c   if( NEVER(pPager->errCode) ) return SQLITE_OK;
pPager           46043 ext/sqlite3/libsqlite/sqlite3.c   testcase( pPager->doNotSpill & SPILLFLAG_ROLLBACK );
pPager           46044 ext/sqlite3/libsqlite/sqlite3.c   testcase( pPager->doNotSpill & SPILLFLAG_OFF );
pPager           46045 ext/sqlite3/libsqlite/sqlite3.c   testcase( pPager->doNotSpill & SPILLFLAG_NOSYNC );
pPager           46046 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->doNotSpill
pPager           46047 ext/sqlite3/libsqlite/sqlite3.c    && ((pPager->doNotSpill & (SPILLFLAG_ROLLBACK|SPILLFLAG_OFF))!=0
pPager           46054 ext/sqlite3/libsqlite/sqlite3.c   if( pagerUseWal(pPager) ){
pPager           46060 ext/sqlite3/libsqlite/sqlite3.c       rc = pagerWalFrames(pPager, pPg, 0, 0);
pPager           46066 ext/sqlite3/libsqlite/sqlite3.c      || pPager->eState==PAGER_WRITER_CACHEMOD
pPager           46068 ext/sqlite3/libsqlite/sqlite3.c       rc = syncJournal(pPager, 1);
pPager           46099 ext/sqlite3/libsqlite/sqlite3.c         rc==SQLITE_OK && pPg->pgno>pPager->dbSize && subjRequiresPage(pPg)
pPager           46107 ext/sqlite3/libsqlite/sqlite3.c       rc = pager_write_pagelist(pPager, pPg);
pPager           46113 ext/sqlite3/libsqlite/sqlite3.c     PAGERTRACE(("STRESS %d page %d\n", PAGERID(pPager), pPg->pgno));
pPager           46117 ext/sqlite3/libsqlite/sqlite3.c   return pager_error(pPager, rc); 
pPager           46161 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = 0;       /* Pager object to allocate and return */
pPager           46253 ext/sqlite3/libsqlite/sqlite3.c     ROUND8(sizeof(*pPager)) +      /* Pager structure */
pPager           46268 ext/sqlite3/libsqlite/sqlite3.c   pPager =              (Pager*)(pPtr);
pPager           46269 ext/sqlite3/libsqlite/sqlite3.c   pPager->pPCache =    (PCache*)(pPtr += ROUND8(sizeof(*pPager)));
pPager           46270 ext/sqlite3/libsqlite/sqlite3.c   pPager->fd =   (sqlite3_file*)(pPtr += ROUND8(pcacheSize));
pPager           46271 ext/sqlite3/libsqlite/sqlite3.c   pPager->sjfd = (sqlite3_file*)(pPtr += ROUND8(pVfs->szOsFile));
pPager           46272 ext/sqlite3/libsqlite/sqlite3.c   pPager->jfd =  (sqlite3_file*)(pPtr += journalFileSize);
pPager           46273 ext/sqlite3/libsqlite/sqlite3.c   pPager->zFilename =    (char*)(pPtr += journalFileSize);
pPager           46274 ext/sqlite3/libsqlite/sqlite3.c   assert( EIGHT_BYTE_ALIGNMENT(pPager->jfd) );
pPager           46279 ext/sqlite3/libsqlite/sqlite3.c     pPager->zJournal =   (char*)(pPtr += nPathname + 1 + nUri);
pPager           46280 ext/sqlite3/libsqlite/sqlite3.c     memcpy(pPager->zFilename, zPathname, nPathname);
pPager           46281 ext/sqlite3/libsqlite/sqlite3.c     if( nUri ) memcpy(&pPager->zFilename[nPathname+1], zUri, nUri);
pPager           46282 ext/sqlite3/libsqlite/sqlite3.c     memcpy(pPager->zJournal, zPathname, nPathname);
pPager           46283 ext/sqlite3/libsqlite/sqlite3.c     memcpy(&pPager->zJournal[nPathname], "-journal\000", 8+2);
pPager           46284 ext/sqlite3/libsqlite/sqlite3.c     sqlite3FileSuffix3(pPager->zFilename, pPager->zJournal);
pPager           46286 ext/sqlite3/libsqlite/sqlite3.c     pPager->zWal = &pPager->zJournal[nPathname+8+1];
pPager           46287 ext/sqlite3/libsqlite/sqlite3.c     memcpy(pPager->zWal, zPathname, nPathname);
pPager           46288 ext/sqlite3/libsqlite/sqlite3.c     memcpy(&pPager->zWal[nPathname], "-wal\000", 4+1);
pPager           46289 ext/sqlite3/libsqlite/sqlite3.c     sqlite3FileSuffix3(pPager->zFilename, pPager->zWal);
pPager           46293 ext/sqlite3/libsqlite/sqlite3.c   pPager->pVfs = pVfs;
pPager           46294 ext/sqlite3/libsqlite/sqlite3.c   pPager->vfsFlags = vfsFlags;
pPager           46300 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3OsOpen(pVfs, pPager->zFilename, pPager->fd, vfsFlags, &fout);
pPager           46313 ext/sqlite3/libsqlite/sqlite3.c       int iDc = sqlite3OsDeviceCharacteristics(pPager->fd);
pPager           46315 ext/sqlite3/libsqlite/sqlite3.c         setSectorSize(pPager);
pPager           46317 ext/sqlite3/libsqlite/sqlite3.c         if( szPageDflt<pPager->sectorSize ){
pPager           46318 ext/sqlite3/libsqlite/sqlite3.c           if( pPager->sectorSize>SQLITE_MAX_DEFAULT_PAGE_SIZE ){
pPager           46321 ext/sqlite3/libsqlite/sqlite3.c             szPageDflt = (u32)pPager->sectorSize;
pPager           46338 ext/sqlite3/libsqlite/sqlite3.c       pPager->noLock = sqlite3_uri_boolean(zFilename, "nolock", 0);
pPager           46358 ext/sqlite3/libsqlite/sqlite3.c     pPager->eState = PAGER_READER;     /* Pretend we already have a lock */
pPager           46359 ext/sqlite3/libsqlite/sqlite3.c     pPager->eLock = EXCLUSIVE_LOCK;    /* Pretend we are in EXCLUSIVE locking mode */
pPager           46360 ext/sqlite3/libsqlite/sqlite3.c     pPager->noLock = 1;                /* Do no locking */
pPager           46368 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->memDb==0 );
pPager           46369 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3PagerSetPagesize(pPager, &szPageDflt, -1);
pPager           46378 ext/sqlite3/libsqlite/sqlite3.c                            !memDb?pagerStress:0, (void *)pPager, pPager->pPCache);
pPager           46384 ext/sqlite3/libsqlite/sqlite3.c     sqlite3OsClose(pPager->fd);
pPager           46385 ext/sqlite3/libsqlite/sqlite3.c     sqlite3PageFree(pPager->pTmpSpace);
pPager           46386 ext/sqlite3/libsqlite/sqlite3.c     sqlite3_free(pPager);
pPager           46390 ext/sqlite3/libsqlite/sqlite3.c   PAGERTRACE(("OPEN %d %s\n", FILEHANDLEID(pPager->fd), pPager->zFilename));
pPager           46391 ext/sqlite3/libsqlite/sqlite3.c   IOTRACE(("OPEN %p %s\n", pPager, pPager->zFilename))
pPager           46393 ext/sqlite3/libsqlite/sqlite3.c   pPager->useJournal = (u8)useJournal;
pPager           46400 ext/sqlite3/libsqlite/sqlite3.c   pPager->mxPgno = SQLITE_MAX_PAGE_COUNT;
pPager           46403 ext/sqlite3/libsqlite/sqlite3.c   pPager->tempFile = (u8)tempFile;
pPager           46407 ext/sqlite3/libsqlite/sqlite3.c   pPager->exclusiveMode = (u8)tempFile; 
pPager           46408 ext/sqlite3/libsqlite/sqlite3.c   pPager->changeCountDone = pPager->tempFile;
pPager           46409 ext/sqlite3/libsqlite/sqlite3.c   pPager->memDb = (u8)memDb;
pPager           46410 ext/sqlite3/libsqlite/sqlite3.c   pPager->readOnly = (u8)readOnly;
pPager           46411 ext/sqlite3/libsqlite/sqlite3.c   assert( useJournal || pPager->tempFile );
pPager           46412 ext/sqlite3/libsqlite/sqlite3.c   pPager->noSync = pPager->tempFile;
pPager           46413 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->noSync ){
pPager           46414 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->fullSync==0 );
pPager           46415 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->syncFlags==0 );
pPager           46416 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->walSyncFlags==0 );
pPager           46417 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->ckptSyncFlags==0 );
pPager           46419 ext/sqlite3/libsqlite/sqlite3.c     pPager->fullSync = 1;
pPager           46420 ext/sqlite3/libsqlite/sqlite3.c     pPager->syncFlags = SQLITE_SYNC_NORMAL;
pPager           46421 ext/sqlite3/libsqlite/sqlite3.c     pPager->walSyncFlags = SQLITE_SYNC_NORMAL | WAL_SYNC_TRANSACTIONS;
pPager           46422 ext/sqlite3/libsqlite/sqlite3.c     pPager->ckptSyncFlags = SQLITE_SYNC_NORMAL;
pPager           46427 ext/sqlite3/libsqlite/sqlite3.c   pPager->nExtra = (u16)nExtra;
pPager           46428 ext/sqlite3/libsqlite/sqlite3.c   pPager->journalSizeLimit = SQLITE_DEFAULT_JOURNAL_SIZE_LIMIT;
pPager           46429 ext/sqlite3/libsqlite/sqlite3.c   assert( isOpen(pPager->fd) || tempFile );
pPager           46430 ext/sqlite3/libsqlite/sqlite3.c   setSectorSize(pPager);
pPager           46432 ext/sqlite3/libsqlite/sqlite3.c     pPager->journalMode = PAGER_JOURNALMODE_OFF;
pPager           46434 ext/sqlite3/libsqlite/sqlite3.c     pPager->journalMode = PAGER_JOURNALMODE_MEMORY;
pPager           46438 ext/sqlite3/libsqlite/sqlite3.c   pPager->xReiniter = xReinit;
pPager           46442 ext/sqlite3/libsqlite/sqlite3.c   *ppPager = pPager;
pPager           46452 ext/sqlite3/libsqlite/sqlite3.c static int databaseIsUnmoved(Pager *pPager){
pPager           46456 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->tempFile ) return SQLITE_OK;
pPager           46457 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->dbSize==0 ) return SQLITE_OK;
pPager           46458 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->zFilename && pPager->zFilename[0] );
pPager           46459 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3OsFileControl(pPager->fd, SQLITE_FCNTL_HAS_MOVED, &bHasMoved);
pPager           46503 ext/sqlite3/libsqlite/sqlite3.c static int hasHotJournal(Pager *pPager, int *pExists){
pPager           46504 ext/sqlite3/libsqlite/sqlite3.c   sqlite3_vfs * const pVfs = pPager->pVfs;
pPager           46507 ext/sqlite3/libsqlite/sqlite3.c   int jrnlOpen = !!isOpen(pPager->jfd);
pPager           46509 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->useJournal );
pPager           46510 ext/sqlite3/libsqlite/sqlite3.c   assert( isOpen(pPager->fd) );
pPager           46511 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_OPEN );
pPager           46513 ext/sqlite3/libsqlite/sqlite3.c   assert( jrnlOpen==0 || ( sqlite3OsDeviceCharacteristics(pPager->jfd) &
pPager           46519 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3OsAccess(pVfs, pPager->zJournal, SQLITE_ACCESS_EXISTS, &exists);
pPager           46532 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3OsCheckReservedLock(pPager->fd, &locked);
pPager           46536 ext/sqlite3/libsqlite/sqlite3.c       rc = pagerPagecount(pPager, &nPage);
pPager           46548 ext/sqlite3/libsqlite/sqlite3.c           if( pagerLockDb(pPager, RESERVED_LOCK)==SQLITE_OK ){
pPager           46549 ext/sqlite3/libsqlite/sqlite3.c             sqlite3OsDelete(pVfs, pPager->zJournal, 0);
pPager           46550 ext/sqlite3/libsqlite/sqlite3.c             if( !pPager->exclusiveMode ) pagerUnlockDb(pPager, SHARED_LOCK);
pPager           46562 ext/sqlite3/libsqlite/sqlite3.c             rc = sqlite3OsOpen(pVfs, pPager->zJournal, pPager->jfd, f, &f);
pPager           46566 ext/sqlite3/libsqlite/sqlite3.c             rc = sqlite3OsRead(pPager->jfd, (void *)&first, 1, 0);
pPager           46571 ext/sqlite3/libsqlite/sqlite3.c               sqlite3OsClose(pPager->jfd);
pPager           46622 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerSharedLock(Pager *pPager){
pPager           46630 ext/sqlite3/libsqlite/sqlite3.c   assert( sqlite3PcacheRefCount(pPager->pPCache)==0 );
pPager           46631 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           46632 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_OPEN || pPager->eState==PAGER_READER );
pPager           46633 ext/sqlite3/libsqlite/sqlite3.c   if( NEVER(MEMDB && pPager->errCode) ){ return pPager->errCode; }
pPager           46635 ext/sqlite3/libsqlite/sqlite3.c   if( !pagerUseWal(pPager) && pPager->eState==PAGER_OPEN ){
pPager           46640 ext/sqlite3/libsqlite/sqlite3.c     rc = pager_wait_on_lock(pPager, SHARED_LOCK);
pPager           46642 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->eLock==NO_LOCK || pPager->eLock==UNKNOWN_LOCK );
pPager           46649 ext/sqlite3/libsqlite/sqlite3.c     if( pPager->eLock<=SHARED_LOCK ){
pPager           46650 ext/sqlite3/libsqlite/sqlite3.c       rc = hasHotJournal(pPager, &bHotJournal);
pPager           46656 ext/sqlite3/libsqlite/sqlite3.c       if( pPager->readOnly ){
pPager           46676 ext/sqlite3/libsqlite/sqlite3.c       rc = pagerLockDb(pPager, EXCLUSIVE_LOCK);
pPager           46694 ext/sqlite3/libsqlite/sqlite3.c       if( !isOpen(pPager->jfd) ){
pPager           46695 ext/sqlite3/libsqlite/sqlite3.c         sqlite3_vfs * const pVfs = pPager->pVfs;
pPager           46698 ext/sqlite3/libsqlite/sqlite3.c             pVfs, pPager->zJournal, SQLITE_ACCESS_EXISTS, &bExists);
pPager           46702 ext/sqlite3/libsqlite/sqlite3.c           assert( !pPager->tempFile );
pPager           46703 ext/sqlite3/libsqlite/sqlite3.c           rc = sqlite3OsOpen(pVfs, pPager->zJournal, pPager->jfd, f, &fout);
pPager           46704 ext/sqlite3/libsqlite/sqlite3.c           assert( rc!=SQLITE_OK || isOpen(pPager->jfd) );
pPager           46707 ext/sqlite3/libsqlite/sqlite3.c             sqlite3OsClose(pPager->jfd);
pPager           46720 ext/sqlite3/libsqlite/sqlite3.c       if( isOpen(pPager->jfd) ){
pPager           46722 ext/sqlite3/libsqlite/sqlite3.c         rc = pagerSyncHotJournal(pPager);
pPager           46724 ext/sqlite3/libsqlite/sqlite3.c           rc = pager_playback(pPager, 1);
pPager           46725 ext/sqlite3/libsqlite/sqlite3.c           pPager->eState = PAGER_OPEN;
pPager           46727 ext/sqlite3/libsqlite/sqlite3.c       }else if( !pPager->exclusiveMode ){
pPager           46728 ext/sqlite3/libsqlite/sqlite3.c         pagerUnlockDb(pPager, SHARED_LOCK);
pPager           46748 ext/sqlite3/libsqlite/sqlite3.c         pager_error(pPager, rc);
pPager           46752 ext/sqlite3/libsqlite/sqlite3.c       assert( pPager->eState==PAGER_OPEN );
pPager           46753 ext/sqlite3/libsqlite/sqlite3.c       assert( (pPager->eLock==SHARED_LOCK)
pPager           46754 ext/sqlite3/libsqlite/sqlite3.c            || (pPager->exclusiveMode && pPager->eLock>SHARED_LOCK)
pPager           46758 ext/sqlite3/libsqlite/sqlite3.c     if( !pPager->tempFile && pPager->hasBeenUsed ){
pPager           46776 ext/sqlite3/libsqlite/sqlite3.c       char dbFileVers[sizeof(pPager->dbFileVers)];
pPager           46778 ext/sqlite3/libsqlite/sqlite3.c       rc = pagerPagecount(pPager, &nPage);
pPager           46782 ext/sqlite3/libsqlite/sqlite3.c         IOTRACE(("CKVERS %p %d\n", pPager, sizeof(dbFileVers)));
pPager           46783 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3OsRead(pPager->fd, &dbFileVers, sizeof(dbFileVers), 24);
pPager           46791 ext/sqlite3/libsqlite/sqlite3.c       if( memcmp(pPager->dbFileVers, dbFileVers, sizeof(dbFileVers))!=0 ){
pPager           46792 ext/sqlite3/libsqlite/sqlite3.c         pager_reset(pPager);
pPager           46800 ext/sqlite3/libsqlite/sqlite3.c         if( USEFETCH(pPager) ){
pPager           46801 ext/sqlite3/libsqlite/sqlite3.c           sqlite3OsUnfetch(pPager->fd, 0, 0);
pPager           46809 ext/sqlite3/libsqlite/sqlite3.c     rc = pagerOpenWalIfPresent(pPager);
pPager           46811 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->pWal==0 || rc==SQLITE_OK );
pPager           46815 ext/sqlite3/libsqlite/sqlite3.c   if( pagerUseWal(pPager) ){
pPager           46817 ext/sqlite3/libsqlite/sqlite3.c     rc = pagerBeginReadTransaction(pPager);
pPager           46820 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->eState==PAGER_OPEN && rc==SQLITE_OK ){
pPager           46821 ext/sqlite3/libsqlite/sqlite3.c     rc = pagerPagecount(pPager, &pPager->dbSize);
pPager           46827 ext/sqlite3/libsqlite/sqlite3.c     pager_unlock(pPager);
pPager           46828 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->eState==PAGER_OPEN );
pPager           46830 ext/sqlite3/libsqlite/sqlite3.c     pPager->eState = PAGER_READER;
pPager           46843 ext/sqlite3/libsqlite/sqlite3.c static void pagerUnlockIfUnused(Pager *pPager){
pPager           46844 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->nMmapOut==0 && (sqlite3PcacheRefCount(pPager->pPCache)==0) ){
pPager           46845 ext/sqlite3/libsqlite/sqlite3.c     pagerUnlockAndRollback(pPager);
pPager           46900 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager,      /* The pager open on the database file */
pPager           46914 ext/sqlite3/libsqlite/sqlite3.c   const int bMmapOk = (pgno!=1 && USEFETCH(pPager)
pPager           46915 ext/sqlite3/libsqlite/sqlite3.c    && (pPager->eState==PAGER_READER || (flags & PAGER_GET_READONLY))
pPager           46917 ext/sqlite3/libsqlite/sqlite3.c    && pPager->xCodec==0
pPager           46921 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState>=PAGER_READER );
pPager           46922 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           46928 ext/sqlite3/libsqlite/sqlite3.c   pPager->hasBeenUsed = 1;
pPager           46932 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->errCode!=SQLITE_OK ){
pPager           46933 ext/sqlite3/libsqlite/sqlite3.c     rc = pPager->errCode;
pPager           46935 ext/sqlite3/libsqlite/sqlite3.c     if( bMmapOk && pagerUseWal(pPager) ){
pPager           46936 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3WalFindFrame(pPager->pWal, pgno, &iFrame);
pPager           46943 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3OsFetch(pPager->fd, 
pPager           46944 ext/sqlite3/libsqlite/sqlite3.c           (i64)(pgno-1) * pPager->pageSize, pPager->pageSize, &pData
pPager           46948 ext/sqlite3/libsqlite/sqlite3.c         if( pPager->eState>PAGER_READER ){
pPager           46949 ext/sqlite3/libsqlite/sqlite3.c           pPg = sqlite3PagerLookup(pPager, pgno);
pPager           46952 ext/sqlite3/libsqlite/sqlite3.c           rc = pagerAcquireMapPage(pPager, pgno, pData, &pPg);
pPager           46954 ext/sqlite3/libsqlite/sqlite3.c           sqlite3OsUnfetch(pPager->fd, (i64)(pgno-1)*pPager->pageSize, pData);
pPager           46969 ext/sqlite3/libsqlite/sqlite3.c       pBase = sqlite3PcacheFetch(pPager->pPCache, pgno, 3);
pPager           46971 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3PcacheFetchStress(pPager->pPCache, pgno, &pBase);
pPager           46974 ext/sqlite3/libsqlite/sqlite3.c       pPg = *ppPage = sqlite3PcacheFetchFinish(pPager->pPCache, pgno, pBase);
pPager           46987 ext/sqlite3/libsqlite/sqlite3.c   assert( (*ppPage)->pPager==pPager || (*ppPage)->pPager==0 );
pPager           46989 ext/sqlite3/libsqlite/sqlite3.c   if( (*ppPage)->pPager && !noContent ){
pPager           46992 ext/sqlite3/libsqlite/sqlite3.c     assert( pgno<=PAGER_MAX_PGNO && pgno!=PAGER_MJ_PGNO(pPager) );
pPager           46993 ext/sqlite3/libsqlite/sqlite3.c     pPager->aStat[PAGER_STAT_HIT]++;
pPager           47001 ext/sqlite3/libsqlite/sqlite3.c     pPg->pPager = pPager;
pPager           47005 ext/sqlite3/libsqlite/sqlite3.c     if( pgno>PAGER_MAX_PGNO || pgno==PAGER_MJ_PGNO(pPager) ){
pPager           47010 ext/sqlite3/libsqlite/sqlite3.c     if( MEMDB || pPager->dbSize<pgno || noContent || !isOpen(pPager->fd) ){
pPager           47011 ext/sqlite3/libsqlite/sqlite3.c       if( pgno>pPager->mxPgno ){
pPager           47023 ext/sqlite3/libsqlite/sqlite3.c         if( pgno<=pPager->dbOrigSize ){
pPager           47024 ext/sqlite3/libsqlite/sqlite3.c           TESTONLY( rc = ) sqlite3BitvecSet(pPager->pInJournal, pgno);
pPager           47027 ext/sqlite3/libsqlite/sqlite3.c         TESTONLY( rc = ) addToSavepointBitvecs(pPager, pgno);
pPager           47031 ext/sqlite3/libsqlite/sqlite3.c       memset(pPg->pData, 0, pPager->pageSize);
pPager           47032 ext/sqlite3/libsqlite/sqlite3.c       IOTRACE(("ZERO %p %d\n", pPager, pgno));
pPager           47034 ext/sqlite3/libsqlite/sqlite3.c       if( pagerUseWal(pPager) && bMmapOk==0 ){
pPager           47035 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3WalFindFrame(pPager->pWal, pgno, &iFrame);
pPager           47038 ext/sqlite3/libsqlite/sqlite3.c       assert( pPg->pPager==pPager );
pPager           47039 ext/sqlite3/libsqlite/sqlite3.c       pPager->aStat[PAGER_STAT_MISS]++;
pPager           47055 ext/sqlite3/libsqlite/sqlite3.c   pagerUnlockIfUnused(pPager);
pPager           47072 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE DbPage *sqlite3PagerLookup(Pager *pPager, Pgno pgno){
pPager           47074 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager!=0 );
pPager           47076 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->pPCache!=0 );
pPager           47077 ext/sqlite3/libsqlite/sqlite3.c   pPage = sqlite3PcacheFetch(pPager->pPCache, pgno, 0);
pPager           47078 ext/sqlite3/libsqlite/sqlite3.c   assert( pPage==0 || pPager->hasBeenUsed );
pPager           47079 ext/sqlite3/libsqlite/sqlite3.c   return sqlite3PcacheFetchFinish(pPager->pPCache, pgno, pPage);
pPager           47091 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager;
pPager           47093 ext/sqlite3/libsqlite/sqlite3.c   pPager = pPg->pPager;
pPager           47099 ext/sqlite3/libsqlite/sqlite3.c   pagerUnlockIfUnused(pPager);
pPager           47127 ext/sqlite3/libsqlite/sqlite3.c static int pager_open_journal(Pager *pPager){
pPager           47129 ext/sqlite3/libsqlite/sqlite3.c   sqlite3_vfs * const pVfs = pPager->pVfs;   /* Local cache of vfs pointer */
pPager           47131 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_WRITER_LOCKED );
pPager           47132 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           47133 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->pInJournal==0 );
pPager           47138 ext/sqlite3/libsqlite/sqlite3.c   if( NEVER(pPager->errCode) ) return pPager->errCode;
pPager           47140 ext/sqlite3/libsqlite/sqlite3.c   if( !pagerUseWal(pPager) && pPager->journalMode!=PAGER_JOURNALMODE_OFF ){
pPager           47141 ext/sqlite3/libsqlite/sqlite3.c     pPager->pInJournal = sqlite3BitvecCreate(pPager->dbSize);
pPager           47142 ext/sqlite3/libsqlite/sqlite3.c     if( pPager->pInJournal==0 ){
pPager           47147 ext/sqlite3/libsqlite/sqlite3.c     if( !isOpen(pPager->jfd) ){
pPager           47148 ext/sqlite3/libsqlite/sqlite3.c       if( pPager->journalMode==PAGER_JOURNALMODE_MEMORY ){
pPager           47149 ext/sqlite3/libsqlite/sqlite3.c         sqlite3MemJournalOpen(pPager->jfd);
pPager           47153 ext/sqlite3/libsqlite/sqlite3.c           (pPager->tempFile ? 
pPager           47160 ext/sqlite3/libsqlite/sqlite3.c         rc = databaseIsUnmoved(pPager);
pPager           47164 ext/sqlite3/libsqlite/sqlite3.c               pVfs, pPager->zJournal, pPager->jfd, flags, jrnlBufferSize(pPager)
pPager           47167 ext/sqlite3/libsqlite/sqlite3.c           rc = sqlite3OsOpen(pVfs, pPager->zJournal, pPager->jfd, flags, 0);
pPager           47171 ext/sqlite3/libsqlite/sqlite3.c       assert( rc!=SQLITE_OK || isOpen(pPager->jfd) );
pPager           47180 ext/sqlite3/libsqlite/sqlite3.c       pPager->nRec = 0;
pPager           47181 ext/sqlite3/libsqlite/sqlite3.c       pPager->journalOff = 0;
pPager           47182 ext/sqlite3/libsqlite/sqlite3.c       pPager->setMaster = 0;
pPager           47183 ext/sqlite3/libsqlite/sqlite3.c       pPager->journalHdr = 0;
pPager           47184 ext/sqlite3/libsqlite/sqlite3.c       rc = writeJournalHdr(pPager);
pPager           47189 ext/sqlite3/libsqlite/sqlite3.c     sqlite3BitvecDestroy(pPager->pInJournal);
pPager           47190 ext/sqlite3/libsqlite/sqlite3.c     pPager->pInJournal = 0;
pPager           47192 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->eState==PAGER_WRITER_LOCKED );
pPager           47193 ext/sqlite3/libsqlite/sqlite3.c     pPager->eState = PAGER_WRITER_CACHEMOD;
pPager           47216 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerBegin(Pager *pPager, int exFlag, int subjInMemory){
pPager           47219 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->errCode ) return pPager->errCode;
pPager           47220 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState>=PAGER_READER && pPager->eState<PAGER_ERROR );
pPager           47221 ext/sqlite3/libsqlite/sqlite3.c   pPager->subjInMemory = (u8)subjInMemory;
pPager           47223 ext/sqlite3/libsqlite/sqlite3.c   if( ALWAYS(pPager->eState==PAGER_READER) ){
pPager           47224 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->pInJournal==0 );
pPager           47226 ext/sqlite3/libsqlite/sqlite3.c     if( pagerUseWal(pPager) ){
pPager           47230 ext/sqlite3/libsqlite/sqlite3.c       if( pPager->exclusiveMode && sqlite3WalExclusiveMode(pPager->pWal, -1) ){
pPager           47231 ext/sqlite3/libsqlite/sqlite3.c         rc = pagerLockDb(pPager, EXCLUSIVE_LOCK);
pPager           47235 ext/sqlite3/libsqlite/sqlite3.c         sqlite3WalExclusiveMode(pPager->pWal, 1);
pPager           47243 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3WalBeginWriteTransaction(pPager->pWal);
pPager           47250 ext/sqlite3/libsqlite/sqlite3.c       rc = pagerLockDb(pPager, RESERVED_LOCK);
pPager           47252 ext/sqlite3/libsqlite/sqlite3.c         rc = pager_wait_on_lock(pPager, EXCLUSIVE_LOCK);
pPager           47266 ext/sqlite3/libsqlite/sqlite3.c       pPager->eState = PAGER_WRITER_LOCKED;
pPager           47267 ext/sqlite3/libsqlite/sqlite3.c       pPager->dbHintSize = pPager->dbSize;
pPager           47268 ext/sqlite3/libsqlite/sqlite3.c       pPager->dbFileSize = pPager->dbSize;
pPager           47269 ext/sqlite3/libsqlite/sqlite3.c       pPager->dbOrigSize = pPager->dbSize;
pPager           47270 ext/sqlite3/libsqlite/sqlite3.c       pPager->journalOff = 0;
pPager           47273 ext/sqlite3/libsqlite/sqlite3.c     assert( rc==SQLITE_OK || pPager->eState==PAGER_READER );
pPager           47274 ext/sqlite3/libsqlite/sqlite3.c     assert( rc!=SQLITE_OK || pPager->eState==PAGER_WRITER_LOCKED );
pPager           47275 ext/sqlite3/libsqlite/sqlite3.c     assert( assert_pager_state(pPager) );
pPager           47278 ext/sqlite3/libsqlite/sqlite3.c   PAGERTRACE(("TRANSACTION %d\n", PAGERID(pPager)));
pPager           47290 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = pPg->pPager;
pPager           47298 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_WRITER_LOCKED
pPager           47299 ext/sqlite3/libsqlite/sqlite3.c        || pPager->eState==PAGER_WRITER_CACHEMOD
pPager           47300 ext/sqlite3/libsqlite/sqlite3.c        || pPager->eState==PAGER_WRITER_DBMOD
pPager           47302 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           47303 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->errCode==0 );
pPager           47304 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->readOnly==0 );
pPager           47317 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->eState==PAGER_WRITER_LOCKED ){
pPager           47318 ext/sqlite3/libsqlite/sqlite3.c     rc = pager_open_journal(pPager);
pPager           47321 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState>=PAGER_WRITER_CACHEMOD );
pPager           47322 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           47328 ext/sqlite3/libsqlite/sqlite3.c   inJournal = pageInJournal(pPager, pPg);
pPager           47329 ext/sqlite3/libsqlite/sqlite3.c   if( inJournal && (pPager->nSavepoint==0 || !subjRequiresPage(pPg)) ){
pPager           47330 ext/sqlite3/libsqlite/sqlite3.c     assert( !pagerUseWal(pPager) );
pPager           47337 ext/sqlite3/libsqlite/sqlite3.c     if( !inJournal && !pagerUseWal(pPager) ){
pPager           47338 ext/sqlite3/libsqlite/sqlite3.c       assert( pagerUseWal(pPager)==0 );
pPager           47339 ext/sqlite3/libsqlite/sqlite3.c       if( pPg->pgno<=pPager->dbOrigSize && isOpen(pPager->jfd) ){
pPager           47342 ext/sqlite3/libsqlite/sqlite3.c         i64 iOff = pPager->journalOff;
pPager           47347 ext/sqlite3/libsqlite/sqlite3.c         assert( pPg->pgno!=PAGER_MJ_PGNO(pPager) );
pPager           47349 ext/sqlite3/libsqlite/sqlite3.c         assert( pPager->journalHdr<=pPager->journalOff );
pPager           47350 ext/sqlite3/libsqlite/sqlite3.c         CODEC2(pPager, pPg->pData, pPg->pgno, 7, return SQLITE_NOMEM, pData2);
pPager           47351 ext/sqlite3/libsqlite/sqlite3.c         cksum = pager_cksum(pPager, (u8*)pData2);
pPager           47362 ext/sqlite3/libsqlite/sqlite3.c         rc = write32bits(pPager->jfd, iOff, pPg->pgno);
pPager           47364 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3OsWrite(pPager->jfd, pData2, pPager->pageSize, iOff+4);
pPager           47366 ext/sqlite3/libsqlite/sqlite3.c         rc = write32bits(pPager->jfd, iOff+pPager->pageSize+4, cksum);
pPager           47369 ext/sqlite3/libsqlite/sqlite3.c         IOTRACE(("JOUT %p %d %lld %d\n", pPager, pPg->pgno, 
pPager           47370 ext/sqlite3/libsqlite/sqlite3.c                  pPager->journalOff, pPager->pageSize));
pPager           47373 ext/sqlite3/libsqlite/sqlite3.c              PAGERID(pPager), pPg->pgno, 
pPager           47376 ext/sqlite3/libsqlite/sqlite3.c         pPager->journalOff += 8 + pPager->pageSize;
pPager           47377 ext/sqlite3/libsqlite/sqlite3.c         pPager->nRec++;
pPager           47378 ext/sqlite3/libsqlite/sqlite3.c         assert( pPager->pInJournal!=0 );
pPager           47379 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3BitvecSet(pPager->pInJournal, pPg->pgno);
pPager           47382 ext/sqlite3/libsqlite/sqlite3.c         rc |= addToSavepointBitvecs(pPager, pPg->pgno);
pPager           47388 ext/sqlite3/libsqlite/sqlite3.c         if( pPager->eState!=PAGER_WRITER_DBMOD ){
pPager           47392 ext/sqlite3/libsqlite/sqlite3.c                 PAGERID(pPager), pPg->pgno,
pPager           47402 ext/sqlite3/libsqlite/sqlite3.c     if( pPager->nSavepoint>0 && subjRequiresPage(pPg) ){
pPager           47409 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->dbSize<pPg->pgno ){
pPager           47410 ext/sqlite3/libsqlite/sqlite3.c     pPager->dbSize = pPg->pgno;
pPager           47433 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = pPg->pPager;   /* The pager that owns pPg */
pPager           47434 ext/sqlite3/libsqlite/sqlite3.c   Pgno nPagePerSector = (pPager->sectorSize/pPager->pageSize);
pPager           47441 ext/sqlite3/libsqlite/sqlite3.c   assert( (pPager->doNotSpill & SPILLFLAG_NOSYNC)==0 );
pPager           47442 ext/sqlite3/libsqlite/sqlite3.c   pPager->doNotSpill |= SPILLFLAG_NOSYNC;
pPager           47450 ext/sqlite3/libsqlite/sqlite3.c   nPageCount = pPager->dbSize;
pPager           47465 ext/sqlite3/libsqlite/sqlite3.c     if( pg==pPg->pgno || !sqlite3BitvecTest(pPager->pInJournal, pg) ){
pPager           47466 ext/sqlite3/libsqlite/sqlite3.c       if( pg!=PAGER_MJ_PGNO(pPager) ){
pPager           47467 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3PagerGet(pPager, pg, &pPage);
pPager           47476 ext/sqlite3/libsqlite/sqlite3.c     }else if( (pPage = sqlite3PagerLookup(pPager, pg))!=0 ){
pPager           47493 ext/sqlite3/libsqlite/sqlite3.c       PgHdr *pPage = sqlite3PagerLookup(pPager, pg1+ii);
pPager           47501 ext/sqlite3/libsqlite/sqlite3.c   assert( (pPager->doNotSpill & SPILLFLAG_NOSYNC)!=0 );
pPager           47502 ext/sqlite3/libsqlite/sqlite3.c   pPager->doNotSpill &= ~SPILLFLAG_NOSYNC;
pPager           47522 ext/sqlite3/libsqlite/sqlite3.c   assert( pPg->pPager->eState>=PAGER_WRITER_LOCKED );
pPager           47523 ext/sqlite3/libsqlite/sqlite3.c   assert( pPg->pPager->eState!=PAGER_ERROR );
pPager           47524 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPg->pPager) );
pPager           47525 ext/sqlite3/libsqlite/sqlite3.c   if( pPg->pPager->sectorSize > (u32)pPg->pPager->pageSize ){
pPager           47558 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = pPg->pPager;
pPager           47559 ext/sqlite3/libsqlite/sqlite3.c   if( (pPg->flags&PGHDR_DIRTY) && pPager->nSavepoint==0 ){
pPager           47560 ext/sqlite3/libsqlite/sqlite3.c     PAGERTRACE(("DONT_WRITE page %d of %d\n", pPg->pgno, PAGERID(pPager)));
pPager           47561 ext/sqlite3/libsqlite/sqlite3.c     IOTRACE(("CLEAN %p %d\n", pPager, pPg->pgno))
pPager           47589 ext/sqlite3/libsqlite/sqlite3.c static int pager_incr_changecounter(Pager *pPager, int isDirectMode){
pPager           47592 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_WRITER_CACHEMOD
pPager           47593 ext/sqlite3/libsqlite/sqlite3.c        || pPager->eState==PAGER_WRITER_DBMOD
pPager           47595 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           47615 ext/sqlite3/libsqlite/sqlite3.c   if( !pPager->changeCountDone && ALWAYS(pPager->dbSize>0) ){
pPager           47618 ext/sqlite3/libsqlite/sqlite3.c     assert( !pPager->tempFile && isOpen(pPager->fd) );
pPager           47621 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3PagerGet(pPager, 1, &pPgHdr);
pPager           47640 ext/sqlite3/libsqlite/sqlite3.c         assert( pPager->dbFileSize>0 );
pPager           47641 ext/sqlite3/libsqlite/sqlite3.c         CODEC2(pPager, pPgHdr->pData, 1, 6, rc=SQLITE_NOMEM, zBuf);
pPager           47643 ext/sqlite3/libsqlite/sqlite3.c           rc = sqlite3OsWrite(pPager->fd, zBuf, pPager->pageSize, 0);
pPager           47644 ext/sqlite3/libsqlite/sqlite3.c           pPager->aStat[PAGER_STAT_WRITE]++;
pPager           47651 ext/sqlite3/libsqlite/sqlite3.c           memcpy(&pPager->dbFileVers, pCopy, sizeof(pPager->dbFileVers));
pPager           47652 ext/sqlite3/libsqlite/sqlite3.c           pPager->changeCountDone = 1;
pPager           47655 ext/sqlite3/libsqlite/sqlite3.c         pPager->changeCountDone = 1;
pPager           47672 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerSync(Pager *pPager, const char *zMaster){
pPager           47675 ext/sqlite3/libsqlite/sqlite3.c   if( isOpen(pPager->fd) ){
pPager           47677 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3OsFileControl(pPager->fd, SQLITE_FCNTL_SYNC, pArg);
pPager           47680 ext/sqlite3/libsqlite/sqlite3.c   if( rc==SQLITE_OK && !pPager->noSync ){
pPager           47682 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3OsSync(pPager->fd, pPager->syncFlags);
pPager           47698 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerExclusiveLock(Pager *pPager){
pPager           47700 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_WRITER_CACHEMOD 
pPager           47701 ext/sqlite3/libsqlite/sqlite3.c        || pPager->eState==PAGER_WRITER_DBMOD 
pPager           47702 ext/sqlite3/libsqlite/sqlite3.c        || pPager->eState==PAGER_WRITER_LOCKED 
pPager           47704 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           47705 ext/sqlite3/libsqlite/sqlite3.c   if( 0==pagerUseWal(pPager) ){
pPager           47706 ext/sqlite3/libsqlite/sqlite3.c     rc = pager_wait_on_lock(pPager, EXCLUSIVE_LOCK);
pPager           47738 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager,                  /* Pager object */
pPager           47744 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_WRITER_LOCKED
pPager           47745 ext/sqlite3/libsqlite/sqlite3.c        || pPager->eState==PAGER_WRITER_CACHEMOD
pPager           47746 ext/sqlite3/libsqlite/sqlite3.c        || pPager->eState==PAGER_WRITER_DBMOD
pPager           47747 ext/sqlite3/libsqlite/sqlite3.c        || pPager->eState==PAGER_ERROR
pPager           47749 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           47752 ext/sqlite3/libsqlite/sqlite3.c   if( NEVER(pPager->errCode) ) return pPager->errCode;
pPager           47755 ext/sqlite3/libsqlite/sqlite3.c       pPager->zFilename, zMaster, pPager->dbSize));
pPager           47758 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->eState<PAGER_WRITER_CACHEMOD ) return SQLITE_OK;
pPager           47765 ext/sqlite3/libsqlite/sqlite3.c     sqlite3BackupRestart(pPager->pBackup);
pPager           47767 ext/sqlite3/libsqlite/sqlite3.c     if( pagerUseWal(pPager) ){
pPager           47768 ext/sqlite3/libsqlite/sqlite3.c       PgHdr *pList = sqlite3PcacheDirtyList(pPager->pPCache);
pPager           47773 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3PagerGet(pPager, 1, &pPageOne);
pPager           47779 ext/sqlite3/libsqlite/sqlite3.c         rc = pagerWalFrames(pPager, pList, pPager->dbSize, 1);
pPager           47783 ext/sqlite3/libsqlite/sqlite3.c         sqlite3PcacheCleanAll(pPager->pPCache);
pPager           47811 ext/sqlite3/libsqlite/sqlite3.c       assert( isOpen(pPager->jfd) 
pPager           47812 ext/sqlite3/libsqlite/sqlite3.c            || pPager->journalMode==PAGER_JOURNALMODE_OFF 
pPager           47813 ext/sqlite3/libsqlite/sqlite3.c            || pPager->journalMode==PAGER_JOURNALMODE_WAL 
pPager           47815 ext/sqlite3/libsqlite/sqlite3.c       if( !zMaster && isOpen(pPager->jfd) 
pPager           47816 ext/sqlite3/libsqlite/sqlite3.c        && pPager->journalOff==jrnlBufferSize(pPager) 
pPager           47817 ext/sqlite3/libsqlite/sqlite3.c        && pPager->dbSize>=pPager->dbOrigSize
pPager           47818 ext/sqlite3/libsqlite/sqlite3.c        && (0==(pPg = sqlite3PcacheDirtyList(pPager->pPCache)) || 0==pPg->pDirty)
pPager           47826 ext/sqlite3/libsqlite/sqlite3.c         rc = pager_incr_changecounter(pPager, 1);
pPager           47828 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3JournalCreate(pPager->jfd);
pPager           47830 ext/sqlite3/libsqlite/sqlite3.c           rc = pager_incr_changecounter(pPager, 0);
pPager           47834 ext/sqlite3/libsqlite/sqlite3.c       rc = pager_incr_changecounter(pPager, 0);
pPager           47842 ext/sqlite3/libsqlite/sqlite3.c       rc = writeMasterJournal(pPager, zMaster);
pPager           47856 ext/sqlite3/libsqlite/sqlite3.c       rc = syncJournal(pPager, 0);
pPager           47859 ext/sqlite3/libsqlite/sqlite3.c       rc = pager_write_pagelist(pPager,sqlite3PcacheDirtyList(pPager->pPCache));
pPager           47864 ext/sqlite3/libsqlite/sqlite3.c       sqlite3PcacheCleanAll(pPager->pPCache);
pPager           47872 ext/sqlite3/libsqlite/sqlite3.c       if( pPager->dbSize>pPager->dbFileSize ){
pPager           47873 ext/sqlite3/libsqlite/sqlite3.c         Pgno nNew = pPager->dbSize - (pPager->dbSize==PAGER_MJ_PGNO(pPager));
pPager           47874 ext/sqlite3/libsqlite/sqlite3.c         assert( pPager->eState==PAGER_WRITER_DBMOD );
pPager           47875 ext/sqlite3/libsqlite/sqlite3.c         rc = pager_truncate(pPager, nNew);
pPager           47881 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3PagerSync(pPager, zMaster);
pPager           47883 ext/sqlite3/libsqlite/sqlite3.c       IOTRACE(("DBSYNC %p\n", pPager))
pPager           47888 ext/sqlite3/libsqlite/sqlite3.c   if( rc==SQLITE_OK && !pagerUseWal(pPager) ){
pPager           47889 ext/sqlite3/libsqlite/sqlite3.c     pPager->eState = PAGER_WRITER_FINISHED;
pPager           47910 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerCommitPhaseTwo(Pager *pPager){
pPager           47916 ext/sqlite3/libsqlite/sqlite3.c   if( NEVER(pPager->errCode) ) return pPager->errCode;
pPager           47918 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_WRITER_LOCKED
pPager           47919 ext/sqlite3/libsqlite/sqlite3.c        || pPager->eState==PAGER_WRITER_FINISHED
pPager           47920 ext/sqlite3/libsqlite/sqlite3.c        || (pagerUseWal(pPager) && pPager->eState==PAGER_WRITER_CACHEMOD)
pPager           47922 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           47935 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->eState==PAGER_WRITER_LOCKED 
pPager           47936 ext/sqlite3/libsqlite/sqlite3.c    && pPager->exclusiveMode 
pPager           47937 ext/sqlite3/libsqlite/sqlite3.c    && pPager->journalMode==PAGER_JOURNALMODE_PERSIST
pPager           47939 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->journalOff==JOURNAL_HDR_SZ(pPager) || !pPager->journalOff );
pPager           47940 ext/sqlite3/libsqlite/sqlite3.c     pPager->eState = PAGER_READER;
pPager           47944 ext/sqlite3/libsqlite/sqlite3.c   PAGERTRACE(("COMMIT %d\n", PAGERID(pPager)));
pPager           47945 ext/sqlite3/libsqlite/sqlite3.c   pPager->iDataVersion++;
pPager           47946 ext/sqlite3/libsqlite/sqlite3.c   rc = pager_end_transaction(pPager, pPager->setMaster, 1);
pPager           47947 ext/sqlite3/libsqlite/sqlite3.c   return pager_error(pPager, rc);
pPager           47976 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerRollback(Pager *pPager){
pPager           47978 ext/sqlite3/libsqlite/sqlite3.c   PAGERTRACE(("ROLLBACK %d\n", PAGERID(pPager)));
pPager           47984 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           47985 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->eState==PAGER_ERROR ) return pPager->errCode;
pPager           47986 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->eState<=PAGER_READER ) return SQLITE_OK;
pPager           47988 ext/sqlite3/libsqlite/sqlite3.c   if( pagerUseWal(pPager) ){
pPager           47990 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3PagerSavepoint(pPager, SAVEPOINT_ROLLBACK, -1);
pPager           47991 ext/sqlite3/libsqlite/sqlite3.c     rc2 = pager_end_transaction(pPager, pPager->setMaster, 0);
pPager           47993 ext/sqlite3/libsqlite/sqlite3.c   }else if( !isOpen(pPager->jfd) || pPager->eState==PAGER_WRITER_LOCKED ){
pPager           47994 ext/sqlite3/libsqlite/sqlite3.c     int eState = pPager->eState;
pPager           47995 ext/sqlite3/libsqlite/sqlite3.c     rc = pager_end_transaction(pPager, 0, 0);
pPager           48001 ext/sqlite3/libsqlite/sqlite3.c       pPager->errCode = SQLITE_ABORT;
pPager           48002 ext/sqlite3/libsqlite/sqlite3.c       pPager->eState = PAGER_ERROR;
pPager           48006 ext/sqlite3/libsqlite/sqlite3.c     rc = pager_playback(pPager, 0);
pPager           48009 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_READER || rc!=SQLITE_OK );
pPager           48018 ext/sqlite3/libsqlite/sqlite3.c   return pager_error(pPager, rc);
pPager           48025 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE u8 sqlite3PagerIsreadonly(Pager *pPager){
pPager           48026 ext/sqlite3/libsqlite/sqlite3.c   return pPager->readOnly;
pPager           48032 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerRefcount(Pager *pPager){
pPager           48033 ext/sqlite3/libsqlite/sqlite3.c   return sqlite3PcacheRefCount(pPager->pPCache);
pPager           48040 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerMemUsed(Pager *pPager){
pPager           48041 ext/sqlite3/libsqlite/sqlite3.c   int perPageSize = pPager->pageSize + pPager->nExtra + sizeof(PgHdr)
pPager           48043 ext/sqlite3/libsqlite/sqlite3.c   return perPageSize*sqlite3PcachePagecount(pPager->pPCache)
pPager           48044 ext/sqlite3/libsqlite/sqlite3.c            + sqlite3MallocSize(pPager)
pPager           48045 ext/sqlite3/libsqlite/sqlite3.c            + pPager->pageSize;
pPager           48059 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int *sqlite3PagerStats(Pager *pPager){
pPager           48061 ext/sqlite3/libsqlite/sqlite3.c   a[0] = sqlite3PcacheRefCount(pPager->pPCache);
pPager           48062 ext/sqlite3/libsqlite/sqlite3.c   a[1] = sqlite3PcachePagecount(pPager->pPCache);
pPager           48063 ext/sqlite3/libsqlite/sqlite3.c   a[2] = sqlite3PcacheGetCachesize(pPager->pPCache);
pPager           48064 ext/sqlite3/libsqlite/sqlite3.c   a[3] = pPager->eState==PAGER_OPEN ? -1 : (int) pPager->dbSize;
pPager           48065 ext/sqlite3/libsqlite/sqlite3.c   a[4] = pPager->eState;
pPager           48066 ext/sqlite3/libsqlite/sqlite3.c   a[5] = pPager->errCode;
pPager           48067 ext/sqlite3/libsqlite/sqlite3.c   a[6] = pPager->aStat[PAGER_STAT_HIT];
pPager           48068 ext/sqlite3/libsqlite/sqlite3.c   a[7] = pPager->aStat[PAGER_STAT_MISS];
pPager           48070 ext/sqlite3/libsqlite/sqlite3.c   a[9] = pPager->nRead;
pPager           48071 ext/sqlite3/libsqlite/sqlite3.c   a[10] = pPager->aStat[PAGER_STAT_WRITE];
pPager           48083 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE void sqlite3PagerCacheStat(Pager *pPager, int eStat, int reset, int *pnVal){
pPager           48094 ext/sqlite3/libsqlite/sqlite3.c   *pnVal += pPager->aStat[eStat - SQLITE_DBSTATUS_CACHE_HIT];
pPager           48096 ext/sqlite3/libsqlite/sqlite3.c     pPager->aStat[eStat - SQLITE_DBSTATUS_CACHE_HIT] = 0;
pPager           48103 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerIsMemdb(Pager *pPager){
pPager           48117 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerOpenSavepoint(Pager *pPager, int nSavepoint){
pPager           48119 ext/sqlite3/libsqlite/sqlite3.c   int nCurrent = pPager->nSavepoint;        /* Current number of savepoints */
pPager           48121 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState>=PAGER_WRITER_LOCKED );
pPager           48122 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           48124 ext/sqlite3/libsqlite/sqlite3.c   if( nSavepoint>nCurrent && pPager->useJournal ){
pPager           48133 ext/sqlite3/libsqlite/sqlite3.c         pPager->aSavepoint, sizeof(PagerSavepoint)*nSavepoint
pPager           48139 ext/sqlite3/libsqlite/sqlite3.c     pPager->aSavepoint = aNew;
pPager           48143 ext/sqlite3/libsqlite/sqlite3.c       aNew[ii].nOrig = pPager->dbSize;
pPager           48144 ext/sqlite3/libsqlite/sqlite3.c       if( isOpen(pPager->jfd) && pPager->journalOff>0 ){
pPager           48145 ext/sqlite3/libsqlite/sqlite3.c         aNew[ii].iOffset = pPager->journalOff;
pPager           48147 ext/sqlite3/libsqlite/sqlite3.c         aNew[ii].iOffset = JOURNAL_HDR_SZ(pPager);
pPager           48149 ext/sqlite3/libsqlite/sqlite3.c       aNew[ii].iSubRec = pPager->nSubRec;
pPager           48150 ext/sqlite3/libsqlite/sqlite3.c       aNew[ii].pInSavepoint = sqlite3BitvecCreate(pPager->dbSize);
pPager           48154 ext/sqlite3/libsqlite/sqlite3.c       if( pagerUseWal(pPager) ){
pPager           48155 ext/sqlite3/libsqlite/sqlite3.c         sqlite3WalSavepoint(pPager->pWal, aNew[ii].aWalData);
pPager           48157 ext/sqlite3/libsqlite/sqlite3.c       pPager->nSavepoint = ii+1;
pPager           48159 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->nSavepoint==nSavepoint );
pPager           48160 ext/sqlite3/libsqlite/sqlite3.c     assertTruncateConstraint(pPager);
pPager           48196 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerSavepoint(Pager *pPager, int op, int iSavepoint){
pPager           48197 ext/sqlite3/libsqlite/sqlite3.c   int rc = pPager->errCode;       /* Return code */
pPager           48202 ext/sqlite3/libsqlite/sqlite3.c   if( rc==SQLITE_OK && iSavepoint<pPager->nSavepoint ){
pPager           48211 ext/sqlite3/libsqlite/sqlite3.c     for(ii=nNew; ii<pPager->nSavepoint; ii++){
pPager           48212 ext/sqlite3/libsqlite/sqlite3.c       sqlite3BitvecDestroy(pPager->aSavepoint[ii].pInSavepoint);
pPager           48214 ext/sqlite3/libsqlite/sqlite3.c     pPager->nSavepoint = nNew;
pPager           48219 ext/sqlite3/libsqlite/sqlite3.c       if( nNew==0 && isOpen(pPager->sjfd) ){
pPager           48221 ext/sqlite3/libsqlite/sqlite3.c         if( sqlite3IsMemJournal(pPager->sjfd) ){
pPager           48222 ext/sqlite3/libsqlite/sqlite3.c           rc = sqlite3OsTruncate(pPager->sjfd, 0);
pPager           48225 ext/sqlite3/libsqlite/sqlite3.c         pPager->nSubRec = 0;
pPager           48233 ext/sqlite3/libsqlite/sqlite3.c     else if( pagerUseWal(pPager) || isOpen(pPager->jfd) ){
pPager           48234 ext/sqlite3/libsqlite/sqlite3.c       PagerSavepoint *pSavepoint = (nNew==0)?0:&pPager->aSavepoint[nNew-1];
pPager           48235 ext/sqlite3/libsqlite/sqlite3.c       rc = pagerPlaybackSavepoint(pPager, pSavepoint);
pPager           48253 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE const char *sqlite3PagerFilename(Pager *pPager, int nullIfMemDb){
pPager           48254 ext/sqlite3/libsqlite/sqlite3.c   return (nullIfMemDb && pPager->memDb) ? "" : pPager->zFilename;
pPager           48260 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE const sqlite3_vfs *sqlite3PagerVfs(Pager *pPager){
pPager           48261 ext/sqlite3/libsqlite/sqlite3.c   return pPager->pVfs;
pPager           48269 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE sqlite3_file *sqlite3PagerFile(Pager *pPager){
pPager           48270 ext/sqlite3/libsqlite/sqlite3.c   return pPager->fd;
pPager           48276 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE const char *sqlite3PagerJournalname(Pager *pPager){
pPager           48277 ext/sqlite3/libsqlite/sqlite3.c   return pPager->zJournal;
pPager           48284 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerNosync(Pager *pPager){
pPager           48285 ext/sqlite3/libsqlite/sqlite3.c   return pPager->noSync;
pPager           48293 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager,
pPager           48299 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->xCodecFree ) pPager->xCodecFree(pPager->pCodec);
pPager           48300 ext/sqlite3/libsqlite/sqlite3.c   pPager->xCodec = pPager->memDb ? 0 : xCodec;
pPager           48301 ext/sqlite3/libsqlite/sqlite3.c   pPager->xCodecSizeChng = xCodecSizeChng;
pPager           48302 ext/sqlite3/libsqlite/sqlite3.c   pPager->xCodecFree = xCodecFree;
pPager           48303 ext/sqlite3/libsqlite/sqlite3.c   pPager->pCodec = pCodec;
pPager           48304 ext/sqlite3/libsqlite/sqlite3.c   pagerReportSize(pPager);
pPager           48306 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE void *sqlite3PagerGetCodec(Pager *pPager){
pPager           48307 ext/sqlite3/libsqlite/sqlite3.c   return pPager->pCodec;
pPager           48319 ext/sqlite3/libsqlite/sqlite3.c   CODEC2(pPg->pPager, pPg->pData, pPg->pgno, 6, return 0, aData);
pPager           48326 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerState(Pager *pPager){
pPager           48327 ext/sqlite3/libsqlite/sqlite3.c   return pPager->eState;
pPager           48357 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerMovepage(Pager *pPager, DbPage *pPg, Pgno pgno, int isCommit){
pPager           48364 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_WRITER_CACHEMOD
pPager           48365 ext/sqlite3/libsqlite/sqlite3.c        || pPager->eState==PAGER_WRITER_DBMOD
pPager           48367 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           48403 ext/sqlite3/libsqlite/sqlite3.c       PAGERID(pPager), pPg->pgno, (pPg->flags&PGHDR_NEED_SYNC)?1:0, pgno));
pPager           48404 ext/sqlite3/libsqlite/sqlite3.c   IOTRACE(("MOVE %p %d %d\n", pPager, pPg->pgno, pgno))
pPager           48415 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->journalMode==PAGER_JOURNALMODE_OFF ||
pPager           48416 ext/sqlite3/libsqlite/sqlite3.c             pageInJournal(pPager, pPg) || pPg->pgno>pPager->dbOrigSize );
pPager           48426 ext/sqlite3/libsqlite/sqlite3.c   pPgOld = sqlite3PagerLookup(pPager, pgno);
pPager           48433 ext/sqlite3/libsqlite/sqlite3.c       sqlite3PcacheMove(pPgOld, pPager->dbSize+1);
pPager           48469 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3PagerGet(pPager, needSyncPgno, &pPgHdr);
pPager           48471 ext/sqlite3/libsqlite/sqlite3.c       if( needSyncPgno<=pPager->dbOrigSize ){
pPager           48472 ext/sqlite3/libsqlite/sqlite3.c         assert( pPager->pTmpSpace!=0 );
pPager           48473 ext/sqlite3/libsqlite/sqlite3.c         sqlite3BitvecClear(pPager->pInJournal, needSyncPgno, pPager->pTmpSpace);
pPager           48502 ext/sqlite3/libsqlite/sqlite3.c   assert( pPg->nRef>0 || pPg->pPager->memDb );
pPager           48524 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerLockingMode(Pager *pPager, int eMode){
pPager           48530 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->exclusiveMode || 0==sqlite3WalHeapMemory(pPager->pWal) );
pPager           48531 ext/sqlite3/libsqlite/sqlite3.c   if( eMode>=0 && !pPager->tempFile && !sqlite3WalHeapMemory(pPager->pWal) ){
pPager           48532 ext/sqlite3/libsqlite/sqlite3.c     pPager->exclusiveMode = (u8)eMode;
pPager           48534 ext/sqlite3/libsqlite/sqlite3.c   return (int)pPager->exclusiveMode;
pPager           48557 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerSetJournalMode(Pager *pPager, int eMode){
pPager           48558 ext/sqlite3/libsqlite/sqlite3.c   u8 eOld = pPager->journalMode;    /* Prior journalmode */
pPager           48563 ext/sqlite3/libsqlite/sqlite3.c   print_pager_state(pPager);
pPager           48579 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->tempFile==0 || eMode!=PAGER_JOURNALMODE_WAL );
pPager           48594 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager->eState!=PAGER_ERROR );
pPager           48595 ext/sqlite3/libsqlite/sqlite3.c     pPager->journalMode = (u8)eMode;
pPager           48608 ext/sqlite3/libsqlite/sqlite3.c     assert( isOpen(pPager->fd) || pPager->exclusiveMode );
pPager           48609 ext/sqlite3/libsqlite/sqlite3.c     if( !pPager->exclusiveMode && (eOld & 5)==1 && (eMode & 1)==0 ){
pPager           48619 ext/sqlite3/libsqlite/sqlite3.c       sqlite3OsClose(pPager->jfd);
pPager           48620 ext/sqlite3/libsqlite/sqlite3.c       if( pPager->eLock>=RESERVED_LOCK ){
pPager           48621 ext/sqlite3/libsqlite/sqlite3.c         sqlite3OsDelete(pPager->pVfs, pPager->zJournal, 0);
pPager           48624 ext/sqlite3/libsqlite/sqlite3.c         int state = pPager->eState;
pPager           48627 ext/sqlite3/libsqlite/sqlite3.c           rc = sqlite3PagerSharedLock(pPager);
pPager           48629 ext/sqlite3/libsqlite/sqlite3.c         if( pPager->eState==PAGER_READER ){
pPager           48631 ext/sqlite3/libsqlite/sqlite3.c           rc = pagerLockDb(pPager, RESERVED_LOCK);
pPager           48634 ext/sqlite3/libsqlite/sqlite3.c           sqlite3OsDelete(pPager->pVfs, pPager->zJournal, 0);
pPager           48637 ext/sqlite3/libsqlite/sqlite3.c           pagerUnlockDb(pPager, SHARED_LOCK);
pPager           48639 ext/sqlite3/libsqlite/sqlite3.c           pager_unlock(pPager);
pPager           48641 ext/sqlite3/libsqlite/sqlite3.c         assert( state==pPager->eState );
pPager           48644 ext/sqlite3/libsqlite/sqlite3.c       sqlite3OsClose(pPager->jfd);
pPager           48649 ext/sqlite3/libsqlite/sqlite3.c   return (int)pPager->journalMode;
pPager           48655 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerGetJournalMode(Pager *pPager){
pPager           48656 ext/sqlite3/libsqlite/sqlite3.c   return (int)pPager->journalMode;
pPager           48664 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerOkToChangeJournalMode(Pager *pPager){
pPager           48665 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           48666 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->eState>=PAGER_WRITER_CACHEMOD ) return 0;
pPager           48667 ext/sqlite3/libsqlite/sqlite3.c   if( NEVER(isOpen(pPager->jfd) && pPager->journalOff>0) ) return 0;
pPager           48677 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE i64 sqlite3PagerJournalSizeLimit(Pager *pPager, i64 iLimit){
pPager           48679 ext/sqlite3/libsqlite/sqlite3.c     pPager->journalSizeLimit = iLimit;
pPager           48680 ext/sqlite3/libsqlite/sqlite3.c     sqlite3WalLimit(pPager->pWal, iLimit);
pPager           48682 ext/sqlite3/libsqlite/sqlite3.c   return pPager->journalSizeLimit;
pPager           48691 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE sqlite3_backup **sqlite3PagerBackupPtr(Pager *pPager){
pPager           48692 ext/sqlite3/libsqlite/sqlite3.c   return &pPager->pBackup;
pPager           48699 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE void sqlite3PagerClearCache(Pager *pPager){
pPager           48700 ext/sqlite3/libsqlite/sqlite3.c   if( !MEMDB && pPager->tempFile==0 ) pager_reset(pPager);
pPager           48712 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerCheckpoint(Pager *pPager, int eMode, int *pnLog, int *pnCkpt){
pPager           48714 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->pWal ){
pPager           48715 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3WalCheckpoint(pPager->pWal, eMode,
pPager           48716 ext/sqlite3/libsqlite/sqlite3.c         (eMode==SQLITE_CHECKPOINT_PASSIVE ? 0 : pPager->xBusyHandler),
pPager           48717 ext/sqlite3/libsqlite/sqlite3.c         pPager->pBusyHandlerArg,
pPager           48718 ext/sqlite3/libsqlite/sqlite3.c         pPager->ckptSyncFlags, pPager->pageSize, (u8 *)pPager->pTmpSpace,
pPager           48725 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerWalCallback(Pager *pPager){
pPager           48726 ext/sqlite3/libsqlite/sqlite3.c   return sqlite3WalCallback(pPager->pWal);
pPager           48733 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerWalSupported(Pager *pPager){
pPager           48734 ext/sqlite3/libsqlite/sqlite3.c   const sqlite3_io_methods *pMethods = pPager->fd->pMethods;
pPager           48735 ext/sqlite3/libsqlite/sqlite3.c   return pPager->exclusiveMode || (pMethods->iVersion>=2 && pMethods->xShmMap);
pPager           48742 ext/sqlite3/libsqlite/sqlite3.c static int pagerExclusiveLock(Pager *pPager){
pPager           48745 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eLock==SHARED_LOCK || pPager->eLock==EXCLUSIVE_LOCK );
pPager           48746 ext/sqlite3/libsqlite/sqlite3.c   rc = pagerLockDb(pPager, EXCLUSIVE_LOCK);
pPager           48750 ext/sqlite3/libsqlite/sqlite3.c     pagerUnlockDb(pPager, SHARED_LOCK);
pPager           48762 ext/sqlite3/libsqlite/sqlite3.c static int pagerOpenWal(Pager *pPager){
pPager           48765 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->pWal==0 && pPager->tempFile==0 );
pPager           48766 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eLock==SHARED_LOCK || pPager->eLock==EXCLUSIVE_LOCK );
pPager           48773 ext/sqlite3/libsqlite/sqlite3.c   if( pPager->exclusiveMode ){
pPager           48774 ext/sqlite3/libsqlite/sqlite3.c     rc = pagerExclusiveLock(pPager);
pPager           48781 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3WalOpen(pPager->pVfs,
pPager           48782 ext/sqlite3/libsqlite/sqlite3.c         pPager->fd, pPager->zWal, pPager->exclusiveMode,
pPager           48783 ext/sqlite3/libsqlite/sqlite3.c         pPager->journalSizeLimit, &pPager->pWal
pPager           48786 ext/sqlite3/libsqlite/sqlite3.c   pagerFixMaplimit(pPager);
pPager           48808 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager,                  /* Pager object */
pPager           48813 ext/sqlite3/libsqlite/sqlite3.c   assert( assert_pager_state(pPager) );
pPager           48814 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_OPEN   || pbOpen );
pPager           48815 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState==PAGER_READER || !pbOpen );
pPager           48817 ext/sqlite3/libsqlite/sqlite3.c   assert( pbOpen!=0 || (!pPager->tempFile && !pPager->pWal) );
pPager           48819 ext/sqlite3/libsqlite/sqlite3.c   if( !pPager->tempFile && !pPager->pWal ){
pPager           48820 ext/sqlite3/libsqlite/sqlite3.c     if( !sqlite3PagerWalSupported(pPager) ) return SQLITE_CANTOPEN;
pPager           48823 ext/sqlite3/libsqlite/sqlite3.c     sqlite3OsClose(pPager->jfd);
pPager           48825 ext/sqlite3/libsqlite/sqlite3.c     rc = pagerOpenWal(pPager);
pPager           48827 ext/sqlite3/libsqlite/sqlite3.c       pPager->journalMode = PAGER_JOURNALMODE_WAL;
pPager           48828 ext/sqlite3/libsqlite/sqlite3.c       pPager->eState = PAGER_OPEN;
pPager           48846 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerCloseWal(Pager *pPager){
pPager           48849 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->journalMode==PAGER_JOURNALMODE_WAL );
pPager           48855 ext/sqlite3/libsqlite/sqlite3.c   if( !pPager->pWal ){
pPager           48857 ext/sqlite3/libsqlite/sqlite3.c     rc = pagerLockDb(pPager, SHARED_LOCK);
pPager           48860 ext/sqlite3/libsqlite/sqlite3.c           pPager->pVfs, pPager->zWal, SQLITE_ACCESS_EXISTS, &logexists
pPager           48864 ext/sqlite3/libsqlite/sqlite3.c       rc = pagerOpenWal(pPager);
pPager           48871 ext/sqlite3/libsqlite/sqlite3.c   if( rc==SQLITE_OK && pPager->pWal ){
pPager           48872 ext/sqlite3/libsqlite/sqlite3.c     rc = pagerExclusiveLock(pPager);
pPager           48874 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3WalClose(pPager->pWal, pPager->ckptSyncFlags,
pPager           48875 ext/sqlite3/libsqlite/sqlite3.c                            pPager->pageSize, (u8*)pPager->pTmpSpace);
pPager           48876 ext/sqlite3/libsqlite/sqlite3.c       pPager->pWal = 0;
pPager           48877 ext/sqlite3/libsqlite/sqlite3.c       pagerFixMaplimit(pPager);
pPager           48893 ext/sqlite3/libsqlite/sqlite3.c SQLITE_PRIVATE int sqlite3PagerWalFramesize(Pager *pPager){
pPager           48894 ext/sqlite3/libsqlite/sqlite3.c   assert( pPager->eState>=PAGER_READER );
pPager           48895 ext/sqlite3/libsqlite/sqlite3.c   return sqlite3WalFramesize(pPager->pWal);
pPager           52491 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager;        /* The page cache */
pPager           52746 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager;    /* The associated pager.  Also accessible by pBt->pPager */
pPager           53931 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3PagerGet(pBt->pPager, iPtrmap, &pDbPage);
pPager           53974 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3PagerGet(pBt->pPager, iPtrmap, &pDbPage);
pPager           54277 ext/sqlite3/libsqlite/sqlite3.c       temp = sqlite3PagerTempSpace(pPage->pBt->pPager);
pPager           54806 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3PagerAcquire(pBt->pPager, pgno, (DbPage**)&pDbPage, flags);
pPager           54820 ext/sqlite3/libsqlite/sqlite3.c   pDbPage = sqlite3PagerLookup(pBt->pPager, pgno);
pPager           55042 ext/sqlite3/libsqlite/sqlite3.c         if( 0==strcmp(zFullPathname, sqlite3PagerFilename(pBt->pPager, 0))
pPager           55043 ext/sqlite3/libsqlite/sqlite3.c                  && sqlite3PagerVfs(pBt->pPager)==pVfs ){
pPager           55092 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3PagerOpen(pVfs, &pBt->pPager, zFilename,
pPager           55095 ext/sqlite3/libsqlite/sqlite3.c       sqlite3PagerSetMmapLimit(pBt->pPager, db->szMmap);
pPager           55096 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3PagerReadFileheader(pBt->pPager,sizeof(zDbHeader),zDbHeader);
pPager           55103 ext/sqlite3/libsqlite/sqlite3.c     sqlite3PagerSetBusyhandler(pBt->pPager, btreeInvokeBusyHandler, pBt);
pPager           55108 ext/sqlite3/libsqlite/sqlite3.c     if( sqlite3PagerIsreadonly(pBt->pPager) ) pBt->btsFlags |= BTS_READ_ONLY;
pPager           55143 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3PagerSetPagesize(pBt->pPager, &pBt->pageSize, nReserve);
pPager           55206 ext/sqlite3/libsqlite/sqlite3.c     if( pBt && pBt->pPager ){
pPager           55207 ext/sqlite3/libsqlite/sqlite3.c       sqlite3PagerClose(pBt->pPager);
pPager           55218 ext/sqlite3/libsqlite/sqlite3.c       sqlite3PagerSetCachesize(p->pBt->pPager, SQLITE_DEFAULT_CACHE_SIZE);
pPager           55348 ext/sqlite3/libsqlite/sqlite3.c     sqlite3PagerClose(pBt->pPager);
pPager           55387 ext/sqlite3/libsqlite/sqlite3.c   sqlite3PagerSetCachesize(pBt->pPager, mxPage);
pPager           55401 ext/sqlite3/libsqlite/sqlite3.c   sqlite3PagerSetMmapLimit(pBt->pPager, szMmap);
pPager           55423 ext/sqlite3/libsqlite/sqlite3.c   sqlite3PagerSetFlags(pBt->pPager, pgFlags);
pPager           55438 ext/sqlite3/libsqlite/sqlite3.c   assert( pBt && pBt->pPager );
pPager           55439 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3PagerNosync(pBt->pPager);
pPager           55487 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3PagerSetPagesize(pBt->pPager, &pBt->pageSize, nReserve);
pPager           55548 ext/sqlite3/libsqlite/sqlite3.c   n = sqlite3PagerMaxPageCount(p->pBt->pPager, mxPage);
pPager           55636 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3PagerSharedLock(pBt->pPager);
pPager           55645 ext/sqlite3/libsqlite/sqlite3.c   sqlite3PagerPagecount(pBt->pPager, &nPageFile);
pPager           55686 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3PagerOpenWal(pBt->pPager, &isOpen);
pPager           55738 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3PagerSetPagesize(pBt->pPager, &pBt->pageSize,
pPager           55831 ext/sqlite3/libsqlite/sqlite3.c     assert( sqlite3PagerRefcount(pBt->pPager)==1 );
pPager           56000 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3PagerBegin(pBt->pPager,wrflag>1,sqlite3TempInMemory(p->db));
pPager           56060 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3PagerOpenSavepoint(pBt->pPager, p->db->nSavepoint);
pPager           56195 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = pBt->pPager;
pPager           56206 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3PagerMovepage(pPager, pDbPage->pDbPage, iFreePage, isCommit);
pPager           56444 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = pBt->pPager;
pPager           56445 ext/sqlite3/libsqlite/sqlite3.c   VVA_ONLY( int nRef = sqlite3PagerRefcount(pPager) );
pPager           56483 ext/sqlite3/libsqlite/sqlite3.c       sqlite3PagerRollback(pPager);
pPager           56487 ext/sqlite3/libsqlite/sqlite3.c   assert( nRef>=sqlite3PagerRefcount(pPager) );
pPager           56535 ext/sqlite3/libsqlite/sqlite3.c       sqlite3PagerTruncateImage(pBt->pPager, pBt->nPage);
pPager           56538 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3PagerCommitPhaseOne(pBt->pPager, zMaster, 0);
pPager           56624 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3PagerCommitPhaseTwo(pBt->pPager);
pPager           56747 ext/sqlite3/libsqlite/sqlite3.c     rc2 = sqlite3PagerRollback(pBt->pPager);
pPager           56758 ext/sqlite3/libsqlite/sqlite3.c       if( nPage==0 ) sqlite3PagerPagecount(pBt->pPager, &nPage);
pPager           56805 ext/sqlite3/libsqlite/sqlite3.c   rc = sqlite3PagerOpenSavepoint(pBt->pPager, iStatement);
pPager           56829 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3PagerSavepoint(pBt->pPager, op, iSavepoint);
pPager           57394 ext/sqlite3/libsqlite/sqlite3.c          && (fd = sqlite3PagerFile(pBt->pPager))->pMethods     /* (3) */
pPager           57410 ext/sqlite3/libsqlite/sqlite3.c           rc = sqlite3PagerAcquire(pBt->pPager, nextPage, &pDbPage,
pPager           59205 ext/sqlite3/libsqlite/sqlite3.c   u8 *pTmp = sqlite3PagerTempSpace(pPg->pBt->pPager);
pPager           59370 ext/sqlite3/libsqlite/sqlite3.c   u8 *pTmp = sqlite3PagerTempSpace(pPg->pBt->pPager);
pPager           61282 ext/sqlite3/libsqlite/sqlite3.c     *pMeta = sqlite3PagerDataVersion(pBt->pPager) + p->iDataVersion;
pPager           61406 ext/sqlite3/libsqlite/sqlite3.c   return p->pBt->pPager;
pPager           61535 ext/sqlite3/libsqlite/sqlite3.c     if( sqlite3PagerGet(pCheck->pPager, (Pgno)iPage, &pOvflPage) ){
pPager           61929 ext/sqlite3/libsqlite/sqlite3.c   nRef = sqlite3PagerRefcount(pBt->pPager);
pPager           61931 ext/sqlite3/libsqlite/sqlite3.c   sCheck.pPager = pBt->pPager;
pPager           62002 ext/sqlite3/libsqlite/sqlite3.c   if( NEVER(nRef != sqlite3PagerRefcount(pBt->pPager)) ){
pPager           62005 ext/sqlite3/libsqlite/sqlite3.c       nRef, sqlite3PagerRefcount(pBt->pPager)
pPager           62032 ext/sqlite3/libsqlite/sqlite3.c   assert( p->pBt->pPager!=0 );
pPager           62033 ext/sqlite3/libsqlite/sqlite3.c   return sqlite3PagerFilename(p->pBt->pPager, 1);
pPager           62045 ext/sqlite3/libsqlite/sqlite3.c   assert( p->pBt->pPager!=0 );
pPager           62046 ext/sqlite3/libsqlite/sqlite3.c   return sqlite3PagerJournalname(p->pBt->pPager);
pPager           62074 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3PagerCheckpoint(pBt->pPager, eMode, pnLog, pnCkpt);
pPager           76665 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager;                  /* Pager associated with pBt */
pPager           76686 ext/sqlite3/libsqlite/sqlite3.c   pPager = sqlite3BtreePager(pBt);
pPager           76687 ext/sqlite3/libsqlite/sqlite3.c   eOld = sqlite3PagerGetJournalMode(pPager);
pPager           76689 ext/sqlite3/libsqlite/sqlite3.c   if( !sqlite3PagerOkToChangeJournalMode(pPager) ) eNew = eOld;
pPager           76692 ext/sqlite3/libsqlite/sqlite3.c   zFilename = sqlite3PagerFilename(pPager, 1);
pPager           76699 ext/sqlite3/libsqlite/sqlite3.c        || !sqlite3PagerWalSupported(pPager))   /* No shared-memory support */
pPager           76722 ext/sqlite3/libsqlite/sqlite3.c         rc = sqlite3PagerCloseWal(pPager);
pPager           76724 ext/sqlite3/libsqlite/sqlite3.c           sqlite3PagerSetJournalMode(pPager, eNew);
pPager           76729 ext/sqlite3/libsqlite/sqlite3.c         sqlite3PagerSetJournalMode(pPager, PAGER_JOURNALMODE_OFF);
pPager           76746 ext/sqlite3/libsqlite/sqlite3.c   eNew = sqlite3PagerSetJournalMode(pPager, eNew);
pPager           90099 ext/sqlite3/libsqlite/sqlite3.c     Pager *pPager;
pPager           90109 ext/sqlite3/libsqlite/sqlite3.c     pPager = sqlite3BtreePager(aNew->pBt);
pPager           90110 ext/sqlite3/libsqlite/sqlite3.c     sqlite3PagerLockingMode(pPager, db->dfltLockMode);
pPager           104128 ext/sqlite3/libsqlite/sqlite3.c       Pager *pPager;
pPager           104141 ext/sqlite3/libsqlite/sqlite3.c           pPager = sqlite3BtreePager(db->aDb[ii].pBt);
pPager           104142 ext/sqlite3/libsqlite/sqlite3.c           sqlite3PagerLockingMode(pPager, eMode);
pPager           104146 ext/sqlite3/libsqlite/sqlite3.c       pPager = sqlite3BtreePager(pDb->pBt);
pPager           104147 ext/sqlite3/libsqlite/sqlite3.c       eMode = sqlite3PagerLockingMode(pPager, eMode);
pPager           104212 ext/sqlite3/libsqlite/sqlite3.c     Pager *pPager = sqlite3BtreePager(pDb->pBt);
pPager           104218 ext/sqlite3/libsqlite/sqlite3.c     iLimit = sqlite3PagerJournalSizeLimit(pPager, iLimit);
pPager           104489 ext/sqlite3/libsqlite/sqlite3.c       Pager *pPager = sqlite3BtreePager(pDb->pBt);
pPager           104491 ext/sqlite3/libsqlite/sqlite3.c       sqlite3_file *pFile = sqlite3PagerFile(pPager);
pPager           104503 ext/sqlite3/libsqlite/sqlite3.c       Pager *pPager = sqlite3BtreePager(pDb->pBt);
pPager           104504 ext/sqlite3/libsqlite/sqlite3.c       sqlite3_file *pFile = sqlite3PagerFile(pPager);
pPager           128717 ext/sqlite3/libsqlite/sqlite3.c       Pager *pPager = sqlite3BtreePager(pBt);
pPager           128718 ext/sqlite3/libsqlite/sqlite3.c       sqlite3PagerShrink(pPager);
pPager           131322 ext/sqlite3/libsqlite/sqlite3.c     Pager *pPager;
pPager           131325 ext/sqlite3/libsqlite/sqlite3.c     pPager = sqlite3BtreePager(pBtree);
pPager           131326 ext/sqlite3/libsqlite/sqlite3.c     assert( pPager!=0 );
pPager           131327 ext/sqlite3/libsqlite/sqlite3.c     fd = sqlite3PagerFile(pPager);
pPager           155617 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = sqlite3BtreePager(pBt);
pPager           155628 ext/sqlite3/libsqlite/sqlite3.c   fd = sqlite3PagerFile(pPager);
pPager           155646 ext/sqlite3/libsqlite/sqlite3.c   Pager *pPager = sqlite3BtreePager(pBt);
pPager           155657 ext/sqlite3/libsqlite/sqlite3.c       sqlite3PagerPagecount(pPager, &nPage);
pPager           155662 ext/sqlite3/libsqlite/sqlite3.c       rc = sqlite3PagerGet(pPager, iRoot, &pCsr->aPage[0].pPg);
pPager           155722 ext/sqlite3/libsqlite/sqlite3.c     rc = sqlite3PagerGet(pPager, p[1].iPgno, &p[1].pPg);