pCheck 11513 ext/sqlite3/libsqlite/sqlite3.c ExprList *pCheck; /* All CHECK constraints */ pCheck 61414 ext/sqlite3/libsqlite/sqlite3.c IntegrityCk *pCheck, pCheck 61420 ext/sqlite3/libsqlite/sqlite3.c if( !pCheck->mxErr ) return; pCheck 61421 ext/sqlite3/libsqlite/sqlite3.c pCheck->mxErr--; pCheck 61422 ext/sqlite3/libsqlite/sqlite3.c pCheck->nErr++; pCheck 61424 ext/sqlite3/libsqlite/sqlite3.c if( pCheck->errMsg.nChar ){ pCheck 61425 ext/sqlite3/libsqlite/sqlite3.c sqlite3StrAccumAppend(&pCheck->errMsg, "\n", 1); pCheck 61427 ext/sqlite3/libsqlite/sqlite3.c if( pCheck->zPfx ){ pCheck 61428 ext/sqlite3/libsqlite/sqlite3.c sqlite3_snprintf(sizeof(zBuf), zBuf, pCheck->zPfx, pCheck->v1, pCheck->v2); pCheck 61429 ext/sqlite3/libsqlite/sqlite3.c sqlite3StrAccumAppendAll(&pCheck->errMsg, zBuf); pCheck 61431 ext/sqlite3/libsqlite/sqlite3.c sqlite3VXPrintf(&pCheck->errMsg, 1, zFormat, ap); pCheck 61433 ext/sqlite3/libsqlite/sqlite3.c if( pCheck->errMsg.accError==STRACCUM_NOMEM ){ pCheck 61434 ext/sqlite3/libsqlite/sqlite3.c pCheck->mallocFailed = 1; pCheck 61445 ext/sqlite3/libsqlite/sqlite3.c static int getPageReferenced(IntegrityCk *pCheck, Pgno iPg){ pCheck 61446 ext/sqlite3/libsqlite/sqlite3.c assert( iPg<=pCheck->nPage && sizeof(pCheck->aPgRef[0])==1 ); pCheck 61447 ext/sqlite3/libsqlite/sqlite3.c return (pCheck->aPgRef[iPg/8] & (1 << (iPg & 0x07))); pCheck 61453 ext/sqlite3/libsqlite/sqlite3.c static void setPageReferenced(IntegrityCk *pCheck, Pgno iPg){ pCheck 61454 ext/sqlite3/libsqlite/sqlite3.c assert( iPg<=pCheck->nPage && sizeof(pCheck->aPgRef[0])==1 ); pCheck 61455 ext/sqlite3/libsqlite/sqlite3.c pCheck->aPgRef[iPg/8] |= (1 << (iPg & 0x07)); pCheck 61467 ext/sqlite3/libsqlite/sqlite3.c static int checkRef(IntegrityCk *pCheck, Pgno iPage){ pCheck 61469 ext/sqlite3/libsqlite/sqlite3.c if( iPage>pCheck->nPage ){ pCheck 61470 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, "invalid page number %d", iPage); pCheck 61473 ext/sqlite3/libsqlite/sqlite3.c if( getPageReferenced(pCheck, iPage) ){ pCheck 61474 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, "2nd reference to page %d", iPage); pCheck 61477 ext/sqlite3/libsqlite/sqlite3.c setPageReferenced(pCheck, iPage); pCheck 61488 ext/sqlite3/libsqlite/sqlite3.c IntegrityCk *pCheck, /* Integrity check context */ pCheck 61497 ext/sqlite3/libsqlite/sqlite3.c rc = ptrmapGet(pCheck->pBt, iChild, &ePtrmapType, &iPtrmapParent); pCheck 61499 ext/sqlite3/libsqlite/sqlite3.c if( rc==SQLITE_NOMEM || rc==SQLITE_IOERR_NOMEM ) pCheck->mallocFailed = 1; pCheck 61500 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, "Failed to read ptrmap key=%d", iChild); pCheck 61505 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, pCheck 61517 ext/sqlite3/libsqlite/sqlite3.c IntegrityCk *pCheck, /* Integrity checking context */ pCheck 61525 ext/sqlite3/libsqlite/sqlite3.c while( N-- > 0 && pCheck->mxErr ){ pCheck 61529 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, pCheck 61534 ext/sqlite3/libsqlite/sqlite3.c if( checkRef(pCheck, iPage) ) break; pCheck 61535 ext/sqlite3/libsqlite/sqlite3.c if( sqlite3PagerGet(pCheck->pPager, (Pgno)iPage, &pOvflPage) ){ pCheck 61536 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, "failed to get page %d", iPage); pCheck 61543 ext/sqlite3/libsqlite/sqlite3.c if( pCheck->pBt->autoVacuum ){ pCheck 61544 ext/sqlite3/libsqlite/sqlite3.c checkPtrmap(pCheck, iPage, PTRMAP_FREEPAGE, 0); pCheck 61547 ext/sqlite3/libsqlite/sqlite3.c if( n>(int)pCheck->pBt->usableSize/4-2 ){ pCheck 61548 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, pCheck 61555 ext/sqlite3/libsqlite/sqlite3.c if( pCheck->pBt->autoVacuum ){ pCheck 61556 ext/sqlite3/libsqlite/sqlite3.c checkPtrmap(pCheck, iFreePage, PTRMAP_FREEPAGE, 0); pCheck 61559 ext/sqlite3/libsqlite/sqlite3.c checkRef(pCheck, iFreePage); pCheck 61570 ext/sqlite3/libsqlite/sqlite3.c if( pCheck->pBt->autoVacuum && N>0 ){ pCheck 61572 ext/sqlite3/libsqlite/sqlite3.c checkPtrmap(pCheck, i, PTRMAP_OVERFLOW2, iPage); pCheck 61653 ext/sqlite3/libsqlite/sqlite3.c IntegrityCk *pCheck, /* Context for the sanity check */ pCheck 61669 ext/sqlite3/libsqlite/sqlite3.c const char *saved_zPfx = pCheck->zPfx; pCheck 61670 ext/sqlite3/libsqlite/sqlite3.c int saved_v1 = pCheck->v1; pCheck 61671 ext/sqlite3/libsqlite/sqlite3.c int saved_v2 = pCheck->v2; pCheck 61675 ext/sqlite3/libsqlite/sqlite3.c pBt = pCheck->pBt; pCheck 61678 ext/sqlite3/libsqlite/sqlite3.c if( checkRef(pCheck, iPage) ) return 0; pCheck 61679 ext/sqlite3/libsqlite/sqlite3.c pCheck->zPfx = "Page %d: "; pCheck 61680 ext/sqlite3/libsqlite/sqlite3.c pCheck->v1 = iPage; pCheck 61682 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, pCheck 61693 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, pCheck 61703 ext/sqlite3/libsqlite/sqlite3.c for(i=0; i<pPage->nCell && pCheck->mxErr; i++){ pCheck 61710 ext/sqlite3/libsqlite/sqlite3.c pCheck->zPfx = "On tree page %d cell %d: "; pCheck 61711 ext/sqlite3/libsqlite/sqlite3.c pCheck->v1 = iPage; pCheck 61712 ext/sqlite3/libsqlite/sqlite3.c pCheck->v2 = i; pCheck 61722 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, pCheck 61734 ext/sqlite3/libsqlite/sqlite3.c checkPtrmap(pCheck, pgnoOvfl, PTRMAP_OVERFLOW1, iPage); pCheck 61737 ext/sqlite3/libsqlite/sqlite3.c checkList(pCheck, 0, pgnoOvfl, nPage); pCheck 61746 ext/sqlite3/libsqlite/sqlite3.c checkPtrmap(pCheck, pgno, PTRMAP_BTREE, iPage); pCheck 61749 ext/sqlite3/libsqlite/sqlite3.c d2 = checkTreePage(pCheck, pgno, &nMinKey, i==0?NULL:&nMaxKey); pCheck 61751 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, "Child page depth differs"); pCheck 61759 ext/sqlite3/libsqlite/sqlite3.c pCheck->zPfx = "On page %d at right child: "; pCheck 61760 ext/sqlite3/libsqlite/sqlite3.c pCheck->v1 = iPage; pCheck 61763 ext/sqlite3/libsqlite/sqlite3.c checkPtrmap(pCheck, pgno, PTRMAP_BTREE, iPage); pCheck 61766 ext/sqlite3/libsqlite/sqlite3.c checkTreePage(pCheck, pgno, NULL, !pPage->nCell?NULL:&nMaxKey); pCheck 61772 ext/sqlite3/libsqlite/sqlite3.c pCheck->zPfx = "Page %d: "; pCheck 61773 ext/sqlite3/libsqlite/sqlite3.c pCheck->v1 = iPage; pCheck 61780 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, pCheck 61786 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, pCheck 61791 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, pCheck 61800 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, pCheck 61812 ext/sqlite3/libsqlite/sqlite3.c pCheck->zPfx = 0; pCheck 61814 ext/sqlite3/libsqlite/sqlite3.c pCheck->mallocFailed = 1; pCheck 61835 ext/sqlite3/libsqlite/sqlite3.c pCheck->zPfx = 0; pCheck 61836 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, pCheck 61869 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, pCheck 61884 ext/sqlite3/libsqlite/sqlite3.c checkAppendMsg(pCheck, pCheck 61893 ext/sqlite3/libsqlite/sqlite3.c pCheck->zPfx = saved_zPfx; pCheck 61894 ext/sqlite3/libsqlite/sqlite3.c pCheck->v1 = saved_v1; pCheck 61895 ext/sqlite3/libsqlite/sqlite3.c pCheck->v2 = saved_v2; pCheck 91438 ext/sqlite3/libsqlite/sqlite3.c sqlite3ExprListDelete(db, pTable->pCheck); pCheck 92161 ext/sqlite3/libsqlite/sqlite3.c pTab->pCheck = sqlite3ExprListAppend(pParse, pTab->pCheck, pCheckExpr); pCheck 92163 ext/sqlite3/libsqlite/sqlite3.c sqlite3ExprListSetName(pParse, pTab->pCheck, &pParse->constraintName, 1); pCheck 92661 ext/sqlite3/libsqlite/sqlite3.c if( p->pCheck ){ pCheck 92662 ext/sqlite3/libsqlite/sqlite3.c sqlite3ResolveSelfReference(pParse, p, NC_IsCheck, 0, p->pCheck); pCheck 100862 ext/sqlite3/libsqlite/sqlite3.c if( pTab->pCheck && (db->flags & SQLITE_IgnoreChecks)==0 ){ pCheck 100863 ext/sqlite3/libsqlite/sqlite3.c ExprList *pCheck = pTab->pCheck; pCheck 100866 ext/sqlite3/libsqlite/sqlite3.c for(i=0; i<pCheck->nExpr; i++){ pCheck 100868 ext/sqlite3/libsqlite/sqlite3.c sqlite3ExprIfTrue(pParse, pCheck->a[i].pExpr, allOk, SQLITE_JUMPIFNULL); pCheck 100872 ext/sqlite3/libsqlite/sqlite3.c char *zName = pCheck->a[i].zName; pCheck 101538 ext/sqlite3/libsqlite/sqlite3.c if( pDest->pCheck && sqlite3ExprListCompare(pSrc->pCheck,pDest->pCheck,-1) ){ pCheck 147087 ext/sqlite3/libsqlite/sqlite3.c sqlite3_stmt *pCheck = 0; /* Statement to query database with */ pCheck 147090 ext/sqlite3/libsqlite/sqlite3.c rc = fts3SqlStmt(p, SQL_SEGMENT_IS_APPENDABLE, &pCheck, 0); pCheck 147092 ext/sqlite3/libsqlite/sqlite3.c sqlite3_bind_int64(pCheck, 1, iEnd); pCheck 147093 ext/sqlite3/libsqlite/sqlite3.c if( SQLITE_ROW==sqlite3_step(pCheck) ) bRes = 1; pCheck 147094 ext/sqlite3/libsqlite/sqlite3.c rc = sqlite3_reset(pCheck);