pGroup 39997 ext/sqlite3/libsqlite/sqlite3.c PGroup *pGroup; /* PGroup this cache belongs to */ pGroup 40214 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pCache->pGroup->mutex) ); pGroup 40215 ext/sqlite3/libsqlite/sqlite3.c pcache1LeaveMutex(pCache->pGroup); pGroup 40228 ext/sqlite3/libsqlite/sqlite3.c pcache1EnterMutex(pCache->pGroup); pGroup 40234 ext/sqlite3/libsqlite/sqlite3.c pCache->pGroup->nCurrentPage++; pGroup 40251 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(p->pCache->pGroup->mutex) ); pGroup 40257 ext/sqlite3/libsqlite/sqlite3.c pCache->pGroup->nCurrentPage--; pGroup 40317 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(p->pGroup->mutex) ); pGroup 40324 ext/sqlite3/libsqlite/sqlite3.c pcache1LeaveMutex(p->pGroup); pGroup 40328 ext/sqlite3/libsqlite/sqlite3.c pcache1EnterMutex(p->pGroup); pGroup 40355 ext/sqlite3/libsqlite/sqlite3.c PGroup *pGroup; pGroup 40360 ext/sqlite3/libsqlite/sqlite3.c pGroup = pCache->pGroup; pGroup 40361 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pLruNext || pPage==pGroup->pLruTail ); pGroup 40362 ext/sqlite3/libsqlite/sqlite3.c assert( pPage->pLruPrev || pPage==pGroup->pLruHead ); pGroup 40363 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pGroup->mutex) ); pGroup 40367 ext/sqlite3/libsqlite/sqlite3.c pGroup->pLruHead = pPage->pLruNext; pGroup 40372 ext/sqlite3/libsqlite/sqlite3.c pGroup->pLruTail = pPage->pLruPrev; pGroup 40392 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pCache->pGroup->mutex) ); pGroup 40404 ext/sqlite3/libsqlite/sqlite3.c static void pcache1EnforceMaxPage(PGroup *pGroup){ pGroup 40405 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pGroup->mutex) ); pGroup 40406 ext/sqlite3/libsqlite/sqlite3.c while( pGroup->nCurrentPage>pGroup->nMaxPage && pGroup->pLruTail ){ pGroup 40407 ext/sqlite3/libsqlite/sqlite3.c PgHdr1 *p = pGroup->pLruTail; pGroup 40408 ext/sqlite3/libsqlite/sqlite3.c assert( p->pCache->pGroup==pGroup ); pGroup 40429 ext/sqlite3/libsqlite/sqlite3.c assert( sqlite3_mutex_held(pCache->pGroup->mutex) ); pGroup 40488 ext/sqlite3/libsqlite/sqlite3.c PGroup *pGroup; /* The group the new page cache will belong to */ pGroup 40516 ext/sqlite3/libsqlite/sqlite3.c pGroup = (PGroup*)&pCache[1]; pGroup 40517 ext/sqlite3/libsqlite/sqlite3.c pGroup->mxPinned = 10; pGroup 40519 ext/sqlite3/libsqlite/sqlite3.c pGroup = &pcache1.grp; pGroup 40521 ext/sqlite3/libsqlite/sqlite3.c pCache->pGroup = pGroup; pGroup 40525 ext/sqlite3/libsqlite/sqlite3.c pcache1EnterMutex(pGroup); pGroup 40529 ext/sqlite3/libsqlite/sqlite3.c pGroup->nMinPage += pCache->nMin; pGroup 40530 ext/sqlite3/libsqlite/sqlite3.c pGroup->mxPinned = pGroup->nMaxPage + 10 - pGroup->nMinPage; pGroup 40532 ext/sqlite3/libsqlite/sqlite3.c pcache1LeaveMutex(pGroup); pGroup 40549 ext/sqlite3/libsqlite/sqlite3.c PGroup *pGroup = pCache->pGroup; pGroup 40550 ext/sqlite3/libsqlite/sqlite3.c pcache1EnterMutex(pGroup); pGroup 40551 ext/sqlite3/libsqlite/sqlite3.c pGroup->nMaxPage += (nMax - pCache->nMax); pGroup 40552 ext/sqlite3/libsqlite/sqlite3.c pGroup->mxPinned = pGroup->nMaxPage + 10 - pGroup->nMinPage; pGroup 40555 ext/sqlite3/libsqlite/sqlite3.c pcache1EnforceMaxPage(pGroup); pGroup 40556 ext/sqlite3/libsqlite/sqlite3.c pcache1LeaveMutex(pGroup); pGroup 40568 ext/sqlite3/libsqlite/sqlite3.c PGroup *pGroup = pCache->pGroup; pGroup 40570 ext/sqlite3/libsqlite/sqlite3.c pcache1EnterMutex(pGroup); pGroup 40571 ext/sqlite3/libsqlite/sqlite3.c savedMaxPage = pGroup->nMaxPage; pGroup 40572 ext/sqlite3/libsqlite/sqlite3.c pGroup->nMaxPage = 0; pGroup 40573 ext/sqlite3/libsqlite/sqlite3.c pcache1EnforceMaxPage(pGroup); pGroup 40574 ext/sqlite3/libsqlite/sqlite3.c pGroup->nMaxPage = savedMaxPage; pGroup 40575 ext/sqlite3/libsqlite/sqlite3.c pcache1LeaveMutex(pGroup); pGroup 40585 ext/sqlite3/libsqlite/sqlite3.c pcache1EnterMutex(pCache->pGroup); pGroup 40587 ext/sqlite3/libsqlite/sqlite3.c pcache1LeaveMutex(pCache->pGroup); pGroup 40606 ext/sqlite3/libsqlite/sqlite3.c PGroup *pGroup = pCache->pGroup; pGroup 40612 ext/sqlite3/libsqlite/sqlite3.c assert( pGroup->mxPinned == pGroup->nMaxPage + 10 - pGroup->nMinPage ); pGroup 40615 ext/sqlite3/libsqlite/sqlite3.c nPinned>=pGroup->mxPinned pGroup 40626 ext/sqlite3/libsqlite/sqlite3.c if( pCache->bPurgeable && pGroup->pLruTail && ( pGroup 40628 ext/sqlite3/libsqlite/sqlite3.c || pGroup->nCurrentPage>=pGroup->nMaxPage pGroup 40632 ext/sqlite3/libsqlite/sqlite3.c pPage = pGroup->pLruTail; pGroup 40649 ext/sqlite3/libsqlite/sqlite3.c pGroup->nCurrentPage -= (pOther->bPurgeable - pCache->bPurgeable); pGroup 40748 ext/sqlite3/libsqlite/sqlite3.c pcache1EnterMutex(pCache->pGroup); pGroup 40762 ext/sqlite3/libsqlite/sqlite3.c pcache1LeaveMutex(pCache->pGroup); pGroup 40779 ext/sqlite3/libsqlite/sqlite3.c PGroup *pGroup = pCache->pGroup; pGroup 40782 ext/sqlite3/libsqlite/sqlite3.c pcache1EnterMutex(pGroup); pGroup 40788 ext/sqlite3/libsqlite/sqlite3.c assert( pGroup->pLruHead!=pPage && pGroup->pLruTail!=pPage ); pGroup 40791 ext/sqlite3/libsqlite/sqlite3.c if( reuseUnlikely || pGroup->nCurrentPage>pGroup->nMaxPage ){ pGroup 40796 ext/sqlite3/libsqlite/sqlite3.c if( pGroup->pLruHead ){ pGroup 40797 ext/sqlite3/libsqlite/sqlite3.c pGroup->pLruHead->pLruPrev = pPage; pGroup 40798 ext/sqlite3/libsqlite/sqlite3.c pPage->pLruNext = pGroup->pLruHead; pGroup 40799 ext/sqlite3/libsqlite/sqlite3.c pGroup->pLruHead = pPage; pGroup 40801 ext/sqlite3/libsqlite/sqlite3.c pGroup->pLruTail = pPage; pGroup 40802 ext/sqlite3/libsqlite/sqlite3.c pGroup->pLruHead = pPage; pGroup 40808 ext/sqlite3/libsqlite/sqlite3.c pcache1LeaveMutex(pCache->pGroup); pGroup 40827 ext/sqlite3/libsqlite/sqlite3.c pcache1EnterMutex(pCache->pGroup); pGroup 40844 ext/sqlite3/libsqlite/sqlite3.c pcache1LeaveMutex(pCache->pGroup); pGroup 40856 ext/sqlite3/libsqlite/sqlite3.c pcache1EnterMutex(pCache->pGroup); pGroup 40861 ext/sqlite3/libsqlite/sqlite3.c pcache1LeaveMutex(pCache->pGroup); pGroup 40871 ext/sqlite3/libsqlite/sqlite3.c PGroup *pGroup = pCache->pGroup; pGroup 40873 ext/sqlite3/libsqlite/sqlite3.c pcache1EnterMutex(pGroup); pGroup 40875 ext/sqlite3/libsqlite/sqlite3.c assert( pGroup->nMaxPage >= pCache->nMax ); pGroup 40876 ext/sqlite3/libsqlite/sqlite3.c pGroup->nMaxPage -= pCache->nMax; pGroup 40877 ext/sqlite3/libsqlite/sqlite3.c assert( pGroup->nMinPage >= pCache->nMin ); pGroup 40878 ext/sqlite3/libsqlite/sqlite3.c pGroup->nMinPage -= pCache->nMin; pGroup 40879 ext/sqlite3/libsqlite/sqlite3.c pGroup->mxPinned = pGroup->nMaxPage + 10 - pGroup->nMinPage; pGroup 40880 ext/sqlite3/libsqlite/sqlite3.c pcache1EnforceMaxPage(pGroup); pGroup 40881 ext/sqlite3/libsqlite/sqlite3.c pcache1LeaveMutex(pGroup);