Lines Matching refs:pKeyInfo
16935 KeyInfo *pKeyInfo; /* Used when p4type is P4_KEYINFO */ member
19083 KeyInfo *pKeyInfo; /* Collation and sort-order information */ member
23702 KeyInfo *pKeyInfo; /* Info about index keys needed by index cursors */ member
71070 struct KeyInfo *pKeyInfo; /* Arg passed to comparison function */ member
72424 KeyInfo *pKeyInfo = pCur->pKeyInfo; local
72426 pIdxKey = sqlite3VdbeAllocUnpackedRecord(pKeyInfo);
72428 sqlite3VdbeRecordUnpack(pKeyInfo, (int)nKey, pKey, pIdxKey);
72429 if( pIdxKey->nField==0 || pIdxKey->nField>pKeyInfo->nAllField ){
72434 sqlite3DbFree(pCur->pKeyInfo->db, pIdxKey);
76213 struct KeyInfo *pKeyInfo, /* First arg to comparison function */
76229 assert( hasSharedCacheTableLock(p, iTable, pKeyInfo!=0, (wrFlag?2:1))
76252 pCur->pKeyInfo = pKeyInfo;
76280 struct KeyInfo *pKeyInfo, /* First arg to comparison function */
76285 rc = btreeCursor(p, iTable, wrFlag, pKeyInfo, pCur);
76293 struct KeyInfo *pKeyInfo, /* First arg to xCompare() */
76297 return btreeCursorWithLock(p, iTable, wrFlag, pKeyInfo, pCur);
76299 return btreeCursor(p, iTable, wrFlag, pKeyInfo, pCur);
77121 if( pRoot->isInit==0 || (pCur->pKeyInfo==0)!=pRoot->intKey ){
77304 assert( pCur->pKeyInfo==0 );
77536 assert( pCur->pKeyInfo!=0 );
80906 assert( (flags & BTREE_PREFORMAT)==0 || seekResult || pCur->pKeyInfo==0 );
80946 assert( hasSharedCacheTableLock(p, pCur->pgnoRoot, pCur->pKeyInfo!=0, 2) );
80953 assert( (flags & BTREE_PREFORMAT) || (pX->pKey==0)==(pCur->pKeyInfo==0) );
80955 if( pCur->pKeyInfo==0 ){
81014 r.pKeyInfo = pCur->pKeyInfo;
81174 if( pCur->pKeyInfo ){
81221 if( pDest->pKeyInfo==0 ) aOut += putVarint(aOut, iKey);
81337 assert( hasSharedCacheTableLock(p, pCur->pgnoRoot, pCur->pKeyInfo!=0, 2) );
81419 if( pCur->pKeyInfo==0 && p->hasIncrblobCur ){
85286 pRec->pKeyInfo = sqlite3KeyInfoOfIndex(p->pParse, pIdx);
85287 if( pRec->pKeyInfo ){
85288 assert( pRec->pKeyInfo->nAllField==nCol );
85289 assert( pRec->pKeyInfo->enc==ENC(db) );
85832 int nCol = pRec->pKeyInfo->nAllField;
85838 sqlite3KeyInfoUnref(pRec->pKeyInfo);
87526 KeyInfo *pKeyInfo; local
87529 pKeyInfo = sqlite3KeyInfoOfIndex(pParse, pIdx);
87530 if( pKeyInfo ) sqlite3VdbeAppendP4(v, pKeyInfo, P4_KEYINFO);
87808 KeyInfo *pKeyInfo = pOp->p4.pKeyInfo; local
87809 assert( pKeyInfo->aSortFlags!=0 );
87810 sqlite3_str_appendf(&x, "k(%d", pKeyInfo->nKeyField);
87811 for(j=0; j<pKeyInfo->nKeyField; j++){
87812 CollSeq *pColl = pKeyInfo->aColl[j];
87816 (pKeyInfo->aSortFlags[j] & KEYINFO_ORDER_DESC) ? "-" : "",
87817 (pKeyInfo->aSortFlags[j] & KEYINFO_ORDER_BIGNULL)? "N." : "",
90114 KeyInfo *pKeyInfo /* Description of the record */
90119 nByte = ROUND8P(sizeof(UnpackedRecord)) + sizeof(Mem)*(pKeyInfo->nKeyField+1);
90120 p = (UnpackedRecord *)sqlite3DbMallocRaw(pKeyInfo->db, nByte);
90123 assert( pKeyInfo->aSortFlags!=0 );
90124 p->pKeyInfo = pKeyInfo;
90125 p->nField = pKeyInfo->nKeyField + 1;
90135 KeyInfo *pKeyInfo, /* Information about the record format */
90156 pMem->enc = pKeyInfo->enc;
90157 pMem->db = pKeyInfo->db;
90173 assert( u<=pKeyInfo->nKeyField + 1 );
90200 KeyInfo *pKeyInfo; local
90203 pKeyInfo = pPKey2->pKeyInfo;
90204 if( pKeyInfo->db==0 ) return 1;
90205 mem1.enc = pKeyInfo->enc;
90206 mem1.db = pKeyInfo->db;
90222 assert( pKeyInfo->nAllField>=pPKey2->nField || CORRUPT_DB );
90223 assert( pKeyInfo->aSortFlags!=0 );
90224 assert( pKeyInfo->nKeyField>0 );
90261 pKeyInfo->nAllField>i ? pKeyInfo->aColl[i] : 0);
90264 if( (pKeyInfo->aSortFlags[i] & KEYINFO_ORDER_BIGNULL)
90269 if( pKeyInfo->aSortFlags[i] & KEYINFO_ORDER_DESC ){
90293 if( pKeyInfo->db->mallocFailed ) return 1;
90312 const KeyInfo *pKeyInfo /* Compare size with this KeyInfo */
90328 assert( nField <= pKeyInfo->nAllField );
90626 KeyInfo *pKeyInfo; local
90659 assert( pPKey2->pKeyInfo->nAllField>=pPKey2->nField
90661 assert( pPKey2->pKeyInfo->aSortFlags!=0 );
90662 assert( pPKey2->pKeyInfo->nKeyField>0 );
90733 || (pKeyInfo = pPKey2->pKeyInfo)->nAllField<=i
90737 }else if( pKeyInfo->aColl[i] ){
90738 mem1.enc = pKeyInfo->enc;
90739 mem1.db = pKeyInfo->db;
90743 &mem1, pRhs, pKeyInfo->aColl[i], &pPKey2->errCode
90795 int sortFlags = pPKey2->pKeyInfo->aSortFlags[i];
90831 || pPKey2->pKeyInfo->db->mallocFailed
90865 vdbeAssertFieldCountWithinLimits(nKey1, pKey1, pPKey2->pKeyInfo);
90959 vdbeAssertFieldCountWithinLimits(nKey1, pKey1, pPKey2->pKeyInfo);
91008 || pPKey2->pKeyInfo->db->mallocFailed
91032 if( p->pKeyInfo->nAllField<=13 ){
91034 if( p->pKeyInfo->aSortFlags[0] ){
91035 if( p->pKeyInfo->aSortFlags[0] & KEYINFO_ORDER_BIGNULL ){
91052 && p->pKeyInfo->aColl[0]==0
93617 KeyInfo *pKeyInfo,
93623 pRet = sqlite3VdbeAllocUnpackedRecord(pKeyInfo);
93625 memset(pRet->aMem, 0, sizeof(Mem)*(pKeyInfo->nKeyField+1));
93626 sqlite3VdbeRecordUnpack(pKeyInfo, nKey, pKey, pRet);
95072 if( len > 4000 && pC->pKeyInfo==0 ){
96800 const KeyInfo *pKeyInfo;
96816 pKeyInfo = pOp->p4.pKeyInfo;
96818 assert( pKeyInfo!=0 );
96838 assert( i<pKeyInfo->nKeyField );
96839 pColl = pKeyInfo->aColl[i];
96840 bRev = (pKeyInfo->aSortFlags[i] & KEYINFO_ORDER_DESC);
96844 if( (pKeyInfo->aSortFlags[i] & KEYINFO_ORDER_BIGNULL)
98650 KeyInfo *pKeyInfo;
98683 pKeyInfo = 0;
98717 pKeyInfo = pOp->p4.pKeyInfo;
98718 assert( pKeyInfo->enc==ENC(db) );
98719 assert( pKeyInfo->db==db );
98720 nField = pKeyInfo->nAllField;
98736 rc = sqlite3BtreeCursor(pX, p2, wrFlag, pKeyInfo, pCur->uc.pCursor);
98737 pCur->pKeyInfo = pKeyInfo;
98775 pCx->pKeyInfo = pOrig->pKeyInfo;
98783 pCx->pKeyInfo, pCx->uc.pCursor);
98828 KeyInfo *pKeyInfo;
98871 if( (pCx->pKeyInfo = pKeyInfo = pOp->p4.pKeyInfo)!=0 ){
98877 assert( pKeyInfo->db==db );
98878 assert( pKeyInfo->enc==ENC(db) );
98880 pKeyInfo, pCx->uc.pCursor);
98923 pCx->pKeyInfo = pOp->p4.pKeyInfo;
98924 assert( pCx->pKeyInfo->db==db );
98925 assert( pCx->pKeyInfo->enc==ENC(db) );
99221 r.pKeyInfo = pC->pKeyInfo;
99419 r.pKeyInfo = pC->pKeyInfo;
99672 r.pKeyInfo = pC->pKeyInfo;
99690 pIdxKey = sqlite3VdbeAllocUnpackedRecord(pC->pKeyInfo);
99692 sqlite3VdbeRecordUnpack(pC->pKeyInfo, r.aMem->n, r.aMem->z, pIdxKey);
100912 r.pKeyInfo = pC->pKeyInfo;
101094 r.pKeyInfo = pC->pKeyInfo;
104424 KeyInfo *pKeyInfo; /* How to compare records */
104868 sqlite3VdbeRecordUnpack(pTask->pSorter->pKeyInfo, nKey2, pKey2, r2);
104895 sqlite3VdbeRecordUnpack(pTask->pSorter->pKeyInfo, nKey2, pKey2, r2);
104929 if( pTask->pSorter->pKeyInfo->nKeyField>1 ){
104935 assert( !(pTask->pSorter->pKeyInfo->aSortFlags[0]&KEYINFO_ORDER_BIGNULL) );
104936 if( pTask->pSorter->pKeyInfo->aSortFlags[0] ){
104999 if( pTask->pSorter->pKeyInfo->nKeyField>1 ){
105004 }else if( pTask->pSorter->pKeyInfo->aSortFlags[0] ){
105005 assert( !(pTask->pSorter->pKeyInfo->aSortFlags[0]&KEYINFO_ORDER_BIGNULL) );
105039 KeyInfo *pKeyInfo; /* Copy of pCsr->pKeyInfo with db==0 */
105066 assert( pCsr->pKeyInfo );
105069 assert( sizeof(KeyInfo) + UMXV(pCsr->pKeyInfo->nKeyField)*sizeof(CollSeq*)
105071 szKeyInfo = SZ_KEYINFO(pCsr->pKeyInfo->nKeyField);
105080 pSorter->pKeyInfo = pKeyInfo = (KeyInfo*)((u8*)pSorter + sz);
105081 memcpy(pKeyInfo, pCsr->pKeyInfo, szKeyInfo);
105082 pKeyInfo->db = 0;
105084 pKeyInfo->nKeyField = nField;
105124 if( pKeyInfo->nAllField<13
105125 && (pKeyInfo->aColl[0]==0 || pKeyInfo->aColl[0]==db->pDfltColl)
105126 && (pKeyInfo->aSortFlags[0] & KEYINFO_ORDER_BIGNULL)==0
105439 pTask->pUnpacked = sqlite3VdbeAllocUnpackedRecord(pTask->pSorter->pKeyInfo);
105441 pTask->pUnpacked->nField = pTask->pSorter->pKeyInfo->nKeyField;
106849 KeyInfo *pKeyInfo;
106856 pKeyInfo = pCsr->pKeyInfo;
106858 r2 = pSorter->pUnpacked = sqlite3VdbeAllocUnpackedRecord(pKeyInfo);
106865 sqlite3VdbeRecordUnpack(pKeyInfo, nKey, pKey, r2);
113848 KeyInfo *pKeyInfo = 0; /* Key information */
113940 pKeyInfo = sqlite3KeyInfoAlloc(pParse->db, nVal, 1);
113972 testcase( pKeyInfo==0 ); /* Caused by OOM in sqlite3KeyInfoAlloc() */
113987 sqlite3KeyInfoUnref(pKeyInfo);
113990 assert( pKeyInfo!=0 ); /* OOM will cause exit after sqlite3Select() */
113993 assert( sqlite3KeyInfoIsWriteable(pKeyInfo) );
113996 pKeyInfo->aColl[i] = sqlite3BinaryCompareCollSeq(
114020 if( pKeyInfo ){
114021 assert( sqlite3KeyInfoIsWriteable(pKeyInfo) );
114022 pKeyInfo->aColl[0] = sqlite3ExprCollSeq(pParse, pExpr->pLeft);
114052 if( pKeyInfo ){
114053 sqlite3VdbeChangeP4(v, addr, (void *)pKeyInfo, P4_KEYINFO);
145648 pKI = pOp->p4.pKeyInfo;
145652 pOp->p4.pKeyInfo = sqlite3KeyInfoFromExprList(pParse,pSort->pOrderBy,nOBSat,
146078 pOp->p4.pKeyInfo->nAllField += (pExtra->nExpr - pSort->nDefer);
147574 KeyInfo *pKeyInfo = multiSelectOrderByKeyInfo(pParse, p, 1);
147576 (char*)pKeyInfo, P4_KEYINFO);
148056 KeyInfo *pKeyInfo; /* Collating sequence for the result set */
148064 pKeyInfo = sqlite3KeyInfoAlloc(db, nCol, 1);
148065 if( !pKeyInfo ){
148069 for(i=0, apColl=pKeyInfo->aColl; i<nCol; i++, apColl++){
148086 sqlite3VdbeChangeP4(v, addr, (char*)sqlite3KeyInfoRef(pKeyInfo),
148091 sqlite3KeyInfoUnref(pKeyInfo);
148146 KeyInfo *pKeyInfo, /* For comparing with previous entry */
148162 (char*)sqlite3KeyInfoRef(pKeyInfo), P4_KEYINFO);
151610 KeyInfo *pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pE->x.pList,0,0);
151612 pFunc->iDistinct, 0, 0, (char*)pKeyInfo, P4_KEYINFO);
151619 KeyInfo *pKeyInfo;
151637 pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pOBList, 0, nExtra);
151639 pKeyInfo->nKeyField++;
151643 (char*)pKeyInfo, P4_KEYINFO);
152891 KeyInfo *pKeyInfo;
152892 pKeyInfo = sqlite3KeyInfoFromExprList(
152898 (char*)pKeyInfo, P4_KEYINFO
153152 KeyInfo *pKeyInfo; /* Keying information for the group by clause */
153184 pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pGroupBy,
153188 0, (char*)pKeyInfo, P4_KEYINFO);
153362 (char*)sqlite3KeyInfoRef(pKeyInfo), P4_KEYINFO);
153472 KeyInfo *pKeyInfo = 0; /* Keyinfo for scanned index */
153502 pKeyInfo = sqlite3KeyInfoOfIndex(pParse, pBest);
153507 if( pKeyInfo ){
153508 sqlite3VdbeChangeP4(v, -1, (char *)pKeyInfo, P4_KEYINFO);
156122 KeyInfo *pKeyInfo = sqlite3KeyInfoOfIndex(pParse, pPk);
156123 if( pKeyInfo ){
156124 pKeyInfo->nAllField = nEphCol;
156125 sqlite3VdbeAppendP4(v, pKeyInfo, P4_KEYINFO);
173593 KeyInfo *pKeyInfo;
173596 pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pList, 0, 0);
173600 if( pKeyInfo && pWin->pWFunc->zName[1]=='i' ){
173601 assert( pKeyInfo->aSortFlags[0]==0 );
173602 pKeyInfo->aSortFlags[0] = KEYINFO_ORDER_DESC;
173605 sqlite3VdbeAppendP4(v, pKeyInfo, P4_KEYINFO);
174023 KeyInfo *pKeyInfo = 0;
174026 pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pMWin->pOrderBy, 0, 0);
174032 if( pKeyInfo ){
174035 sqlite3VdbeAppendP4(v, (void*)pKeyInfo, P4_KEYINFO);
174221 KeyInfo *pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pOrderBy, 0, 0);
174223 sqlite3VdbeAppendP4(v, (void*)pKeyInfo, P4_KEYINFO);
175074 KeyInfo *pKeyInfo = sqlite3KeyInfoFromExprList(pParse, pPart, 0, 0);
175078 sqlite3VdbeAppendP4(v, (void*)pKeyInfo, P4_KEYINFO);