Lines Matching refs:pKeyInfo

16457     KeyInfo *pKeyInfo;     /* Used when p4type is P4_KEYINFO */  member
18609 KeyInfo *pKeyInfo; /* Collation and sort-order information */ member
23134 KeyInfo *pKeyInfo; /* Info about index keys needed by index cursors */ member
69701 struct KeyInfo *pKeyInfo; /* Arg passed to comparison function */
71006 KeyInfo *pKeyInfo = pCur->pKeyInfo;
71008 pIdxKey = sqlite3VdbeAllocUnpackedRecord(pKeyInfo);
71010 sqlite3VdbeRecordUnpack(pKeyInfo, (int)nKey, pKey, pIdxKey);
71011 if( pIdxKey->nField==0 || pIdxKey->nField>pKeyInfo->nAllField ){
71016 sqlite3DbFree(pCur->pKeyInfo->db, pIdxKey);
74782 struct KeyInfo *pKeyInfo, /* First arg to comparison function */
74798 assert( hasSharedCacheTableLock(p, iTable, pKeyInfo!=0, (wrFlag?2:1))
74821 pCur->pKeyInfo = pKeyInfo;
74849 struct KeyInfo *pKeyInfo, /* First arg to comparison function */
74854 rc = btreeCursor(p, iTable, wrFlag, pKeyInfo, pCur);
74862 struct KeyInfo *pKeyInfo, /* First arg to xCompare() */
74866 return btreeCursorWithLock(p, iTable, wrFlag, pKeyInfo, pCur);
74868 return btreeCursor(p, iTable, wrFlag, pKeyInfo, pCur);
75662 if( pRoot->isInit==0 || (pCur->pKeyInfo==0)!=pRoot->intKey ){
75839 assert( pCur->pKeyInfo==0 );
76070 assert( pCur->pKeyInfo!=0 );
79426 assert( (flags & BTREE_PREFORMAT)==0 || seekResult || pCur->pKeyInfo==0 );
79466 assert( hasSharedCacheTableLock(p, pCur->pgnoRoot, pCur->pKeyInfo!=0, 2) );
79473 assert( (flags & BTREE_PREFORMAT) || (pX->pKey==0)==(pCur->pKeyInfo==0) );
79475 if( pCur->pKeyInfo==0 ){
79534 r.pKeyInfo = pCur->pKeyInfo;
79691 if( pCur->pKeyInfo ){
79738 if( pDest->pKeyInfo==0 ) aOut += putVarint(aOut, iKey);
79854 assert( hasSharedCacheTableLock(p, pCur->pgnoRoot, pCur->pKeyInfo!=0, 2) );
79936 if( pCur->pKeyInfo==0 && p->hasIncrblobCur ){
83782 pRec->pKeyInfo = sqlite3KeyInfoOfIndex(p->pParse, pIdx);
83783 if( pRec->pKeyInfo ){
83784 assert( pRec->pKeyInfo->nAllField==nCol );
83785 assert( pRec->pKeyInfo->enc==ENC(db) );
84307 int nCol = pRec->pKeyInfo->nAllField;
84313 sqlite3KeyInfoUnref(pRec->pKeyInfo);
85981 KeyInfo *pKeyInfo;
85984 pKeyInfo = sqlite3KeyInfoOfIndex(pParse, pIdx);
85985 if( pKeyInfo ) sqlite3VdbeAppendP4(v, pKeyInfo, P4_KEYINFO);
86263 KeyInfo *pKeyInfo = pOp->p4.pKeyInfo;
86264 assert( pKeyInfo->aSortFlags!=0 );
86265 sqlite3_str_appendf(&x, "k(%d", pKeyInfo->nKeyField);
86266 for(j=0; j<pKeyInfo->nKeyField; j++){
86267 CollSeq *pColl = pKeyInfo->aColl[j];
86271 (pKeyInfo->aSortFlags[j] & KEYINFO_ORDER_DESC) ? "-" : "",
86272 (pKeyInfo->aSortFlags[j] & KEYINFO_ORDER_BIGNULL)? "N." : "",
88540 KeyInfo *pKeyInfo /* Description of the record */
88544 nByte = ROUND8P(sizeof(UnpackedRecord)) + sizeof(Mem)*(pKeyInfo->nKeyField+1);
88545 p = (UnpackedRecord *)sqlite3DbMallocRaw(pKeyInfo->db, nByte);
88548 assert( pKeyInfo->aSortFlags!=0 );
88549 p->pKeyInfo = pKeyInfo;
88550 p->nField = pKeyInfo->nKeyField + 1;
88560 KeyInfo *pKeyInfo, /* Information about the record format */
88581 pMem->enc = pKeyInfo->enc;
88582 pMem->db = pKeyInfo->db;
88598 assert( u<=pKeyInfo->nKeyField + 1 );
88625 KeyInfo *pKeyInfo;
88628 pKeyInfo = pPKey2->pKeyInfo;
88629 if( pKeyInfo->db==0 ) return 1;
88630 mem1.enc = pKeyInfo->enc;
88631 mem1.db = pKeyInfo->db;
88647 assert( pKeyInfo->nAllField>=pPKey2->nField || CORRUPT_DB );
88648 assert( pKeyInfo->aSortFlags!=0 );
88649 assert( pKeyInfo->nKeyField>0 );
88686 pKeyInfo->nAllField>i ? pKeyInfo->aColl[i] : 0);
88689 if( (pKeyInfo->aSortFlags[i] & KEYINFO_ORDER_BIGNULL)
88694 if( pKeyInfo->aSortFlags[i] & KEYINFO_ORDER_DESC ){
88718 if( pKeyInfo->db->mallocFailed ) return 1;
88737 const KeyInfo *pKeyInfo /* Compare size with this KeyInfo */
88753 assert( nField <= pKeyInfo->nAllField );
89060 KeyInfo *pKeyInfo;
89093 assert( pPKey2->pKeyInfo->nAllField>=pPKey2->nField
89095 assert( pPKey2->pKeyInfo->aSortFlags!=0 );
89096 assert( pPKey2->pKeyInfo->nKeyField>0 );
89163 || (pKeyInfo = pPKey2->pKeyInfo)->nAllField<=i
89167 }else if( pKeyInfo->aColl[i] ){
89168 mem1.enc = pKeyInfo->enc;
89169 mem1.db = pKeyInfo->db;
89173 &mem1, pRhs, pKeyInfo->aColl[i], &pPKey2->errCode
89218 int sortFlags = pPKey2->pKeyInfo->aSortFlags[i];
89254 || pPKey2->pKeyInfo->db->mallocFailed
89288 vdbeAssertFieldCountWithinLimits(nKey1, pKey1, pPKey2->pKeyInfo);
89382 vdbeAssertFieldCountWithinLimits(nKey1, pKey1, pPKey2->pKeyInfo);
89431 || pPKey2->pKeyInfo->db->mallocFailed
89455 if( p->pKeyInfo->nAllField<=13 ){
89457 if( p->pKeyInfo->aSortFlags[0] ){
89458 if( p->pKeyInfo->aSortFlags[0] & KEYINFO_ORDER_BIGNULL ){
89475 && p->pKeyInfo->aColl[0]==0
92012 KeyInfo *pKeyInfo,
92018 pRet = sqlite3VdbeAllocUnpackedRecord(pKeyInfo);
92020 memset(pRet->aMem, 0, sizeof(Mem)*(pKeyInfo->nKeyField+1));
92021 sqlite3VdbeRecordUnpack(pKeyInfo, nKey, pKey, pRet);
93330 if( len > 4000 && pC->pKeyInfo==0 ){
95042 const KeyInfo *pKeyInfo;
95058 pKeyInfo = pOp->p4.pKeyInfo;
95060 assert( pKeyInfo!=0 );
95080 assert( i<pKeyInfo->nKeyField );
95081 pColl = pKeyInfo->aColl[i];
95082 bRev = (pKeyInfo->aSortFlags[i] & KEYINFO_ORDER_DESC);
95086 if( (pKeyInfo->aSortFlags[i] & KEYINFO_ORDER_BIGNULL)
96880 KeyInfo *pKeyInfo;
96913 pKeyInfo = 0;
96947 pKeyInfo = pOp->p4.pKeyInfo;
96948 assert( pKeyInfo->enc==ENC(db) );
96949 assert( pKeyInfo->db==db );
96950 nField = pKeyInfo->nAllField;
96966 rc = sqlite3BtreeCursor(pX, p2, wrFlag, pKeyInfo, pCur->uc.pCursor);
96967 pCur->pKeyInfo = pKeyInfo;
97005 pCx->pKeyInfo = pOrig->pKeyInfo;
97013 pCx->pKeyInfo, pCx->uc.pCursor);
97058 KeyInfo *pKeyInfo;
97101 if( (pCx->pKeyInfo = pKeyInfo = pOp->p4.pKeyInfo)!=0 ){
97107 assert( pKeyInfo->db==db );
97108 assert( pKeyInfo->enc==ENC(db) );
97110 pKeyInfo, pCx->uc.pCursor);
97148 pCx->pKeyInfo = pOp->p4.pKeyInfo;
97149 assert( pCx->pKeyInfo->db==db );
97150 assert( pCx->pKeyInfo->enc==ENC(db) );
97445 r.pKeyInfo = pC->pKeyInfo;
97643 r.pKeyInfo = pC->pKeyInfo;
97896 r.pKeyInfo = pC->pKeyInfo;
97913 pIdxKey = sqlite3VdbeAllocUnpackedRecord(pC->pKeyInfo);
97915 sqlite3VdbeRecordUnpack(pC->pKeyInfo, r.aMem->n, r.aMem->z, pIdxKey);
99125 r.pKeyInfo = pC->pKeyInfo;
99307 r.pKeyInfo = pC->pKeyInfo;
102586 KeyInfo *pKeyInfo; /* How to compare records */
103026 sqlite3VdbeRecordUnpack(pTask->pSorter->pKeyInfo, nKey2, pKey2, r2);
103053 sqlite3VdbeRecordUnpack(pTask->pSorter->pKeyInfo, nKey2, pKey2, r2);
103087 if( pTask->pSorter->pKeyInfo->nKeyField>1 ){
103093 assert( !(pTask->pSorter->pKeyInfo->aSortFlags[0]&KEYINFO_ORDER_BIGNULL) );
103094 if( pTask->pSorter->pKeyInfo->aSortFlags[0] ){
103157 if( pTask->pSorter->pKeyInfo->nKeyField>1 ){
103162 }else if( pTask->pSorter->pKeyInfo->aSortFlags[0] ){
103163 assert( !(pTask->pSorter->pKeyInfo->aSortFlags[0]&KEYINFO_ORDER_BIGNULL) );
103197 KeyInfo *pKeyInfo; /* Copy of pCsr->pKeyInfo with db==0 */
103224 assert( pCsr->pKeyInfo );
103227 szKeyInfo = sizeof(KeyInfo) + (pCsr->pKeyInfo->nKeyField-1)*sizeof(CollSeq*);
103236 pSorter->pKeyInfo = pKeyInfo = (KeyInfo*)((u8*)pSorter + sz);
103237 memcpy(pKeyInfo, pCsr->pKeyInfo, szKeyInfo);
103238 pKeyInfo->db = 0;
103240 pKeyInfo->nKeyField = nField;
103280 if( pKeyInfo->nAllField<13
103281 && (pKeyInfo->aColl[0]==0 || pKeyInfo->aColl[0]==db->pDfltColl)
103282 && (pKeyInfo->aSortFlags[0] & KEYINFO_ORDER_BIGNULL)==0
103595 pTask->pUnpacked = sqlite3VdbeAllocUnpackedRecord(pTask->pSorter->pKeyInfo);
103597 pTask->pUnpacked->nField = pTask->pSorter->pKeyInfo->nKeyField;
105001 KeyInfo *pKeyInfo;
105008 pKeyInfo = pCsr->pKeyInfo;
105010 r2 = pSorter->pUnpacked = sqlite3VdbeAllocUnpackedRecord(pKeyInfo);
105017 sqlite3VdbeRecordUnpack(pKeyInfo, nKey, pKey, r2);
111702 KeyInfo *pKeyInfo = 0; /* Key information */
111766 pKeyInfo = sqlite3KeyInfoAlloc(pParse->db, nVal, 1);
111791 testcase( pKeyInfo==0 ); /* Caused by OOM in sqlite3KeyInfoAlloc() */
111797 sqlite3KeyInfoUnref(pKeyInfo);
111800 assert( pKeyInfo!=0 ); /* OOM will cause exit after sqlite3Select() */
111803 assert( sqlite3KeyInfoIsWriteable(pKeyInfo) );
111806 pKeyInfo->aColl[i] = sqlite3BinaryCompareCollSeq(
111830 if( pKeyInfo ){
111831 assert( sqlite3KeyInfoIsWriteable(pKeyInfo) );
111832 pKeyInfo->aColl[0] = sqlite3ExprCollSeq(pParse, pExpr->pLeft);
111861 if( pKeyInfo ){
111862 sqlite3VdbeChangeP4(v, addr, (void *)pKeyInfo, P4_KEYINFO);
142560 pKI = pOp->p4.pKeyInfo;
142564 pOp->p4.pKeyInfo = sqlite3KeyInfoFromExprList(pParse,pSort->pOrderBy,nOBSat,
142990 pOp->p4.pKeyInfo->nAllField += (pExtra->nExpr - pSort->nDefer);
144470 KeyInfo *pKeyInfo = multiSelectOrderByKeyInfo(pParse, p, 1);
144472 (char*)pKeyInfo, P4_KEYINFO);
144952 KeyInfo *pKeyInfo; /* Collating sequence for the result set */
144960 pKeyInfo = sqlite3KeyInfoAlloc(db, nCol, 1);
144961 if( !pKeyInfo ){
144965 for(i=0, apColl=pKeyInfo->aColl; i<nCol; i++, apColl++){
144982 sqlite3VdbeChangeP4(v, addr, (char*)sqlite3KeyInfoRef(pKeyInfo),
144987 sqlite3KeyInfoUnref(pKeyInfo);
145041 KeyInfo *pKeyInfo, /* For comparing with previous entry */
145057 (char*)sqlite3KeyInfoRef(pKeyInfo), P4_KEYINFO);
148432 KeyInfo *pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pE->x.pList,0,0);
148434 pFunc->iDistinct, 0, 0, (char*)pKeyInfo, P4_KEYINFO);
148441 KeyInfo *pKeyInfo;
148459 pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pOBList, 0, nExtra);
148461 pKeyInfo->nKeyField++;
148465 (char*)pKeyInfo, P4_KEYINFO);
149625 KeyInfo *pKeyInfo;
149626 pKeyInfo = sqlite3KeyInfoFromExprList(
149632 (char*)pKeyInfo, P4_KEYINFO
149879 KeyInfo *pKeyInfo; /* Keying information for the group by clause */
149911 pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pGroupBy,
149915 0, (char*)pKeyInfo, P4_KEYINFO);
150071 (char*)sqlite3KeyInfoRef(pKeyInfo), P4_KEYINFO);
150178 KeyInfo *pKeyInfo = 0; /* Keyinfo for scanned index */
150208 pKeyInfo = sqlite3KeyInfoOfIndex(pParse, pBest);
150213 if( pKeyInfo ){
150214 sqlite3VdbeChangeP4(v, -1, (char *)pKeyInfo, P4_KEYINFO);
152746 KeyInfo *pKeyInfo = sqlite3KeyInfoOfIndex(pParse, pPk);
152747 if( pKeyInfo ){
152748 pKeyInfo->nAllField = nEphCol;
152749 sqlite3VdbeAppendP4(v, pKeyInfo, P4_KEYINFO);
169288 KeyInfo *pKeyInfo;
169291 pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pList, 0, 0);
169295 if( pKeyInfo && pWin->pWFunc->zName[1]=='i' ){
169296 assert( pKeyInfo->aSortFlags[0]==0 );
169297 pKeyInfo->aSortFlags[0] = KEYINFO_ORDER_DESC;
169300 sqlite3VdbeAppendP4(v, pKeyInfo, P4_KEYINFO);
169716 KeyInfo *pKeyInfo = 0;
169719 pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pMWin->pOrderBy, 0, 0);
169725 if( pKeyInfo ){
169728 sqlite3VdbeAppendP4(v, (void*)pKeyInfo, P4_KEYINFO);
169914 KeyInfo *pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pOrderBy, 0, 0);
169916 sqlite3VdbeAppendP4(v, (void*)pKeyInfo, P4_KEYINFO);
170767 KeyInfo *pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pPart, 0, 0);
170771 sqlite3VdbeAppendP4(v, (void*)pKeyInfo, P4_KEYINFO);