Lines Matching refs:nCell
1503 int nCell; /* Number of cells on the page */ in defragmentPage() local
1519 nCell = pPage->nCell; in defragmentPage()
1520 assert( nCell==get2byte(&data[hdr+3]) || CORRUPT_DB ); in defragmentPage()
1521 iCellFirst = cellOffset + 2*nCell; in defragmentPage()
1536 u8 *pEnd = &data[cellOffset + nCell*2]; in defragmentPage()
1570 if( nCell>0 ){ in defragmentPage()
1574 for(i=0; i<nCell; i++){ in defragmentPage()
1718 gap = pPage->cellOffset + 2*pPage->nCell; in allocateSpace()
1764 assert( pPage->nCell>0 || CORRUPT_DB ); in allocateSpace()
1992 iCellFirst = hdr + 8 + pPage->childPtrSize + 2*pPage->nCell; in btreeComputeFreeSpace()
2058 iCellFirst = pPage->cellOffset + 2*pPage->nCell; in btreeCellSizeCheck()
2064 for(i=0; i<pPage->nCell; i++){ in btreeCellSizeCheck()
2117 pPage->nCell = get2byte(&data[3]); in btreeInitPage()
2118 if( pPage->nCell>MX_CELL(pBt) ){ in btreeInitPage()
2122 testcase( pPage->nCell==MX_CELL(pBt) ); in btreeInitPage()
2127 assert( pPage->nCell>0 in btreeInitPage()
2170 pPage->nCell = 0; in zeroPage()
2295 if( pCur && ((*ppPage)->nCell<1 || (*ppPage)->intKey!=pCur->curIntKey) ){ in getAndInitPage()
3669 int nCell; /* Number of cells in page pPage */ in setChildPtrmaps() local
3677 nCell = pPage->nCell; in setChildPtrmaps()
3679 for(i=0; i<nCell; i++){ in setChildPtrmaps()
3723 int nCell; in modifyPagePointer() local
3728 nCell = pPage->nCell; in modifyPagePointer()
3730 for(i=0; i<nCell; i++){ in modifyPagePointer()
3755 if( i==nCell ){ in modifyPagePointer()
4959 if( pCur->ix>=pPage->nCell ){ in accessPayload()
5209 assert( pCur->ix<pCur->pPage->nCell || CORRUPT_DB ); in fetchPayload()
5282 assert( iIdx<=pParent->nCell ); in assertParentIndex()
5283 if( iIdx==pParent->nCell ){ in assertParentIndex()
5312 testcase( pCur->aiIdx[pCur->iPage-1] > pCur->apPage[pCur->iPage-1]->nCell ); in moveToParent()
5406 if( pRoot->nCell>0 ){ in moveToRoot()
5436 assert( pCur->ix<pPage->nCell ); in moveToLeftmost()
5462 pCur->ix = pPage->nCell; in moveToRightmost()
5466 pCur->ix = pPage->nCell-1; in moveToRightmost()
5483 assert( pCur->pPage->nCell>0 ); in sqlite3BtreeFirst()
5487 assert( pCur->pgnoRoot==0 || pCur->pPage->nCell==0 ); in sqlite3BtreeFirst()
5511 assert( pCur->aiIdx[ii]==pCur->apPage[ii]->nCell ); in sqlite3BtreeLast()
5513 assert( pCur->ix==pCur->pPage->nCell-1 || CORRUPT_DB ); in sqlite3BtreeLast()
5514 testcase( pCur->ix!=pCur->pPage->nCell-1 ); in sqlite3BtreeLast()
5533 assert( pCur->pgnoRoot==0 || pCur->pPage->nCell==0 ); in sqlite3BtreeLast()
5615 assert( pCur->pgnoRoot==0 || pCur->pPage->nCell==0 ); in sqlite3BtreeTableMoveto()
5624 assert( pCur->pPage->nCell > 0 ); in sqlite3BtreeTableMoveto()
5640 assert( pPage->nCell>0 ); in sqlite3BtreeTableMoveto()
5643 upr = pPage->nCell-1; in sqlite3BtreeTableMoveto()
5683 assert( pCur->ix<pCur->pPage->nCell ); in sqlite3BtreeTableMoveto()
5690 if( lwr>=pPage->nCell ){ in sqlite3BtreeTableMoveto()
5729 int nCell; /* Size of the pCell cell in bytes */ in indexCellCompare() local
5732 nCell = pCell[0]; in indexCellCompare()
5733 if( nCell<=pPage->max1bytePayload ){ in indexCellCompare()
5737 testcase( pCell+nCell+1==pPage->aDataEnd ); in indexCellCompare()
5738 c = xRecordCompare(nCell, (void*)&pCell[1], pIdxKey); in indexCellCompare()
5740 && (nCell = ((nCell&0x7f)<<7) + pCell[1])<=pPage->maxLocal in indexCellCompare()
5744 testcase( pCell+nCell+2==pPage->aDataEnd ); in indexCellCompare()
5745 c = xRecordCompare(nCell, (void*)&pCell[2], pIdxKey); in indexCellCompare()
5763 if( pCur->aiIdx[i]<pPage->nCell ) return 0; in cursorOnLastPage()
5835 if( pCur->ix==pCur->pPage->nCell-1 in sqlite3BtreeIndexMoveto()
5858 assert( pCur->pgnoRoot==0 || pCur->pPage->nCell==0 ); in sqlite3BtreeIndexMoveto()
5869 assert( pCur->pPage->nCell > 0 ); in sqlite3BtreeIndexMoveto()
5884 assert( pPage->nCell>0 ); in sqlite3BtreeIndexMoveto()
5887 upr = pPage->nCell-1; in sqlite3BtreeIndexMoveto()
5890 int nCell; /* Size of the pCell cell in bytes */ in sqlite3BtreeIndexMoveto() local
5901 nCell = pCell[0]; in sqlite3BtreeIndexMoveto()
5902 if( nCell<=pPage->max1bytePayload ){ in sqlite3BtreeIndexMoveto()
5906 testcase( pCell+nCell+1==pPage->aDataEnd ); in sqlite3BtreeIndexMoveto()
5907 c = xRecordCompare(nCell, (void*)&pCell[1], pIdxKey); in sqlite3BtreeIndexMoveto()
5909 && (nCell = ((nCell&0x7f)<<7) + pCell[1])<=pPage->maxLocal in sqlite3BtreeIndexMoveto()
5913 testcase( pCell+nCell+2==pPage->aDataEnd ); in sqlite3BtreeIndexMoveto()
5914 c = xRecordCompare(nCell, (void*)&pCell[2], pIdxKey); in sqlite3BtreeIndexMoveto()
5929 nCell = (int)pCur->info.nKey; in sqlite3BtreeIndexMoveto()
5930 testcase( nCell<0 ); /* True if key size is 2^32 or more */ in sqlite3BtreeIndexMoveto()
5931 testcase( nCell==0 ); /* Invalid key size: 0x80 0x80 0x00 */ in sqlite3BtreeIndexMoveto()
5932 testcase( nCell==1 ); /* Invalid key size: 0x80 0x80 0x01 */ in sqlite3BtreeIndexMoveto()
5933 testcase( nCell==2 ); /* Minimum legal index key size */ in sqlite3BtreeIndexMoveto()
5934 if( nCell<2 || nCell/pCur->pBt->usableSize>pCur->pBt->nPage ){ in sqlite3BtreeIndexMoveto()
5938 pCellKey = sqlite3Malloc( nCell+nOverrun ); in sqlite3BtreeIndexMoveto()
5944 rc = accessPayload(pCur, 0, nCell, (unsigned char*)pCellKey, 0); in sqlite3BtreeIndexMoveto()
5945 memset(((u8*)pCellKey)+nCell,0,nOverrun); /* Fix uninit warnings */ in sqlite3BtreeIndexMoveto()
5951 c = sqlite3VdbeRecordCompare(nCell, pCellKey, pIdxKey); in sqlite3BtreeIndexMoveto()
5977 assert( pCur->ix<pCur->pPage->nCell || CORRUPT_DB ); in sqlite3BtreeIndexMoveto()
5983 if( lwr>=pPage->nCell ){ in sqlite3BtreeIndexMoveto()
6032 n = pCur->pPage->nCell; in sqlite3BtreeRowCountEst()
6034 n *= pCur->apPage[i]->nCell; in sqlite3BtreeRowCountEst()
6086 if( idx>=pPage->nCell ){ in btreeNext()
6099 }while( pCur->ix>=pPage->nCell ); in btreeNext()
6121 if( (++pCur->ix)>=pPage->nCell ){ in sqlite3BtreeNext()
6998 assert( idx<pPage->nCell ); in dropCell()
7019 pPage->nCell--; in dropCell()
7020 if( pPage->nCell==0 ){ in dropCell()
7027 memmove(ptr, ptr+2, 2*(pPage->nCell - idx)); in dropCell()
7028 put2byte(&data[hdr+3], pPage->nCell); in dropCell()
7062 assert( i>=0 && i<=pPage->nCell+pPage->nOverflow ); in insertCell()
7064 assert( pPage->nCell<=MX_CELL(pPage->pBt) || CORRUPT_DB ); in insertCell()
7107 assert( idx >= pPage->cellOffset+2*pPage->nCell+2 || CORRUPT_DB ); in insertCell()
7122 memmove(pIns+2, pIns, 2*(pPage->nCell - i)); in insertCell()
7124 pPage->nCell++; in insertCell()
7127 assert( get2byte(&data[pPage->hdrOffset+3])==pPage->nCell || CORRUPT_DB ); in insertCell()
7224 int nCell; /* Number of cells in apCell[] */ member
7237 assert( idx>=0 && idx+N<=p->nCell ); in populateCellCache()
7255 assert( N>=0 && N<p->nCell ); in computeCellSize()
7261 assert( N>=0 && N<p->nCell ); in cachedCellSize()
7282 int nCell, /* Final number of cells on page */ in rebuildPage() argument
7291 int iEnd = i+nCell; /* Loop terminator */ in rebuildPage()
7335 pPg->nCell = nCell; in rebuildPage()
7339 put2byte(&aData[hdr+3], pPg->nCell); in rebuildPage()
7375 int nCell, /* Number of cells to add to pPg */ in pageInsertArray() argument
7381 int iEnd = iFirst + nCell; /* End of loop. One past last cell to ins */ in pageInsertArray()
7437 int nCell, /* Cells to delete */ in pageFreeArray() argument
7445 int iEnd = iFirst + nCell; in pageFreeArray()
7503 int nCell = pPg->nCell; /* Cells stored on pPg */ in editPage() local
7507 int iOldEnd = iOld + pPg->nCell + pPg->nOverflow; in editPage()
7516 assert( nCell>=0 ); in editPage()
7519 if( NEVER(nShift>nCell) ) return SQLITE_CORRUPT_BKPT; in editPage()
7520 memmove(pPg->aCellIdx, &pPg->aCellIdx[nShift*2], nCell*2); in editPage()
7521 nCell -= nShift; in editPage()
7525 assert( nCell>=nTail ); in editPage()
7526 nCell -= nTail; in editPage()
7536 assert( (iOld-iNew)<nNew || nCell==0 || CORRUPT_DB ); in editPage()
7539 memmove(&pCellptr[nAdd*2], pCellptr, nCell*2); in editPage()
7544 nCell += nAdd; in editPage()
7552 if( nCell>iCell ){ in editPage()
7553 memmove(&pCellptr[2], pCellptr, (nCell - iCell) * 2); in editPage()
7555 nCell++; in editPage()
7565 assert( nCell>=0 ); in editPage()
7566 pCellptr = &pPg->aCellIdx[nCell*2]; in editPage()
7569 iNew+nCell, nNew-nCell, pCArray in editPage()
7572 pPg->nCell = nNew; in editPage()
7575 put2byte(&aData[hdr+3], pPg->nCell); in editPage()
7632 if( pPage->nCell==0 ) return SQLITE_CORRUPT_BKPT; /* dbfuzz001.test */ in balance_quick()
7653 b.nCell = 1; in balance_quick()
7695 pCell = findCell(pPage, pPage->nCell-1); in balance_quick()
7703 insertCell(pParent, pParent->nCell, pSpace, (int)(pOut-pSpace), in balance_quick()
7733 for(j=0; j<pPage->nCell; j++){
7795 memcpy(&aTo[iToHdr], &aFrom[iFromHdr], pFrom->cellOffset + 2*pFrom->nCell); in copyNodeContent()
7923 i = pParent->nOverflow + pParent->nCell; in balance_nonroot()
7938 if( (i+nxDiv-pParent->nOverflow)==pParent->nCell ){ in balance_nonroot()
7959 nMaxCells += apOld[i]->nCell + ArraySize(pParent->apOvfl); in balance_nonroot()
8042 int limit = pOld->nCell; in balance_nonroot()
8047 VVA_ONLY( int nCellAtStart = b.nCell; ) in balance_nonroot()
8074 memset(&b.szCell[b.nCell], 0, sizeof(b.szCell[0])*(limit+pOld->nOverflow)); in balance_nonroot()
8082 b.apCell[b.nCell] = aData + (maskPage & get2byteAligned(piCell)); in balance_nonroot()
8084 b.nCell++; in balance_nonroot()
8088 b.apCell[b.nCell] = pOld->apOvfl[k]; in balance_nonroot()
8089 b.nCell++; in balance_nonroot()
8092 piEnd = aData + pOld->cellOffset + 2*pOld->nCell; in balance_nonroot()
8094 assert( b.nCell<nMaxCells ); in balance_nonroot()
8095 b.apCell[b.nCell] = aData + (maskPage & get2byteAligned(piCell)); in balance_nonroot()
8097 b.nCell++; in balance_nonroot()
8099 assert( (b.nCell-nCellAtStart)==(pOld->nCell+pOld->nOverflow) ); in balance_nonroot()
8101 cntOld[i] = b.nCell; in balance_nonroot()
8105 assert( b.nCell<nMaxCells ); in balance_nonroot()
8106 b.szCell[b.nCell] = sz; in balance_nonroot()
8112 b.apCell[b.nCell] = pTemp+leafCorrection; in balance_nonroot()
8114 b.szCell[b.nCell] = b.szCell[b.nCell] - leafCorrection; in balance_nonroot()
8120 memcpy(b.apCell[b.nCell], &pOld->aData[8], 4); in balance_nonroot()
8123 while( b.szCell[b.nCell]<4 ){ in balance_nonroot()
8126 assert( b.szCell[b.nCell]==3 || CORRUPT_DB ); in balance_nonroot()
8127 assert( b.apCell[b.nCell]==&aSpace1[iSpace1-3] || CORRUPT_DB ); in balance_nonroot()
8129 b.szCell[b.nCell]++; in balance_nonroot()
8132 b.nCell++; in balance_nonroot()
8180 cntNew[k-1] = b.nCell; in balance_nonroot()
8185 if( cntNew[i]<b.nCell ){ in balance_nonroot()
8194 while( cntNew[i]<b.nCell ){ in balance_nonroot()
8200 if( cntNew[i]<b.nCell ){ in balance_nonroot()
8208 if( cntNew[i]>=b.nCell ){ in balance_nonroot()
8265 assert( cntNew[0]>0 || (pParent->pgno==1 && pParent->nCell==0) || CORRUPT_DB); in balance_nonroot()
8267 apOld[0]->pgno, apOld[0]->nCell, in balance_nonroot()
8268 nOld>=2 ? apOld[1]->pgno : 0, nOld>=2 ? apOld[1]->nCell : 0, in balance_nonroot()
8269 nOld>=3 ? apOld[2]->pgno : 0, nOld>=3 ? apOld[2]->nCell : 0 in balance_nonroot()
8296 cntOld[i] = b.nCell; in balance_nonroot()
8395 int cntOldNext = pNew->nCell + pNew->nOverflow; in balance_nonroot()
8399 for(i=0; i<b.nCell; i++){ in balance_nonroot()
8406 cntOldNext += pOld->nCell + pOld->nOverflow + !leafData; in balance_nonroot()
8539 iOld = iPg<nOld ? (cntOld[iPg-1] + !leafData) : b.nCell; in balance_nonroot()
8549 assert( apNew[iPg]->nCell==nNewCell ); in balance_nonroot()
8559 if( isRoot && pParent->nCell==0 && pParent->hdrOffset<=apNew[0]->nFree ){ in balance_nonroot()
8580 - apNew[0]->nCell*2) in balance_nonroot()
8597 nOld, nNew, b.nCell)); in balance_nonroot()
8679 assert( pChild->nCell==pRoot->nCell || CORRUPT_DB ); in balance_deeper()
8789 && pPage->aiOvfl[0]==pPage->nCell in balance()
8791 && pParent->nCell==iIdx in balance()
9185 if( idx>=pPage->nCell ){ in sqlite3BtreeInsert()
9223 }else if( loc<0 && pPage->nCell>0 ){ in sqlite3BtreeInsert()
9232 assert( rc!=SQLITE_OK || pPage->nCell>0 || pPage->nOverflow>0 ); in sqlite3BtreeInsert()
9448 if( pPage->nCell<=iCellIdx ){ in sqlite3BtreeDelete()
9477 || pPage->nCell==1 /* See dbfuzz001.test for a test case */ in sqlite3BtreeDelete()
9530 int nCell; in sqlite3BtreeDelete() local
9543 pCell = findCell(pLeaf, pLeaf->nCell-1); in sqlite3BtreeDelete()
9545 nCell = pLeaf->xCellSize(pLeaf, pCell); in sqlite3BtreeDelete()
9546 assert( MX_CELL_SIZE(pBt) >= nCell ); in sqlite3BtreeDelete()
9551 insertCell(pPage, iCellIdx, pCell-4, nCell+4, pTmp, n, &rc); in sqlite3BtreeDelete()
9553 dropCell(pLeaf, pLeaf->nCell-1, nCell, &rc); in sqlite3BtreeDelete()
9595 assert( (pPage->nCell>0 || CORRUPT_DB) && iCellIdx<=pPage->nCell ); in sqlite3BtreeDelete()
9597 if( iCellIdx>=pPage->nCell ){ in sqlite3BtreeDelete()
9599 pCur->ix = pPage->nCell-1; in sqlite3BtreeDelete()
9809 for(i=0; i<pPage->nCell; i++){ in clearDatabasePage()
9825 *pnChange += pPage->nCell; in clearDatabasePage()
10099 nEntry += pPage->nCell; in sqlite3BtreeCount()
10120 }while ( pCur->ix>=pCur->pPage->nCell ); in sqlite3BtreeCount()
10130 if( iIdx==pPage->nCell ){ in sqlite3BtreeCount()
10401 int nCell; /* Number of cells */ in checkTreePage() local
10458 nCell = get2byte(&data[hdr+3]); in checkTreePage()
10459 assert( pPage->nCell==nCell ); in checkTreePage()
10465 pCellIdx = &data[cellStart + 2*(nCell-1)]; in checkTreePage()
10487 for(i=nCell-1; i>=0 && pCheck->mxErr; i--){ in checkTreePage()
10564 for(i=nCell-1; i>=0; i--){ in checkTreePage()