mirror of
https://github.com/sqlite/sqlite.git
synced 2025-08-08 14:02:16 +03:00
Continuing work toward supporting unsigned 32-bit page numbers.
FossilOrigin-Name: 9ce1710aad43cebe5ad50859c7685fb83e40cdd4a60913bd2b7e659bc59942fd
This commit is contained in:
24
src/vdbe.c
24
src/vdbe.c
@@ -2250,10 +2250,10 @@ case OP_Compare: {
|
||||
int p1;
|
||||
int p2;
|
||||
const KeyInfo *pKeyInfo;
|
||||
int idx;
|
||||
u32 idx;
|
||||
CollSeq *pColl; /* Collating sequence to use on this term */
|
||||
int bRev; /* True for DESCENDING sort order */
|
||||
int *aPermute; /* The permutation */
|
||||
u32 *aPermute; /* The permutation */
|
||||
|
||||
if( (pOp->p5 & OPFLAG_PERMUTE)==0 ){
|
||||
aPermute = 0;
|
||||
@@ -2593,7 +2593,7 @@ case OP_Offset: { /* out3 */
|
||||
** skipped for length() and all content loading can be skipped for typeof().
|
||||
*/
|
||||
case OP_Column: {
|
||||
int p2; /* column number to retrieve */
|
||||
u32 p2; /* column number to retrieve */
|
||||
VdbeCursor *pC; /* The VDBE cursor */
|
||||
BtCursor *pCrsr; /* The BTree cursor */
|
||||
u32 *aOffset; /* aOffset[i] is offset to start of data for i-th column */
|
||||
@@ -2611,7 +2611,7 @@ case OP_Column: {
|
||||
assert( pOp->p1>=0 && pOp->p1<p->nCursor );
|
||||
pC = p->apCsr[pOp->p1];
|
||||
assert( pC!=0 );
|
||||
p2 = pOp->p2;
|
||||
p2 = (u32)pOp->p2;
|
||||
|
||||
/* If the cursor cache is stale (meaning it is not currently point at
|
||||
** the correct row) then bring it up-to-date by doing the necessary
|
||||
@@ -3762,7 +3762,7 @@ case OP_SetCookie: {
|
||||
case OP_ReopenIdx: {
|
||||
int nField;
|
||||
KeyInfo *pKeyInfo;
|
||||
int p2;
|
||||
u32 p2;
|
||||
int iDb;
|
||||
int wrFlag;
|
||||
Btree *pX;
|
||||
@@ -3793,7 +3793,7 @@ case OP_OpenWrite:
|
||||
|
||||
nField = 0;
|
||||
pKeyInfo = 0;
|
||||
p2 = pOp->p2;
|
||||
p2 = (u32)pOp->p2;
|
||||
iDb = pOp->p3;
|
||||
assert( iDb>=0 && iDb<db->nDb );
|
||||
assert( DbMaskTest(p->btreeMask, iDb) );
|
||||
@@ -3965,7 +3965,7 @@ case OP_OpenEphemeral: {
|
||||
*/
|
||||
if( (pCx->pKeyInfo = pKeyInfo = pOp->p4.pKeyInfo)!=0 ){
|
||||
assert( pOp->p4type==P4_KEYINFO );
|
||||
rc = sqlite3BtreeCreateTable(pCx->pBtx, (int*)&pCx->pgnoRoot,
|
||||
rc = sqlite3BtreeCreateTable(pCx->pBtx, &pCx->pgnoRoot,
|
||||
BTREE_BLOBKEY | pOp->p5);
|
||||
if( rc==SQLITE_OK ){
|
||||
assert( pCx->pgnoRoot==SCHEMA_ROOT+1 );
|
||||
@@ -5229,10 +5229,6 @@ case OP_RowData: {
|
||||
*/
|
||||
assert( pC->deferredMoveto==0 );
|
||||
assert( sqlite3BtreeCursorIsValid(pCrsr) );
|
||||
#if 0 /* Not required due to the previous to assert() statements */
|
||||
rc = sqlite3VdbeCursorMoveto(pC);
|
||||
if( rc!=SQLITE_OK ) goto abort_due_to_error;
|
||||
#endif
|
||||
|
||||
n = sqlite3BtreePayloadSize(pCrsr);
|
||||
if( n>(u32)db->aLimit[SQLITE_LIMIT_LENGTH] ){
|
||||
@@ -6002,7 +5998,7 @@ case OP_Clear: {
|
||||
assert( p->readOnly==0 );
|
||||
assert( DbMaskTest(p->btreeMask, pOp->p2) );
|
||||
rc = sqlite3BtreeClearTable(
|
||||
db->aDb[pOp->p2].pBt, pOp->p1, (pOp->p3 ? &nChange : 0)
|
||||
db->aDb[pOp->p2].pBt, (u32)pOp->p1, (pOp->p3 ? &nChange : 0)
|
||||
);
|
||||
if( pOp->p3 ){
|
||||
p->nChange += nChange;
|
||||
@@ -6051,7 +6047,7 @@ case OP_ResetSorter: {
|
||||
** The root page number of the new b-tree is stored in register P2.
|
||||
*/
|
||||
case OP_CreateBtree: { /* out2 */
|
||||
int pgno;
|
||||
Pgno pgno;
|
||||
Db *pDb;
|
||||
|
||||
sqlite3VdbeIncrWriteCounter(p, 0);
|
||||
@@ -6239,7 +6235,7 @@ case OP_DropTrigger: {
|
||||
*/
|
||||
case OP_IntegrityCk: {
|
||||
int nRoot; /* Number of tables to check. (Number of root pages.) */
|
||||
int *aRoot; /* Array of rootpage numbers for tables to be checked */
|
||||
Pgno *aRoot; /* Array of rootpage numbers for tables to be checked */
|
||||
int nErr; /* Number of errors reported */
|
||||
char *z; /* Text of the error report */
|
||||
Mem *pnErr; /* Register keeping track of errors remaining */
|
||||
|
Reference in New Issue
Block a user