Lines Matching refs:pPg
70 PgHdr *pPg; in pcachePageTrace() local
73 pPg = (PgHdr*)pLower->pExtra; in pcachePageTrace()
74 printf("%3d: nRef %2d flgs %02x data ", i, pPg->nRef, pPg->flags); in pcachePageTrace()
77 printf(" ptr %p\n", pPg); in pcachePageTrace()
108 static int pageOnDirtyList(PCache *pCache, PgHdr *pPg){ in pageOnDirtyList() argument
111 if( p==pPg ) return 1; in pageOnDirtyList()
127 int sqlite3PcachePageSanity(PgHdr *pPg){ in sqlite3PcachePageSanity() argument
129 assert( pPg!=0 ); in sqlite3PcachePageSanity()
130 assert( pPg->pgno>0 || pPg->pPager==0 ); /* Page number is 1 or more */ in sqlite3PcachePageSanity()
131 pCache = pPg->pCache; in sqlite3PcachePageSanity()
133 if( pPg->flags & PGHDR_CLEAN ){ in sqlite3PcachePageSanity()
134 assert( (pPg->flags & PGHDR_DIRTY)==0 );/* Cannot be both CLEAN and DIRTY */ in sqlite3PcachePageSanity()
135 assert( !pageOnDirtyList(pCache, pPg) );/* CLEAN pages not on dirty list */ in sqlite3PcachePageSanity()
137 assert( (pPg->flags & PGHDR_DIRTY)!=0 );/* If not CLEAN must be DIRTY */ in sqlite3PcachePageSanity()
138 assert( pPg->pDirtyNext==0 || pPg->pDirtyNext->pDirtyPrev==pPg ); in sqlite3PcachePageSanity()
139 assert( pPg->pDirtyPrev==0 || pPg->pDirtyPrev->pDirtyNext==pPg ); in sqlite3PcachePageSanity()
140 assert( pPg->pDirtyPrev!=0 || pCache->pDirty==pPg ); in sqlite3PcachePageSanity()
141 assert( pageOnDirtyList(pCache, pPg) ); in sqlite3PcachePageSanity()
144 if( pPg->flags & PGHDR_WRITEABLE ){ in sqlite3PcachePageSanity()
145 assert( pPg->flags & PGHDR_DIRTY ); /* WRITEABLE implies DIRTY */ in sqlite3PcachePageSanity()
437 PgHdr *pPg; in sqlite3PcacheFetchStress() local
450 for(pPg=pCache->pSynced; in sqlite3PcacheFetchStress()
451 pPg && (pPg->nRef || (pPg->flags&PGHDR_NEED_SYNC)); in sqlite3PcacheFetchStress()
452 pPg=pPg->pDirtyPrev in sqlite3PcacheFetchStress()
454 pCache->pSynced = pPg; in sqlite3PcacheFetchStress()
455 if( !pPg ){ in sqlite3PcacheFetchStress()
456 for(pPg=pCache->pDirtyTail; pPg && pPg->nRef; pPg=pPg->pDirtyPrev); in sqlite3PcacheFetchStress()
458 if( pPg ){ in sqlite3PcacheFetchStress()
463 pPg->pgno, pgno, in sqlite3PcacheFetchStress()
467 pcacheTrace(("%p.SPILL %d\n",pCache,pPg->pgno)); in sqlite3PcacheFetchStress()
468 rc = pCache->xStress(pCache->pStress, pPg); in sqlite3PcacheFetchStress()