Home | History | Annotate | Download | only in dist

Lines Matching defs:rc

12503   int rc;              /* Return code from execution */
12768 int rc; /* Result code stored here */
14839 int rc; /* Value to return */
15138 int rc;
15142 rc = sqlite3_status64(op, &iCur, &iHwtr, resetFlag);
15143 if( rc==0 ){
15147 return rc;
15160 int rc = SQLITE_OK; /* Return code */
15317 rc = SQLITE_ERROR;
15321 return rc;
15760 int rc;
15773 rc = pX==0;
15779 rc = localtime_r(t, pTm)==0;
15781 rc = localtime_s(pTm, t);
15784 return rc;
15878 int rc = 1;
15897 p->iJD += localtimeOffset(p, pCtx, &rc);
15913 rc = 0;
15919 c1 = localtimeOffset(p, pCtx, &rc);
15920 if( rc==SQLITE_OK ){
15923 p->iJD += c1 - localtimeOffset(p, pCtx, &rc);
15949 rc = 0;
15970 rc = 0;
15975 rc = 0;
15977 rc = 0;
15996 rc = 1;
16019 rc = 0;
16028 rc = 0;
16061 rc = 1;
16070 return rc;
16528 int rc = SQLITE_OK;
16530 rc = pId->pMethods->xClose(pId);
16533 return rc;
16654 int rc;
16660 rc = pVfs->xOpen(pVfs, zPath, pFile, flags & 0x87f7f, pFlagsOut);
16661 assert( rc==SQLITE_OK || pFile->pMethods==0 );
16662 return rc;
16709 int rc;
16717 rc = pVfs->xCurrentTimeInt64(pVfs, pTimeOut);
16720 rc = pVfs->xCurrentTime(pVfs, &r);
16723 return rc;
16733 int rc = SQLITE_NOMEM;
16737 rc = sqlite3OsOpen(pVfs, zFile, pFile, flags, pOutFlags);
16738 if( rc!=SQLITE_OK ){
16744 return rc;
16747 int rc = SQLITE_OK;
16749 rc = sqlite3OsClose(pFile);
16751 return rc;
16783 int rc = sqlite3_initialize();
16784 if( rc ) return 0;
16826 int rc = sqlite3_initialize();
16827 if( rc ) return rc;
17708 int rc = 1;
17714 rc = 0;
17717 return rc;
17730 int rc = 1;
17736 rc = 0;
17739 return rc;
19138 int rc = SQLITE_OK;
19158 rc = sqlite3GlobalConfig.mutex.xMutexInit();
19164 return rc;
19172 int rc = SQLITE_OK;
19174 rc = sqlite3GlobalConfig.mutex.xMutexEnd();
19181 return rc;
19227 int rc = SQLITE_OK;
19231 return rc;
19744 int rc;
19762 rc = SQLITE_OK;
19767 rc = SQLITE_OK;
19769 rc = SQLITE_BUSY;
19780 rc = SQLITE_OK;
19782 rc = SQLITE_BUSY;
19787 if( rc==SQLITE_OK && p->trace ){
19791 return rc;
20424 int rc = SQLITE_BUSY;
20450 rc = SQLITE_OK;
20457 OSTRACE(("TRY-MUTEX tid=%lu, mutex=%p (%d), owner=%lu, nRef=%d, rc=%s\n",
20458 tid, p, p->trace, p->owner, p->nRef, sqlite3ErrName(rc)));
20461 return rc;
20654 int rc = sqlite3_initialize();
20655 if( rc ) return -1;
20679 int rc;
20715 rc = sqlite3GlobalConfig.m.xInit(sqlite3GlobalConfig.m.pAppData);
20716 if( rc!=SQLITE_OK ) memset(&mem0, 0, sizeof(mem0));
20717 return rc;
21329 SQLITE_PRIVATE int sqlite3ApiExit(sqlite3* db, int rc){
21335 if( db==0 ) return rc & 0xff;
21336 if( db->mallocFailed || rc==SQLITE_IOERR_NOMEM ){
21339 return rc & db->errMask;
22685 int rc;
22699 rc = 1;
22701 rc = pthread_create(&p->tid, 0, xTask, pIn);
22703 if( rc ){
22713 int rc;
22719 rc = SQLITE_OK;
22721 rc = pthread_join(p->tid, ppOut) ? SQLITE_ERROR : SQLITE_OK;
22724 return rc;
22804 DWORD rc;
22811 rc = WAIT_OBJECT_0;
22815 rc = sqlite3Win32Wait((HANDLE)p->tid);
22816 assert( rc!=WAIT_IO_COMPLETION );
22820 if( rc==WAIT_OBJECT_0 ) *ppOut = p->pResult;
22822 return (rc==WAIT_OBJECT_0) ? SQLITE_OK : SQLITE_ERROR;
23124 int rc;
23125 rc = sqlite3VdbeMemMakeWriteable(pMem);
23126 if( rc!=SQLITE_OK ){
23127 assert( rc==SQLITE_NOMEM );
23240 int rc = SQLITE_OK;
23256 rc = sqlite3VdbeMemMakeWriteable(pMem);
23257 if( rc==SQLITE_OK ){
23266 return rc;
23486 int rc; /* The value return */
23516 rc = (y!=z);
23518 rc = isnan(x);
23520 testcase( rc );
23521 return rc;
23615 pParse->rc = SQLITE_ERROR;
25945 int rc = SQLITE_NOTFOUND;
25952 rc = SQLITE_OK;
25967 rc = SQLITE_OK;
25974 return rc;
26192 int rc;
26199 rc = SQLITE_OK;
26202 do{ rc = osFtruncate(h,sz); }while( rc<0 && errno==EINTR );
26203 return rc;
26715 int rc; /* System call return code */
26727 rc = osFstat(fd, &statbuf);
26728 if( rc!=0 ){
26748 do{ rc = osWrite(fd, "S", 1); }while( rc<0 && errno==EINTR );
26749 if( rc!=1 ){
26753 rc = osFstat(fd, &statbuf);
26754 if( rc!=0 ){
26816 int rc;
26822 rc = osFstat(pFile->h, &buf);
26823 if( rc!=0 ){
26853 int rc = SQLITE_OK;
26877 rc = SQLITE_IOERR_CHECKRESERVEDLOCK;
26886 OSTRACE(("TEST WR-LOCK %d %d %d (unix)\n", pFile->h, rc, reserved));
26889 return rc;
26912 int rc;
26926 rc = osFcntl(pFile->h, F_SETLK, &lock);
26927 if( rc<0 ) return rc;
26931 rc = 0;
26934 rc = osFcntl(pFile->h, F_SETLK, pLock);
26936 return rc;
27002 int rc = SQLITE_OK;
27044 rc = SQLITE_BUSY;
27077 rc = sqliteErrorFromPosixError(tErrno, SQLITE_IOERR_LOCK);
27078 if( rc!=SQLITE_BUSY ){
27092 assert( rc==SQLITE_OK );
27099 rc = sqliteErrorFromPosixError(tErrno, SQLITE_IOERR_LOCK);
27106 if( unixFileLock(pFile, &lock) && rc==SQLITE_OK ){
27109 rc = SQLITE_IOERR_UNLOCK;
27112 if( rc ){
27113 if( rc!=SQLITE_BUSY ){
27125 rc = SQLITE_BUSY;
27145 rc = sqliteErrorFromPosixError(tErrno, SQLITE_IOERR_LOCK);
27146 if( rc!=SQLITE_BUSY ){
27159 if( rc==SQLITE_OK
27170 if( rc==SQLITE_OK ){
27181 rc==SQLITE_OK ? "ok" : "failed"));
27182 return rc;
27215 int rc = SQLITE_OK;
27269 rc = SQLITE_IOERR_UNLOCK;
27270 if( IS_LOCK_ERROR(rc) ){
27281 rc = sqliteErrorFromPosixError(tErrno, SQLITE_IOERR_RDLOCK);
27282 if( IS_LOCK_ERROR(rc) ){
27293 rc = SQLITE_IOERR_UNLOCK;
27294 if( IS_LOCK_ERROR(rc) ){
27313 rc = SQLITE_IOERR_RDLOCK;
27326 rc = SQLITE_IOERR_UNLOCK;
27344 rc = SQLITE_IOERR_UNLOCK;
27364 if( rc==SQLITE_OK ) pFile->eFileLock = eFileLock;
27365 return rc;
27433 int rc = SQLITE_OK;
27452 rc = closeUnixFile(id);
27454 return rc;
27540 int rc = SQLITE_OK;
27558 OSTRACE(("TEST WR-LOCK %d %d %d (dotlock)\n", pFile->h, rc, reserved));
27560 return rc;
27593 int rc = SQLITE_OK;
27611 rc = osMkdir(zLockFile, 0777);
27612 if( rc<0 ){
27616 rc = SQLITE_BUSY;
27618 rc = sqliteErrorFromPosixError(tErrno, SQLITE_IOERR_LOCK);
27619 if( IS_LOCK_ERROR(rc) ){
27623 return rc;
27628 return rc;
27643 int rc;
27665 rc = osRmdir(zLockFile);
27666 if( rc<0 && errno==ENOTDIR ) rc = osUnlink(zLockFile);
27667 if( rc<0 ){
27669 rc = 0;
27671 rc = SQLITE_IOERR_UNLOCK;
27673 if( IS_LOCK_ERROR(rc) ){
27676 return rc;
27686 int rc = SQLITE_OK;
27691 rc = closeUnixFile(id);
27693 return rc;
27719 int rc;
27720 do{ rc = flock(fd,op); }while( rc<0 && errno==EINTR );
27721 return rc;
27735 int rc = SQLITE_OK;
27761 rc = lrc;
27771 rc = lrc;
27775 OSTRACE(("TEST WR-LOCK %d %d %d (flock)\n", pFile->h, rc, reserved));
27778 if( (rc & SQLITE_IOERR) == SQLITE_IOERR ){
27779 rc = SQLITE_OK;
27784 return rc;
27817 int rc = SQLITE_OK;
27834 rc = sqliteErrorFromPosixError(tErrno, SQLITE_IOERR_LOCK);
27835 if( IS_LOCK_ERROR(rc) ){
27843 rc==SQLITE_OK ? "ok" : "failed"));
27845 if( (rc & SQLITE_IOERR) == SQLITE_IOERR ){
27846 rc = SQLITE_BUSY;
27849 return rc;
27895 int rc = SQLITE_OK;
27898 rc = closeUnixFile(id);
27900 return rc;
27927 int rc = SQLITE_OK;
27947 rc = sqliteErrorFromPosixError(tErrno, SQLITE_IOERR_CHECKRESERVEDLOCK);
27958 OSTRACE(("TEST WR-LOCK %d %d %d (sem)\n", pFile->h, rc, reserved));
27961 return rc;
27996 int rc = SQLITE_OK;
28002 rc = SQLITE_OK;
28008 rc = SQLITE_BUSY;
28016 return rc;
28049 int rc, tErrno = errno;
28050 rc = sqliteErrorFromPosixError(tErrno, SQLITE_IOERR_UNLOCK);
28051 if( IS_LOCK_ERROR(rc) ){
28054 return rc;
28143 int rc;
28148 rc = SQLITE_BUSY;
28150 rc = sqliteErrorFromPosixError(tErrno,
28153 if( IS_LOCK_ERROR(rc) ){
28156 return rc;
28169 int rc = SQLITE_OK;
28203 rc=lrc;
28208 OSTRACE(("TEST WR-LOCK %d %d %d (afp)\n", pFile->h, rc, reserved));
28211 return rc;
28239 int rc = SQLITE_OK;
28279 rc = SQLITE_BUSY;
28308 rc = failed;
28338 rc = lrc1;
28341 rc = lrc2;
28344 rc = lrc1;
28353 rc = SQLITE_BUSY;
28385 rc = ((failed & SQLITE_IOERR) == SQLITE_IOERR) ? failed2 :
28390 rc = failed;
28394 rc = failed;
28398 if( rc==SQLITE_OK ){
28409 rc==SQLITE_OK ? "ok" : "failed"));
28410 return rc;
28421 int rc = SQLITE_OK;
28464 rc = afpSetLock(context->dbPath, pFile, SHARED_FIRST, SHARED_SIZE, 0);
28465 if( rc==SQLITE_OK && (eFileLock==SHARED_LOCK || pInode->nShared>1) ){
28468 rc = afpSetLock(context->dbPath, pFile, sharedLockByte, 1, 1);
28473 if( rc==SQLITE_OK && pFile->eFileLock>=PENDING_LOCK ){
28474 rc = afpSetLock(context->dbPath, pFile, PENDING_BYTE, 1, 0);
28476 if( rc==SQLITE_OK && pFile->eFileLock>=RESERVED_LOCK && context->reserved ){
28477 rc = afpSetLock(context->dbPath, pFile, RESERVED_BYTE, 1, 0);
28478 if( !rc ){
28482 if( rc==SQLITE_OK && (eFileLock==SHARED_LOCK || pInode->nShared>1)){
28486 if( rc==SQLITE_OK && eFileLock==NO_LOCK ){
28499 rc = afpSetLock(context->dbPath, pFile, sharedLockByte, 1, 0);
28501 if( !rc ){
28506 if( rc==SQLITE_OK ){
28516 if( rc==SQLITE_OK ) pFile->eFileLock = eFileLock;
28517 return rc;
28524 int rc = SQLITE_OK;
28539 rc = closeUnixFile(id);
28542 return rc;
28722 int rc = 0; /* Value returned by system call */
28730 do{ rc = (int)osPwrite(fd, pBuf, nBuf, iOff); }while( rc<0 && errno==EINTR );
28732 do{ rc = (int)osPwrite64(fd, pBuf, nBuf, iOff);}while( rc<0 && errno==EINTR);
28742 rc = osWrite(fd, pBuf, nBuf);
28743 }while( rc<0 && errno==EINTR );
28747 OSTRACE(("WRITE %-3d %5d %7lld %llu\n", fd, rc, iOff, TIMER_ELAPSED));
28749 if( rc<0 && piErrno ) *piErrno = errno;
28750 return rc;
28800 int rc;
28803 rc = seekAndRead(pFile, 24, oldCntr, 4);
28805 if( rc!=4 || memcmp(oldCntr, &((char*)pBuf)[24-offset], 4)!=0 ){
28906 int rc;
28936 rc = SQLITE_OK;
28939 rc = osFcntl(fd, F_FULLFSYNC, 0);
28941 rc = 1;
28951 if( rc ) rc = fsync(fd);
28957 rc = fsync(fd);
28959 rc = fdatasync(fd);
28961 if( rc==-1 && errno==ENOTSUP ){
28962 rc = fsync(fd);
28967 if( OS_VXWORKS && rc!= -1 ){
28968 rc = 0;
28970 return rc;
29030 int rc;
29048 rc = full_fsync(pFile->h, isFullsync, isDataOnly);
29049 SimulateIOError( rc=1 );
29050 if( rc ){
29063 rc = osOpenDirectory(pFile->zPath, &dirfd);
29064 if( rc==SQLITE_OK && dirfd>=0 ){
29067 }else if( rc==SQLITE_CANTOPEN ){
29068 rc = SQLITE_OK;
29072 return rc;
29080 int rc;
29093 rc = robust_ftruncate(pFile->h, nByte);
29094 if( rc ){
29129 int rc;
29132 rc = osFstat(((unixFile*)id)->h, &buf);
29133 SimulateIOError( rc=1 );
29134 if( rc!=0 ){
29217 int rc;
29225 rc = unixMapfile(pFile, nByte);
29226 return rc;
29275 int rc;
29277 rc = fcntlSizeHint(pFile, *(i64 *)pArg);
29279 return rc;
29308 int rc = SQLITE_OK;
29317 rc = unixMapfile(pFile, -1);
29320 return rc;
29456 int rc = 0;
29459 rc = p->deviceCharacteristics;
29462 rc |= SQLITE_IOCAP_POWERSAFE_OVERWRITE;
29464 return rc;
29578 int rc = SQLITE_OK; /* Result code form fcntl() */
29600 rc = osFcntl(pShmNode->h, lkType, &f);
29601 rc = (rc!=(-1)) ? SQLITE_OK : SQLITE_BUSY;
29610 if( rc==SQLITE_OK ){
29640 return rc;
29729 int rc; /* Result code */
29757 rc = unixLogError(SQLITE_IOERR_FSTAT, "fstat", pDbFd->zPath);
29768 rc = SQLITE_NOMEM;
29786 rc = SQLITE_NOMEM;
29798 rc = unixLogError(SQLITE_CANTOPEN_BKPT, "open", zShmFilename);
29811 rc = SQLITE_OK;
29814 rc = unixLogError(SQLITE_IOERR_SHMOPEN, "ftruncate", zShmFilename);
29817 if( rc==SQLITE_OK ){
29818 rc = unixShmSystemLock(pDbFd, F_RDLCK, UNIX_SHM_DMS, 1);
29820 if( rc ) goto shm_open_err;
29851 return rc;
29883 int rc = SQLITE_OK;
29889 rc = unixOpenSharedMemory(pDbFd);
29890 if( rc!=SQLITE_OK ) return rc;
29917 rc = SQLITE_IOERR_SHMSIZE;
29945 rc = unixLogError(SQLITE_IOERR_SHMSIZE, "write", zFile);
29958 rc = SQLITE_IOERR_NOMEM;
29972 rc = unixLogError(SQLITE_IOERR_SHMMAP, "mmap", pShmNode->zFilename);
29978 rc = SQLITE_NOMEM;
29997 if( pShmNode->isReadonly && rc==SQLITE_OK ) rc = SQLITE_READONLY;
29999 return rc;
30020 int rc = SQLITE_OK; /* Result code */
30050 rc = unixShmSystemLock(pDbFd, F_UNLCK, ofst+UNIX_SHM_BASE, n);
30052 rc = SQLITE_OK;
30056 if( rc==SQLITE_OK ){
30069 rc = SQLITE_BUSY;
30076 if( rc==SQLITE_OK ){
30078 rc = unixShmSystemLock(pDbFd, F_RDLCK, ofst+UNIX_SHM_BASE, n);
30080 rc = SQLITE_OK;
30085 if( rc==SQLITE_OK ){
30094 rc = SQLITE_BUSY;
30102 if( rc==SQLITE_OK ){
30103 rc = unixShmSystemLock(pDbFd, F_WRLCK, ofst+UNIX_SHM_BASE, n);
30104 if( rc==SQLITE_OK ){
30113 return rc;
30310 int rc;
30317 rc = osFstat(pFd->h, &statbuf);
30318 if( rc!=SQLITE_OK ){
30360 int rc = unixMapfile(pFd, -1);
30361 if( rc!=SQLITE_OK ) return rc;
30721 int rc = SQLITE_OK;
30759 rc = SQLITE_NOMEM;
30781 rc = findInodeInfo(pNew, &pNew->pInode);
30782 if( rc!=SQLITE_OK ){
30815 rc = SQLITE_NOMEM;
30824 rc = findInodeInfo(pNew, &pNew->pInode);
30825 if( rc!=SQLITE_OK ){
30845 rc = SQLITE_NOMEM;
30858 rc = findInodeInfo(pNew, &pNew->pInode);
30859 if( (rc==SQLITE_OK) && (pNew->pInode->pSem==NULL) ){
30868 rc = SQLITE_NOMEM;
30878 if( rc!=SQLITE_OK ){
30885 if( rc!=SQLITE_OK ){
30892 return rc;
31063 int rc = SQLITE_OK; /* Return Code */
31103 rc = unixLogError(SQLITE_IOERR_FSTAT, "stat", zDb);
31108 return rc;
31145 int rc = SQLITE_OK; /* Function Return Code */
31235 rc = unixGetTempname(MAX_PATHNAME+2, zTmpname);
31236 if( rc!=SQLITE_OK ){
31237 return rc;
31260 rc = findCreateFileMode(zName, flags, &openMode, &uid, &gid);
31261 if( rc!=SQLITE_OK ){
31264 return rc;
31278 rc = unixLogError(SQLITE_CANTOPEN_BKPT, "open", zName);
31359 rc = fillInUnixFile(pVfs, fd, pFile, zPath, ctrlFlags);
31360 if( rc==SQLITE_OK ){
31361 rc = proxyTransformUnixFile((unixFile*)pFile, ":auto:");
31362 if( rc!=SQLITE_OK ){
31368 return rc;
31376 rc = fillInUnixFile(pVfs, fd, pFile, zPath, ctrlFlags);
31379 if( rc!=SQLITE_OK ){
31382 return rc;
31395 int rc = SQLITE_OK;
31404 rc = SQLITE_IOERR_DELETE_NOENT;
31406 rc = unixLogError(SQLITE_IOERR_DELETE, "unlink", zPath);
31408 return rc;
31413 rc = osOpenDirectory(zPath, &fd);
31414 if( rc==SQLITE_OK ){
31421 rc = unixLogError(SQLITE_IOERR_DIR_FSYNC, "fsync", zPath);
31424 }else if( rc==SQLITE_CANTOPEN ){
31425 rc = SQLITE_OK;
31429 return rc;
31671 int rc = SQLITE_OK;
31685 rc = SQLITE_ERROR;
31695 return rc;
31705 int rc;
31707 rc
31709 return rc;
31996 int rc = SQLITE_OK;
32047 rc = SQLITE_NOMEM;
32059 rc = fillInUnixFile(&dummyVfs, fd, (sqlite3_file*)pNew, path, 0);
32060 if( rc==SQLITE_OK ){
32068 return rc;
32136 int rc = -1;
32166 rc = 0;
32173 if( rc ){
32180 return rc;
32189 int rc = SQLITE_OK;
32195 rc = conchFile->pMethod->xLock((sqlite3_file*)conchFile, lockType);
32197 if( rc==SQLITE_BUSY ){
32244 rc = SQLITE_OK;
32246 rc = conchFile->pMethod->xLock((sqlite3_file*)conchFile, SHARED_LOCK);
32248 if( !rc ){
32249 rc = conchFile->pMethod->xLock((sqlite3_file*)conchFile, lockType);
32253 } while( rc==SQLITE_BUSY && nTries<3 );
32255 return rc;
32276 int rc = SQLITE_OK;
32287 rc = proxyGetHostID(myHostID, &pError);
32288 if( (rc&0xff)==SQLITE_IOERR ){
32292 rc = proxyConchLock(pFile, myHostID, SHARED_LOCK);
32293 if( rc!=SQLITE_OK ){
32301 rc = SQLITE_IOERR_READ;
32348 rc = SQLITE_BUSY;
32368 rc = SQLITE_BUSY;
32370 rc = proxyConchLock(pFile, myHostID, EXCLUSIVE_LOCK);
32373 rc = proxyConchLock(pFile, myHostID, EXCLUSIVE_LOCK);
32375 if( rc==SQLITE_OK ){
32389 rc = unixWrite((sqlite3_file *)conchFile, writeBuffer, writeSize, 0);
32394 if( rc==SQLITE_OK && createConch ){
32405 rc = osFchmod(conchFile->h, cmode);
32406 }while( rc==(-1) && errno==EINTR );
32407 if( rc!=0 ){
32426 if( rc==SQLITE_OK && pFile->openFlags ){
32437 rc=SQLITE_CANTOPEN_BKPT; /* SQLITE_BUSY? proxyTakeConch called
32441 if( rc==SQLITE_OK && !pCtx->lockProxy ){
32443 rc = proxyCreateUnixFile(path, &pCtx->lockProxy, 1);
32444 if( rc!=SQLITE_OK && rc!=SQLITE_NOMEM && tryOldLockPath ){
32453 if( rc==SQLITE_OK ){
32460 rc = SQLITE_NOMEM;
32464 if( rc==SQLITE_OK ){
32476 rc==SQLITE_OK?"ok":"failed"));
32477 return rc;
32487 int rc = SQLITE_OK; /* Subroutine return code */
32497 rc = conchFile->pMethod->xUnlock((sqlite3_file*)conchFile, NO_LOCK);
32501 (rc==SQLITE_OK ? "ok" : "failed")));
32502 return rc;
32556 int rc = SQLITE_OK;
32571 rc=lockProxy->pMethod->xClose((sqlite3_file *)lockProxy);
32572 if( rc ) return rc;
32579 return rc;
32624 int rc = SQLITE_OK;
32645 rc = proxyCreateConchPathname(dbPath, &pCtx->conchFilePath);
32646 if( rc==SQLITE_OK ){
32647 rc = proxyCreateUnixFile(pCtx->conchFilePath, &pCtx->conchFile, 0);
32648 if( rc==SQLITE_CANTOPEN && ((pFile->openFlags&O_RDWR) == 0) ){
32666 rc = SQLITE_OK;
32670 if( rc==SQLITE_OK && lockPath ){
32674 if( rc==SQLITE_OK ){
32677 rc = SQLITE_NOMEM;
32680 if( rc==SQLITE_OK ){
32698 (rc==SQLITE_OK ? "ok" : "failed")));
32699 return rc;
32726 int rc = SQLITE_OK;
32734 rc = SQLITE_ERROR /*SQLITE_PROTOCOL? SQLITE_MISUSE?*/;
32737 rc = SQLITE_OK;
32748 rc = SQLITE_OK;
32750 rc = switchLockProxyPath(pFile, proxyPath);
32754 rc = proxyTransformUnixFile(pFile, proxyPath);
32757 return rc;
32782 int rc = proxyTakeConch(pFile);
32783 if( rc==SQLITE_OK ){
32792 return rc;
32821 int rc = proxyTakeConch(pFile);
32822 if( rc==SQLITE_OK ){
32826 rc = proxy->pMethod->xLock((sqlite3_file*)proxy, eFileLock);
32832 return rc;
32845 int rc = proxyTakeConch(pFile);
32846 if( rc==SQLITE_OK ){
32850 rc = proxy->pMethod->xUnlock((sqlite3_file*)proxy, eFileLock);
32856 return rc;
32868 int rc = SQLITE_OK;
32871 rc = lockProxy->pMethod->xUnlock((sqlite3_file*)lockProxy, NO_LOCK);
32872 if( rc ) return rc;
32873 rc = lockProxy->pMethod->xClose((sqlite3_file*)lockProxy);
32874 if( rc ) return rc;
32880 rc = proxyReleaseConch(pFile);
32881 if( rc ) return rc;
32883 rc = conchFile->pMethod->xClose((sqlite3_file*)conchFile);
32884 if( rc ) return rc;
34337 int rc = SQLITE_NOTFOUND;
34344 rc = SQLITE_OK;
34359 rc = SQLITE_OK;
34366 return rc;
34417 int rc = SQLITE_OK;
34434 rc = SQLITE_NOMEM;
34438 rc = SQLITE_ERROR;
34444 rc = SQLITE_NOTFOUND;
34447 return rc;
34457 int rc;
34480 rc = winMemInit(winMemGetDataPtr());
34481 assert( rc!=SQLITE_OK || winMemGetHeap()!=NULL );
34482 assert( rc!=SQLITE_OK || winMemGetOwned() );
34483 assert( rc!=SQLITE_OK || sqlite3_memory_used()==0 );
34488 rc = SQLITE_BUSY;
34492 return rc;
34557 DWORD rc;
34558 while( (rc = osWaitForSingleObjectEx(hObject, INFINITE,
34560 return rc;
34984 int rc = sqlite3_initialize();
34985 if( rc ) return rc;
35634 OSTRACE(("SEEK file=%p, rc=SQLITE_IOERR_SEEK\n", pFile->h));
35638 OSTRACE(("SEEK file=%p, rc=SQLITE_OK\n", pFile->h));
35655 OSTRACE(("SEEK file=%p, rc=SQLITE_IOERR_SEEK\n", pFile->h));
35659 OSTRACE(("SEEK file=%p, rc=SQLITE_OK\n", pFile->h));
35682 int rc, cnt = 0;
35698 rc = osCloseHandle(pFile->h);
35699 /* SimulateIOError( rc=0; cnt=MX_CLOSE_ATTEMPT; ); */
35700 }while( rc==0 && ++cnt < MX_CLOSE_ATTEMPT && (sqlite3_win32_sleep(100), 1) );
35716 if( rc ){
35720 OSTRACE(("CLOSE pid=%lu, pFile=%p, file=%p, rc=%s\n",
35721 osGetCurrentProcessId(), pFile, pFile->h, rc ? "ok" : "failed"));
35722 return rc ? SQLITE_OK
35759 OSTRACE(("READ-MMAP pid=%lu, pFile=%p, file=%p, rc=SQLITE_OK\n",
35774 OSTRACE(("READ pid=%lu, pFile=%p, file=%p, rc=SQLITE_FULL\n",
35789 OSTRACE(("READ pid=%lu, pFile=%p, file=%p, rc=SQLITE_IOERR_READ\n",
35798 OSTRACE(("READ pid=%lu, pFile=%p, file=%p, rc=SQLITE_IOERR_SHORT_READ\n",
35803 OSTRACE(("READ pid=%lu, pFile=%p, file=%p, rc=SQLITE_OK\n",
35818 int rc = 0; /* True if error has occurred, else false */
35837 OSTRACE(("WRITE-MMAP pid=%lu, pFile=%p, file=%p, rc=SQLITE_OK\n",
35851 rc = winSeekFile(pFile, offset);
35852 if( rc==0 ){
35894 rc = 1;
35898 if( rc ){
35901 OSTRACE(("WRITE pid=%lu, pFile=%p, file=%p, rc=SQLITE_FULL\n",
35906 OSTRACE(("WRITE pid=%lu, pFile=%p, file=%p, rc=SQLITE_IOERR_WRITE\n",
35913 OSTRACE(("WRITE pid=%lu, pFile=%p, file=%p, rc=SQLITE_OK\n",
35923 int rc = SQLITE_OK; /* Return code for this function */
35942 rc = winLogError(SQLITE_IOERR_TRUNCATE, pFile->lastErrno,
35947 rc = winLogError(SQLITE_IOERR_TRUNCATE, pFile->lastErrno,
35961 OSTRACE(("TRUNCATE pid=%lu, pFile=%p, file=%p, rc=%s\n",
35962 osGetCurrentProcessId(), pFile, pFile->h, sqlite3ErrName(rc)));
35963 return rc;
35983 BOOL rc;
36024 OSTRACE(("SYNC-NOP pid=%lu, pFile=%p, file=%p, rc=SQLITE_OK\n",
36032 "rc=SQLITE_OK\n", osGetCurrentProcessId(),
36037 "rc=SQLITE_IOERR_MMAP\n", osGetCurrentProcessId(),
36044 rc = osFlushFileBuffers(pFile->h);
36045 SimulateIOError( rc=FALSE );
36046 if( rc ){
36047 OSTRACE(("SYNC pid=%lu, pFile=%p, file=%p, rc=SQLITE_OK\n",
36052 OSTRACE(("SYNC pid=%lu, pFile=%p, file=%p, rc=SQLITE_IOERR_FSYNC\n",
36065 int rc = SQLITE_OK;
36080 rc = winLogError(SQLITE_IOERR_FSTAT, pFile->lastErrno,
36095 rc = winLogError(SQLITE_IOERR_FSTAT, pFile->lastErrno,
36100 OSTRACE(("SIZE file=%p, pSize=%p, *pSize=%lld, rc=%s\n",
36101 pFile->h, pSize, *pSize, sqlite3ErrName(rc)));
36102 return rc;
36224 int rc = SQLITE_OK; /* Return code from subroutines */
36240 OSTRACE(("LOCK-HELD file=%p, rc=SQLITE_OK\n", pFile->h));
36273 rc = SQLITE_IOERR_LOCK;
36274 OSTRACE(("LOCK-FAIL file=%p, count=%d, rc=%s\n",
36275 pFile->h, cnt, sqlite3ErrName(rc)));
36276 return rc;
36343 rc = SQLITE_OK;
36346 rc = SQLITE_BUSY;
36351 OSTRACE(("LOCK file=%p, lock=%d, rc=%s\n",
36352 pFile->h, pFile->locktype, sqlite3ErrName(rc)));
36353 return rc;
36381 OSTRACE(("TEST-WR-LOCK file=%p, pResOut=%p, *pResOut=%d, rc=SQLITE_OK\n",
36400 int rc = SQLITE_OK;
36411 rc = winLogError(SQLITE_IOERR_UNLOCK, osGetLastError(),
36425 OSTRACE(("UNLOCK file=%p, lock=%d, rc=%s\n",
36426 pFile->h, pFile->locktype, sqlite3ErrName(rc)));
36427 return rc;
36460 OSTRACE(("FCNTL file=%p, rc=SQLITE_OK\n", pFile->h));
36465 OSTRACE(("FCNTL file=%p, rc=SQLITE_OK\n", pFile->h));
36470 OSTRACE(("FCNTL file=%p, rc=SQLITE_OK\n", pFile->h));
36476 int rc = winFileSize(id, &oldSz);
36477 if( rc==SQLITE_OK ){
36481 rc = winTruncate(id, newSz);
36485 OSTRACE(("FCNTL file=%p, rc=%s\n", pFile->h, sqlite3ErrName(rc)));
36486 return rc;
36488 OSTRACE(("FCNTL file=%p, rc=SQLITE_OK\n", pFile->h));
36493 OSTRACE(("FCNTL file=%p, rc=SQLITE_OK\n", pFile->h));
36498 OSTRACE(("FCNTL file=%p, rc=SQLITE_OK\n", pFile->h));
36503 OSTRACE(("FCNTL file=%p, rc=SQLITE_OK\n", pFile->h));
36518 OSTRACE(("FCNTL file=%p, rc=SQLITE_OK\n", pFile->h));
36527 OSTRACE(("FCNTL oldFile=%p, newFile=%p, rc=SQLITE_OK\n",
36534 int rc = winGetTempname(pFile->pVfs, &zTFile);
36535 if( rc==SQLITE_OK ){
36538 OSTRACE(("FCNTL file=%p, rc=%s\n", pFile->h, sqlite3ErrName(rc)));
36539 return rc;
36544 int rc = SQLITE_OK;
36553 rc = winMapfile(pFile, -1);
36556 OSTRACE(("FCNTL file=%p, rc=%s\n", pFile->h, sqlite3ErrName(rc)));
36557 return rc;
36561 OSTRACE(("FCNTL file=%p, rc=SQLITE_NOTFOUND\n", pFile->h));
36717 int rc = 0; /* Result code form Lock/UnlockFileEx() */
36727 rc = winUnlockFile(&pFile->hFile.h, ofst, 0, nByte, 0);
36732 rc = winLockFile(&pFile->hFile.h, dwFlags, ofst, 0, nByte, 0);
36735 if( rc!= 0 ){
36736 rc = SQLITE_OK;
36739 rc = SQLITE_BUSY;
36742 OSTRACE(("SHM-LOCK file=%p, func=%s, errno=%lu, rc=%s\n",
36744 "winLockFile", pFile->lastErrno, sqlite3ErrName(rc)));
36746 return rc;
36772 OSTRACE(("SHM-PURGE-UNMAP pid=%lu, region=%d, rc=%s\n",
36776 OSTRACE(("SHM-PURGE-CLOSE pid=%lu, region=%d, rc=%s\n",
36811 int rc; /* Result code */
36853 rc = SQLITE_IOERR_NOMEM;
36857 rc = winOpen(pDbFd->pVfs,
36862 if( SQLITE_OK!=rc ){
36870 rc = winTruncate((sqlite3_file *)&pShmNode->hFile, 0);
36871 if( rc!=SQLITE_OK ){
36872 rc = winLogError(SQLITE_IOERR_SHMOPEN, osGetLastError(),
36876 if( rc==SQLITE_OK ){
36878 rc = winShmSystemLock(pShmNode, _SHM_RDLCK, WIN_SHM_DMS, 1);
36880 if( rc ) goto shm_open_err;
36912 return rc;
36970 int rc = SQLITE_OK; /* Result code */
36996 rc = winShmSystemLock(pShmNode, _SHM_UNLCK, ofst+WIN_SHM_BASE, n);
36998 rc = SQLITE_OK;
37002 if( rc==SQLITE_OK ){
37015 rc = SQLITE_BUSY;
37022 if( rc==SQLITE_OK ){
37024 rc = winShmSystemLock(pShmNode, _SHM_RDLCK, ofst+WIN_SHM_BASE, n);
37026 rc = SQLITE_OK;
37031 if( rc==SQLITE_OK ){
37040 rc = SQLITE_BUSY;
37048 if( rc==SQLITE_OK ){
37049 rc = winShmSystemLock(pShmNode, _SHM_WRLCK, ofst+WIN_SHM_BASE, n);
37050 if( rc==SQLITE_OK ){
37057 OSTRACE(("SHM-LOCK pid=%lu, id=%d, sharedMask=%03x, exclMask=%03x, rc=%s\n",
37059 sqlite3ErrName(rc)));
37060 return rc;
37107 int rc = SQLITE_OK;
37110 rc = winOpenSharedMemory(pDbFd);
37111 if( rc!=SQLITE_OK ) return rc;
37130 rc = winFileSize((sqlite3_file *)&pShmNode->hFile, &sz);
37131 if( rc!=SQLITE_OK ){
37132 rc = winLogError(SQLITE_IOERR_SHMSIZE, osGetLastError(),
37145 rc = winTruncate((sqlite3_file *)&pShmNode->hFile, nByte);
37146 if( rc!=SQLITE_OK ){
37147 rc = winLogError(SQLITE_IOERR_SHMSIZE, osGetLastError(),
37158 rc = SQLITE_IOERR_NOMEM;
37180 OSTRACE(("SHM-MAP-CREATE pid=%lu, region=%d, size=%d, rc=%s\n",
37195 OSTRACE(("SHM-MAP-MAP pid=%lu, region=%d, offset=%d, size=%d, rc=%s\n",
37201 rc = winLogError(SQLITE_IOERR_SHMMAP, pShmNode->lastErrno,
37223 return rc;
37247 "rc=SQLITE_IOERR_MMAP\n", osGetCurrentProcessId(), pFile,
37259 OSTRACE(("UNMAP-FILE pid=%lu, pFile=%p, hMap=%p, rc=SQLITE_IOERR_MMAP\n",
37266 OSTRACE(("UNMAP-FILE pid=%lu, pFile=%p, rc=SQLITE_OK\n",
37289 int rc;
37298 rc = winFileSize((sqlite3_file*)pFd, &nMap);
37299 if( rc ){
37300 OSTRACE(("MAP-FILE pid=%lu, pFile=%p, rc=SQLITE_IOERR_FSTAT\n",
37336 rc = winLogError(SQLITE_IOERR_MMAP, pFd->lastErrno,
37339 OSTRACE(("MAP-FILE-CREATE pid=%lu, pFile=%p, rc=%s\n",
37340 osGetCurrentProcessId(), pFd, sqlite3ErrName(rc)));
37354 rc = winLogError(SQLITE_IOERR_MMAP, pFd->lastErrno,
37357 OSTRACE(("MAP-FILE-MAP pid=%lu, pFile=%p, rc=%s\n",
37358 osGetCurrentProcessId(), pFd, sqlite3ErrName(rc)));
37366 OSTRACE(("MAP-FILE pid=%lu, pFile=%p, rc=SQLITE_OK\n",
37396 int rc = winMapfile(pFd, -1);
37397 if( rc!=SQLITE_OK ){
37398 OSTRACE(("FETCH pid=%lu, pFile=%p, rc=%s\n",
37399 osGetCurrentProcessId(), pFd, sqlite3ErrName(rc)));
37400 return rc;
37410 OSTRACE(("FETCH pid=%lu, pFile=%p, pp=%p, *pp=%p, rc=SQLITE_OK\n",
37453 OSTRACE(("UNFETCH pid=%lu, pFile=%p, rc=SQLITE_OK\n",
37585 OSTRACE(("TEMP-FILENAME rc=SQLITE_IOERR_NOMEM\n"));
37603 OSTRACE(("TEMP-FILENAME rc=SQLITE_ERROR\n"));
37643 OSTRACE(("TEMP-FILENAME rc=SQLITE_IOERR_NOMEM\n"));
37656 OSTRACE(("TEMP-FILENAME rc=SQLITE_IOERR_NOMEM\n"));
37664 OSTRACE(("TEMP-FILENAME rc=SQLITE_IOERR_CONVPATH\n"));
37677 OSTRACE(("TEMP-FILENAME rc=SQLITE_IOERR_NOMEM\n"));
37695 OSTRACE(("TEMP-FILENAME rc=SQLITE_IOERR_NOMEM\n"));
37701 OSTRACE(("TEMP-FILENAME rc=SQLITE_IOERR_GETTEMPPATH\n"));
37713 OSTRACE(("TEMP-FILENAME rc=SQLITE_IOERR_NOMEM\n"));
37723 OSTRACE(("TEMP-FILENAME rc=SQLITE_IOERR_NOMEM\n"));
37728 OSTRACE(("TEMP-FILENAME rc=SQLITE_IOERR_GETTEMPPATH\n"));
37738 OSTRACE(("TEMP-FILENAME rc=SQLITE_IOERR_NOMEM\n"));
37752 OSTRACE(("TEMP-FILENAME rc=SQLITE_ERROR\n"));
37770 OSTRACE(("TEMP-FILENAME rc=SQLITE_ERROR\n"));
37785 OSTRACE(("TEMP-FILENAME name=%s, rc=SQLITE_OK\n", zBuf));
37796 int rc = 0;
37803 while( !(rc = osGetFileAttributesExW((LPCWSTR)zConverted,
37806 if( !rc ){
37847 int rc = SQLITE_OK; /* Function Return Code */
37911 rc = winGetTempname(pVfs, &zTmpname);
37912 if( rc!=SQLITE_OK ){
37913 OSTRACE(("OPEN name=%s, rc=%s", zUtf8Name, sqlite3ErrName(rc)));
37914 return rc;
37930 OSTRACE(("OPEN name=%s, rc=SQLITE_IOERR_NOMEM", zUtf8Name));
37937 OSTRACE(("OPEN name=%s, rc=SQLITE_CANTOPEN_ISDIR", zUtf8Name));
38028 OSTRACE(("OPEN file=%p, name=%s, access=%lx, rc=%s\n", h, zUtf8Name,
38055 "rc=%s\n", h, zUtf8Name, dwDesiredAccess, pOutFlags, pOutFlags ?
38060 && (rc = winceCreateLock(zName, pFile))!=SQLITE_OK
38065 OSTRACE(("OPEN-CE-LOCK name=%s, rc=%s\n", zName, sqlite3ErrName(rc)));
38066 return rc;
38097 return rc;
38118 int rc;
38130 OSTRACE(("DELETE name=%s, rc=SQLITE_IOERR_NOMEM\n", zFilename));
38145 rc = SQLITE_IOERR_DELETE_NOENT; /* Already gone? */
38147 rc = SQLITE_ERROR;
38158 rc = SQLITE_IOERR_DELETE_NOENT; /* Already gone? */
38160 rc = SQLITE_ERROR;
38165 rc = SQLITE_ERROR; /* Files only. */
38169 rc = SQLITE_OK; /* Deleted OK. */
38173 rc = SQLITE_ERROR; /* No more retries. */
38186 rc = SQLITE_IOERR_DELETE_NOENT; /* Already gone? */
38188 rc = SQLITE_ERROR;
38193 rc = SQLITE_ERROR; /* Files only. */
38197 rc = SQLITE_OK; /* Deleted OK. */
38201 rc = SQLITE_ERROR; /* No more retries. */
38207 if( rc && rc!=SQLITE_IOERR_DELETE_NOENT ){
38208 rc = winLogError(SQLITE_IOERR_DELETE, lastErrno, "winDelete", zFilename);
38213 OSTRACE(("DELETE name=%s, rc=%s\n", zFilename, sqlite3ErrName(rc)));
38214 return rc;
38227 int rc = 0;
38238 OSTRACE(("ACCESS name=%s, rc=SQLITE_IOERR_NOMEM\n", zFilename));
38245 while( !(rc = osGetFileAttributesExW((LPCWSTR)zConverted,
38248 if( rc ){
38279 rc = attr!=INVALID_FILE_ATTRIBUTES;
38282 rc = attr!=INVALID_FILE_ATTRIBUTES &&
38288 *pResOut = rc;
38289 OSTRACE(("ACCESS name=%s, pResOut=%p, *pResOut=%d, rc=SQLITE_OK\n",
38728 int rc;
38730 rc = winCurrentTimeInt64(pVfs, &i);
38731 if( !rc ){
38734 return rc;
39070 int rc;
39078 rc = sqlite3BitvecSet(p, i);
39080 if( aiValues[j] ) rc |= sqlite3BitvecSet(p, aiValues[j]);
39083 return rc;
39198 int rc = -1;
39249 ** match (rc==0). Change rc to non-zero if a discrepancy
39252 rc = sqlite3BitvecTest(0,0) + sqlite3BitvecTest(pBitvec, sz+1)
39257 rc = i;
39267 return rc;
39565 int rc;
39573 rc = pCache->xStress(pCache->pStress, pPg);
39574 if( rc!=SQLITE_OK && rc!=SQLITE_BUSY ){
39575 return rc;
42705 int rc = sqlite3OsRead(fd, ac, sizeof(ac), offset);
42706 if( rc==SQLITE_OK ){
42709 return rc;
42738 int rc = SQLITE_OK;
42745 rc = pPager->noLock ? SQLITE_OK : sqlite3OsUnlock(pPager->fd, eLock);
42751 return rc;
42765 int rc = SQLITE_OK;
42769 rc = pPager->noLock ? SQLITE_OK : sqlite3OsLock(pPager->fd, eLock);
42770 if( rc==SQLITE_OK && (pPager->eLock!=UNKNOWN_LOCK||eLock==EXCLUSIVE_LOCK) ){
42775 return rc;
42888 int rc; /* Return code */
42896 if( SQLITE_OK!=(rc = sqlite3OsFileSize(pJrnl, &szJ))
42898 || SQLITE_OK!=(rc = read32bits(pJrnl, szJ-16, &len))
42901 || SQLITE_OK!=(rc = read32bits(pJrnl, szJ-12, &cksum))
42902 || SQLITE_OK!=(rc = sqlite3OsRead(pJrnl, aMagic, 8, szJ-8))
42904 || SQLITE_OK!=(rc = sqlite3OsRead(pJrnl, zMaster, len, szJ-16-len))
42906 return rc;
42975 int rc = SQLITE_OK; /* Return code */
42982 rc = sqlite3OsTruncate(pPager->jfd, 0);
42985 rc = sqlite3OsWrite(pPager->jfd, zeroHdr, sizeof(zeroHdr), 0);
42987 if( rc==SQLITE_OK && !pPager->noSync ){
42988 rc = sqlite3OsSync(pPager->jfd, SQLITE_SYNC_DATAONLY|pPager->syncFlags);
42997 if( rc==SQLITE_OK && iLimit>0 ){
42999 rc = sqlite3OsFileSize(pPager->jfd, &sz);
43000 if( rc==SQLITE_OK && sz>iLimit ){
43001 rc = sqlite3OsTruncate(pPager->jfd, iLimit);
43005 return rc;
43024 int rc = SQLITE_OK; /* Return code */
43114 for(nWrite=0; rc==SQLITE_OK&&nWrite<JOURNAL_HDR_SZ(pPager); nWrite+=nHeader){
43116 rc = sqlite3OsWrite(pPager->jfd, zHeader, nHeader, pPager->journalOff);
43121 return rc;
43148 int rc; /* Return code */
43170 rc = sqlite3OsRead(pPager->jfd, aMagic, sizeof(aMagic), iHdrOff);
43171 if( rc ){
43172 return rc;
43183 if( SQLITE_OK!=(rc = read32bits(pPager->jfd, iHdrOff+8, pNRec))
43184 || SQLITE_OK!=(rc = read32bits(pPager->jfd, iHdrOff+12, &pPager->cksumInit))
43185 || SQLITE_OK!=(rc = read32bits(pPager->jfd, iHdrOff+16, pDbSize))
43187 return rc;
43195 if( SQLITE_OK!=(rc = read32bits(pPager->jfd, iHdrOff+20, &iSectorSize))
43196 || SQLITE_OK!=(rc = read32bits(pPager->jfd, iHdrOff+24, &iPageSize))
43198 return rc;
43230 rc = sqlite3PagerSetPagesize(pPager, &iPageSize, -1);
43231 testcase( rc!=SQLITE_OK );
43243 return rc;
43267 int rc; /* Return code */
43302 if( (0 != (rc = write32bits(pPager->jfd, iHdrOff, PAGER_MJ_PGNO(pPager))))
43303 || (0 != (rc = sqlite3OsWrite(pPager->jfd, zMaster, nMaster, iHdrOff+4)))
43304 || (0 != (rc = write32bits(pPager->jfd, iHdrOff+4+nMaster, nMaster)))
43305 || (0 != (rc = write32bits(pPager->jfd, iHdrOff+4+nMaster+4, cksum)))
43306 || (0 != (rc = sqlite3OsWrite(pPager->jfd, aJournalMagic, 8, iHdrOff+4+nMaster+8)))
43308 return rc;
43322 if( SQLITE_OK==(rc = sqlite3OsFileSize(pPager->jfd, &jrnlSize))
43325 rc = sqlite3OsTruncate(pPager->jfd, pPager->journalOff);
43327 return rc;
43373 int rc = SQLITE_OK; /* Result code */
43378 rc |= sqlite3BitvecSet(p->pInSavepoint, pgno);
43379 testcase( rc==SQLITE_NOMEM );
43380 assert( rc==SQLITE_OK || rc==SQLITE_NOMEM );
43383 return rc;
43419 int rc; /* Error code returned by pagerUnlockDb() */
43444 rc = pagerUnlockDb(pPager, NO_LOCK);
43445 if( rc!=SQLITE_OK && pPager->eState==PAGER_ERROR ){
43496 static int pager_error(Pager *pPager, int rc){
43497 int rc2 = rc & 0xff;
43498 assert( rc==SQLITE_OK || !MEMDB );
43505 pPager->errCode = rc;
43508 return rc;
43567 int rc = SQLITE_OK; /* Error code from journal finalization operation */
43600 rc = SQLITE_OK;
43602 rc = sqlite3OsTruncate(pPager->jfd, 0);
43603 if( rc==SQLITE_OK && pPager->fullSync ){
43609 rc = sqlite3OsSync(pPager->jfd, pPager->syncFlags);
43616 rc = zeroJournalHdr(pPager, hasMaster);
43631 rc = sqlite3OsDelete(pPager->pVfs, pPager->zJournal, 0);
43660 }else if( rc==SQLITE_OK && bCommit && pPager->dbFileSize>pPager->dbSize ){
43668 rc = pager_truncate(pPager, pPager->dbSize);
43671 if( rc==SQLITE_OK && bCommit && isOpen(pPager->fd) ){
43672 rc = sqlite3OsFileControl(pPager->fd, SQLITE_FCNTL_COMMIT_PHASETWO, 0);
43673 if( rc==SQLITE_NOTFOUND ) rc = SQLITE_OK;
43685 return (rc==SQLITE_OK?rc2:rc);
43808 int rc;
43840 rc = read32bits(jfd, *pOffset, &pgno);
43841 if( rc!=SQLITE_OK ) return rc;
43842 rc = sqlite3OsRead(jfd, (u8*)aData, pPager->pageSize, (*pOffset)+4);
43843 if( rc!=SQLITE_OK ) return rc;
43859 rc = read32bits(jfd, (*pOffset)-4, &cksum);
43860 if( rc ) return rc;
43869 if( pDone && (rc = sqlite3BitvecSet(pDone, pgno))!=SQLITE_OK ){
43870 return rc;
43938 rc = sqlite3OsWrite(pPager->fd, (u8 *)aData, pPager->pageSize, ofst);
43943 CODEC1(pPager, aData, pgno, 3, rc=SQLITE_NOMEM);
43945 CODEC2(pPager, aData, pgno, 7, rc=SQLITE_NOMEM, aData);
43967 rc = sqlite3PagerAcquire(pPager, pgno, &pPg, 1);
43970 if( rc!=SQLITE_OK ) return rc;
44017 CODEC1(pPager, pData, pPg->pgno, 3, rc=SQLITE_NOMEM);
44020 return rc;
44068 int rc; /* Return code */
44083 rc = SQLITE_NOMEM;
44086 rc = sqlite3OsOpen(pVfs, zMaster, pMaster, flags, 0);
44088 if( rc!=SQLITE_OK ) goto delmaster_out;
44095 rc = sqlite3OsFileSize(pMaster, &nMasterJournal);
44096 if( rc!=SQLITE_OK ) goto delmaster_out;
44100 rc = SQLITE_NOMEM;
44104 rc = sqlite3OsRead(pMaster, zMasterJournal, (int)nMasterJournal, 0);
44105 if( rc!=SQLITE_OK ) goto delmaster_out;
44111 rc = sqlite3OsAccess(pVfs, zJournal, SQLITE_ACCESS_EXISTS, &exists);
44112 if( rc!=SQLITE_OK ){
44122 rc = sqlite3OsOpen(pVfs, zJournal, pJournal, flags, 0);
44123 if( rc!=SQLITE_OK ){
44127 rc = readMasterJournal(pJournal, zMasterPtr, nMasterPtr);
44129 if( rc!=SQLITE_OK ){
44143 rc = sqlite3OsDelete(pVfs, zMaster, 0);
44152 return rc;
44177 int rc = SQLITE_OK;
44188 rc = sqlite3OsFileSize(pPager->fd, &currentSize);
44190 if( rc==SQLITE_OK && currentSize!=newSize ){
44192 rc = sqlite3OsTruncate(pPager->fd, newSize);
44198 rc = sqlite3OsWrite(pPager->fd, pTmp, szPage, newSize-szPage);
44200 if( rc==SQLITE_OK ){
44205 return rc;
44325 int rc; /* Result code of a subroutine */
44335 rc = sqlite3OsFileSize(pPager->jfd, &szJ);
44336 if( rc!=SQLITE_OK ){
44352 rc = readMasterJournal(pPager->jfd, zMaster, pPager->pVfs->mxPathname+1);
44353 if( rc==SQLITE_OK && zMaster[0] ){
44354 rc = sqlite3OsAccess(pVfs, zMaster, SQLITE_ACCESS_EXISTS, &res);
44357 if( rc!=SQLITE_OK || !res ){
44373 rc = readJournalHdr(pPager, isHot, szJ, &nRec, &mxPg);
44374 if( rc!=SQLITE_OK ){
44375 if( rc==SQLITE_DONE ){
44376 rc = SQLITE_OK;
44414 rc = pager_truncate(pPager, mxPg);
44415 if( rc!=SQLITE_OK ){
44429 rc = pager_playback_one_page(pPager,&pPager->journalOff,0,1,0);
44430 if( rc==SQLITE_OK ){
44433 if( rc==SQLITE_DONE ){
44436 }else if( rc==SQLITE_IOERR_SHORT_READ ){
44442 rc = SQLITE_OK;
44481 if( rc==SQLITE_OK ){
44483 rc = readMasterJournal(pPager->jfd, zMaster, pPager->pVfs->mxPathname+1);
44484 testcase( rc!=SQLITE_OK );
44486 if( rc==SQLITE_OK
44489 rc = sqlite3PagerSync(pPager, 0);
44491 if( rc==SQLITE_OK ){
44492 rc = pager_end_transaction(pPager, zMaster[0]!='\0', 0);
44493 testcase( rc!=SQLITE_OK );
44495 if( rc==SQLITE_OK && zMaster[0] && res ){
44499 rc = pager_delmaster(pPager, zMaster);
44500 testcase( rc!=SQLITE_OK );
44512 return rc;
44530 int rc = SQLITE_OK; /* Return code */
44539 rc = sqlite3WalReadFrame(pPager->pWal, iFrame, pgsz, pPg->pData);
44544 rc = sqlite3OsRead(pPager->fd, pPg->pData, pgsz, iOffset);
44545 if( rc==SQLITE_IOERR_SHORT_READ ){
44546 rc = SQLITE_OK;
44551 if( rc ){
44570 CODEC1(pPager, pPg->pData, pgno, 3, rc = SQLITE_NOMEM);
44578 return rc;
44617 int rc = SQLITE_OK;
44628 rc = sqlite3WalFindFrame(pPager->pWal, pPg->pgno, &iFrame);
44629 if( rc==SQLITE_OK ){
44630 rc = readDbPage(pPg, iFrame);
44632 if( rc==SQLITE_OK ){
44649 return rc;
44656 int rc; /* Return Code */
44667 rc = sqlite3WalUndo(pPager->pWal, pagerUndoCallback, (void *)pPager);
44669 while( pList && rc==SQLITE_OK ){
44671 rc = pagerUndoCallback((void *)pPager, pList->pgno);
44675 return rc;
44693 int rc; /* Return code */
44727 rc = sqlite3WalFrames(pPager->pWal,
44730 if( rc==SQLITE_OK && pPager->pBackup ){
44743 return rc;
44755 int rc; /* Return code */
44768 rc = sqlite3WalBeginReadTransaction(pPager->pWal, &changed);
44769 if( rc!=SQLITE_OK || changed ){
44774 return rc;
44810 int rc = sqlite3OsFileSize(pPager->fd, &n);
44811 if( rc!=SQLITE_OK ){
44812 return rc;
44850 int rc = SQLITE_OK;
44858 rc = pagerPagecount(pPager, &nPage);
44859 if( rc ) return rc;
44861 rc = sqlite3OsDelete(pPager->pVfs, pPager->zWal, 0);
44862 if( rc==SQLITE_IOERR_DELETE_NOENT ) rc = SQLITE_OK;
44865 rc = sqlite3OsAccess(
44869 if( rc==SQLITE_OK ){
44872 rc = sqlite3PagerOpenWal(pPager, 0);
44878 return rc;
44921 int rc = SQLITE_OK; /* Return code */
44963 while( rc==SQLITE_OK && pPager->journalOff<iHdrOff ){
44964 rc = pager_playback_one_page(pPager, &pPager->journalOff, pDone, 1, 1);
44966 assert( rc!=SQLITE_DONE );
44976 while( rc==SQLITE_OK && pPager->journalOff<szJ ){
44980 rc = readJournalHdr(pPager, 0, szJ, &nJRec, &dummy);
44981 assert( rc!=SQLITE_DONE );
44993 for(ii=0; rc==SQLITE_OK && ii<nJRec && pPager->journalOff<szJ; ii++){
44994 rc = pager_playback_one_page(pPager, &pPager->journalOff, pDone, 1, 1);
44996 assert( rc!=SQLITE_DONE );
44998 assert( rc!=SQLITE_OK || pPager->journalOff>=szJ );
45009 rc = sqlite3WalSavepointUndo(pPager->pWal, pSavepoint->aWalData);
45011 for(ii=pSavepoint->iSubRec; rc==SQLITE_OK && ii<pPager->nSubRec; ii++){
45013 rc = pager_playback_one_page(pPager, &offset, pDone, 0, 1);
45015 assert( rc!=SQLITE_DONE );
45019 if( rc==SQLITE_OK ){
45023 return rc;
45172 int rc; /* Return code */
45180 rc = sqlite3OsOpen(pPager->pVfs, 0, pFile, vfsFlags, 0);
45181 assert( rc!=SQLITE_OK || isOpen(pFile) );
45182 return rc;
45253 int rc = SQLITE_OK;
45275 rc = sqlite3OsFileSize(pPager->fd, &nByte);
45277 if( rc==SQLITE_OK ){
45279 if( !pNew ) rc = SQLITE_NOMEM;
45282 if( rc==SQLITE_OK ){
45284 rc = sqlite3PcacheSetPageSize(pPager->pPCache, pageSize);
45286 if( rc==SQLITE_OK ){
45297 if( rc==SQLITE_OK ){
45304 return rc;
45374 int rc = SQLITE_OK;
45386 rc = sqlite3OsRead(pPager->fd, pDest, N, 0);
45387 if( rc==SQLITE_IOERR_SHORT_READ ){
45388 rc = SQLITE_OK;
45391 return rc;
45423 int rc; /* Return code */
45436 rc = pagerLockDb(pPager, locktype);
45437 }while( rc==SQLITE_BUSY && pPager->xBusyHandler(pPager->pBusyHandlerArg) );
45438 return rc;
45518 int rc = SQLITE_OK;
45520 rc = sqlite3OsSync(pPager->jfd, SQLITE_SYNC_NORMAL);
45522 if( rc==SQLITE_OK ){
45523 rc = sqlite3OsFileSize(pPager->jfd, &pPager->journalHdr);
45525 return rc;
45722 int rc; /* Return code */
45730 rc = sqlite3PagerExclusiveLock(pPager);
45731 if( rc!=SQLITE_OK ) return rc;
45770 rc = sqlite3OsRead(pPager->jfd, aMagic, 8, iNextHdrOffset);
45771 if( rc==SQLITE_OK && 0==memcmp(aMagic, aJournalMagic, 8) ){
45773 rc = sqlite3OsWrite(pPager->jfd, &zerobyte, 1, iNextHdrOffset);
45775 if( rc!=SQLITE_OK && rc!=SQLITE_IOERR_SHORT_READ ){
45776 return rc;
45793 rc = sqlite3OsSync(pPager->jfd, pPager->syncFlags);
45794 if( rc!=SQLITE_OK ) return rc;
45797 rc = sqlite3OsWrite(
45800 if( rc!=SQLITE_OK ) return rc;
45805 rc = sqlite3OsSync(pPager->jfd, pPager->syncFlags|
45808 if( rc!=SQLITE_OK ) return rc;
45814 rc = writeJournalHdr(pPager);
45815 if( rc!=SQLITE_OK ) return rc;
45865 int rc = SQLITE_OK; /* Return code */
45873 ** is not possible for rc to be other than SQLITE_OK if this branch
45877 assert( pPager->tempFile && rc==SQLITE_OK );
45878 rc = pagerOpentemp(pPager, pPager->fd, pPager->vfsFlags);
45884 assert( rc!=SQLITE_OK || isOpen(pPager->fd) );
45885 if( rc==SQLITE_OK
45894 while( rc==SQLITE_OK && pList ){
45916 rc = sqlite3OsWrite(pPager->fd, pData, pPager->pageSize, offset);
45944 return rc;
45956 int rc = SQLITE_OK;
45961 rc = pagerOpentemp(pPager, pPager->sjfd, SQLITE_OPEN_SUBJOURNAL);
45964 return rc;
45981 int rc = SQLITE_OK;
45993 rc = openSubJournal(pPager);
45997 if( rc==SQLITE_OK ){
46004 rc = write32bits(pPager->sjfd, offset, pPg->pgno);
46005 if( rc==SQLITE_OK ){
46006 rc = sqlite3OsWrite(pPager->sjfd, pData2, pPager->pageSize, offset+4);
46010 if( rc==SQLITE_OK ){
46013 rc = addToSavepointBitvecs(pPager, pPg->pgno);
46015 return rc;
46039 int rc = SQLITE_OK;
46075 rc = subjournalPage(pPg);
46077 if( rc==SQLITE_OK ){
46078 rc = pagerWalFrames(pPager, pPg, 0, 0);
46086 rc = syncJournal(pPager, 1);
46117 rc==SQLITE_OK && pPg->pgno>pPager->dbSize && subjRequiresPage(pPg)
46119 rc = subjournalPage(pPg);
46123 if( rc==SQLITE_OK ){
46125 rc = pager_write_pagelist(pPager, pPg);
46130 if( rc==SQLITE_OK ){
46135 return pager_error(pPager, rc);
46180 int rc = SQLITE_OK; /* Return code */
46234 rc = sqlite3OsFullPathname(pVfs, zFilename, nPathname, zPathname);
46243 if( rc==SQLITE_OK && nPathname+8>pVfs->mxPathname ){
46250 rc = SQLITE_CANTOPEN_BKPT;
46252 if( rc!=SQLITE_OK ){
46254 return rc;
46318 rc = sqlite3OsOpen(pVfs, pPager->zFilename, pPager->fd, vfsFlags, &fout);
46330 if( rc==SQLITE_OK ){
46385 if( rc==SQLITE_OK ){
46387 rc = sqlite3PagerSetPagesize(pPager, &szPageDflt, -1);
46388 testcase( rc!=SQLITE_OK );
46392 if( rc==SQLITE_OK ){
46395 rc = sqlite3PcacheOpen(szPageDflt, nExtra, !memDb,
46401 if( rc!=SQLITE_OK ){
46405 return rc;
46472 int rc;
46477 rc = sqlite3OsFileControl(pPager->fd, SQLITE_FCNTL_HAS_MOVED, &bHasMoved);
46478 if( rc==SQLITE_NOTFOUND ){
46482 rc = SQLITE_OK;
46483 }else if( rc==SQLITE_OK && bHasMoved ){
46484 rc = SQLITE_READONLY_DBMOVED;
46486 return rc;
46523 int rc = SQLITE_OK; /* Return code */
46537 rc = sqlite3OsAccess(pVfs, pPager->zJournal, SQLITE_ACCESS_EXISTS, &exists);
46539 if( rc==SQLITE_OK && exists ){
46550 rc = sqlite3OsCheckReservedLock(pPager->fd, &locked);
46551 if( rc==SQLITE_OK && !locked ){
46554 rc = pagerPagecount(pPager, &nPage);
46555 if( rc==SQLITE_OK ){
46580 rc = sqlite3OsOpen(pVfs, pPager->zJournal, pPager->jfd, f, &f);
46582 if( rc==SQLITE_OK ){
46584 rc = sqlite3OsRead(pPager->jfd, (void *)&first, 1, 0);
46585 if( rc==SQLITE_IOERR_SHORT_READ ){
46586 rc = SQLITE_OK;
46592 }else if( rc==SQLITE_CANTOPEN ){
46603 rc = SQLITE_OK;
46610 return rc;
46641 int rc = SQLITE_OK; /* Return code */
46658 rc = pager_wait_on_lock(pPager, SHARED_LOCK);
46659 if( rc!=SQLITE_OK ){
46668 rc = hasHotJournal(pPager, &bHotJournal);
46670 if( rc!=SQLITE_OK ){
46675 rc = SQLITE_READONLY_ROLLBACK;
46694 rc = pagerLockDb(pPager, EXCLUSIVE_LOCK);
46695 if( rc!=SQLITE_OK ){
46715 rc = sqlite3OsAccess(
46717 if( rc==SQLITE_OK && bExists ){
46721 rc = sqlite3OsOpen(pVfs, pPager->zJournal, pPager->jfd, f, &fout);
46722 assert( rc!=SQLITE_OK || isOpen(pPager->jfd) );
46723 if( rc==SQLITE_OK && fout&SQLITE_OPEN_READONLY ){
46724 rc = SQLITE_CANTOPEN_BKPT;
46739 assert( rc==SQLITE_OK );
46740 rc = pagerSyncHotJournal(pPager);
46741 if( rc==SQLITE_OK ){
46742 rc = pager_playback(pPager, 1);
46749 if( rc!=SQLITE_OK ){
46766 pager_error(pPager, rc);
46796 rc = pagerPagecount(pPager, &nPage);
46797 if( rc ) goto failed;
46801 rc = sqlite3OsRead(pPager->fd, &dbFileVers, sizeof(dbFileVers), 24);
46802 if( rc!=SQLITE_OK && rc!=SQLITE_IOERR_SHORT_READ ){
46827 rc = pagerOpenWalIfPresent(pPager);
46829 assert( pPager->pWal==0 || rc==SQLITE_OK );
46834 assert( rc==SQLITE_OK );
46835 rc = pagerBeginReadTransaction(pPager);
46838 if( pPager->eState==PAGER_OPEN && rc==SQLITE_OK ){
46839 rc = pagerPagecount(pPager, &pPager->dbSize);
46843 if( rc!=SQLITE_OK ){
46850 return rc;
46923 int rc = SQLITE_OK;
46951 rc = pPager->errCode;
46954 rc = sqlite3WalFindFrame(pPager->pWal, pgno, &iFrame);
46955 if( rc!=SQLITE_OK ) goto pager_acquire_err;
46961 rc = sqlite3OsFetch(pPager->fd,
46965 if( rc==SQLITE_OK && pData ){
46970 rc = pagerAcquireMapPage(pPager, pgno, pData, &pPg);
46975 assert( rc==SQLITE_OK );
46980 if( rc!=SQLITE_OK ){
46989 rc = sqlite3PcacheFetchStress(pPager->pPCache, pgno, &pBase);
46990 if( rc!=SQLITE_OK ) goto pager_acquire_err;
46993 if( pPg==0 ) rc = SQLITE_NOMEM;
46997 if( rc!=SQLITE_OK ){
47024 rc = SQLITE_CORRUPT_BKPT;
47030 rc = SQLITE_FULL;
47042 TESTONLY( rc = ) sqlite3BitvecSet(pPager->pInJournal, pgno);
47043 testcase( rc==SQLITE_NOMEM );
47045 TESTONLY( rc = ) addToSavepointBitvecs(pPager, pgno);
47046 testcase( rc==SQLITE_NOMEM );
47053 rc = sqlite3WalFindFrame(pPager->pWal, pgno, &iFrame);
47054 if( rc!=SQLITE_OK ) goto pager_acquire_err;
47058 rc = readDbPage(pPg, iFrame);
47059 if( rc!=SQLITE_OK ){
47069 assert( rc!=SQLITE_OK );
47076 return rc;
47146 int rc = SQLITE_OK; /* Return code */
47178 rc = databaseIsUnmoved(pPager);
47179 if( rc==SQLITE_OK ){
47181 rc = sqlite3JournalOpen(
47185 rc = sqlite3OsOpen(pVfs, pPager->zJournal, pPager->jfd, flags, 0);
47189 assert( rc!=SQLITE_OK || isOpen(pPager->jfd) );
47196 if( rc==SQLITE_OK ){
47202 rc = writeJournalHdr(pPager);
47206 if( rc!=SQLITE_OK ){
47214 return rc;
47235 int rc = SQLITE_OK;
47249 rc = pagerLockDb(pPager, EXCLUSIVE_LOCK);
47250 if( rc!=SQLITE_OK ){
47251 return rc;
47261 rc = sqlite3WalBeginWriteTransaction(pPager->pWal);
47268 rc = pagerLockDb(pPager, RESERVED_LOCK);
47269 if( rc==SQLITE_OK && exFlag ){
47270 rc = pager_wait_on_lock(pPager, EXCLUSIVE_LOCK);
47274 if( rc==SQLITE_OK ){
47291 assert( rc==SQLITE_OK || pPager->eState==PAGER_READER );
47292 assert( rc!=SQLITE_OK || pPager->eState==PAGER_WRITER_LOCKED );
47297 return rc;
47309 int rc = SQLITE_OK;
47336 rc = pager_open_journal(pPager);
47337 if( rc!=SQLITE_OK ) return rc;
47380 rc = write32bits(pPager->jfd, iOff, pPg->pgno);
47381 if( rc!=SQLITE_OK ) return rc;
47382 rc = sqlite3OsWrite(pPager->jfd, pData2, pPager->pageSize, iOff+4);
47383 if( rc!=SQLITE_OK ) return rc;
47384 rc = write32bits(pPager->jfd, iOff+pPager->pageSize+4, cksum);
47385 if( rc!=SQLITE_OK ) return rc;
47397 rc = sqlite3BitvecSet(pPager->pInJournal, pPg->pgno);
47398 testcase( rc==SQLITE_NOMEM );
47399 assert( rc==SQLITE_OK || rc==SQLITE_NOMEM );
47400 rc |= addToSavepointBitvecs(pPager, pPg->pgno);
47401 if( rc!=SQLITE_OK ){
47402 assert( rc==SQLITE_NOMEM );
47403 return rc;
47421 rc = subjournalPage(pPg);
47430 return rc;
47445 int rc = SQLITE_OK; /* Return code */
47480 for(ii=0; ii<nPage && rc==SQLITE_OK; ii++){
47485 rc = sqlite3PagerGet(pPager, pg, &pPage);
47486 if( rc==SQLITE_OK ){
47487 rc = pager_write(pPage);
47508 if( rc==SQLITE_OK && needSync ){
47521 return rc;
47608 int rc = SQLITE_OK;
47639 rc = sqlite3PagerGet(pPager, 1, &pPgHdr);
47640 assert( pPgHdr==0 || rc==SQLITE_OK );
47645 ** above is always successful - hence the ALWAYS on rc==SQLITE_OK.
47647 if( !DIRECT_MODE && ALWAYS(rc==SQLITE_OK) ){
47648 rc = sqlite3PagerWrite(pPgHdr);
47651 if( rc==SQLITE_OK ){
47659 CODEC2(pPager, pPgHdr->pData, 1, 6, rc=SQLITE_NOMEM, zBuf);
47660 if( rc==SQLITE_OK ){
47661 rc = sqlite3OsWrite(pPager->fd, zBuf, pPager->pageSize, 0);
47664 if( rc==SQLITE_OK ){
47680 return rc;
47691 int rc = SQLITE_OK;
47695 rc = sqlite3OsFileControl(pPager->fd, SQLITE_FCNTL_SYNC, pArg);
47696 if( rc==SQLITE_NOTFOUND ) rc = SQLITE_OK;
47698 if( rc==SQLITE_OK && !pPager->noSync ){
47700 rc = sqlite3OsSync(pPager->fd, pPager->syncFlags);
47702 return rc;
47717 int rc = SQLITE_OK;
47724 rc = pager_wait_on_lock(pPager, EXCLUSIVE_LOCK);
47726 return rc;
47760 int rc = SQLITE_OK; /* Return code */
47791 rc = sqlite3PagerGet(pPager, 1, &pPageOne);
47795 assert( rc==SQLITE_OK );
47797 rc = pagerWalFrames(pPager, pList, pPager->dbSize, 1);
47800 if( rc==SQLITE_OK ){
47844 rc = pager_incr_changecounter(pPager, 1);
47846 rc = sqlite3JournalCreate(pPager->jfd);
47847 if( rc==SQLITE_OK ){
47848 rc = pager_incr_changecounter(pPager, 0);
47852 rc = pager_incr_changecounter(pPager, 0);
47854 rc!=SQLITE_OK ) goto commit_phase_one_exit;
47860 rc = writeMasterJournal(pPager, zMaster);
47861 if( rc!=SQLITE_OK ) goto commit_phase_one_exit;
47874 rc = syncJournal(pPager, 0);
47875 if( rc!=SQLITE_OK ) goto commit_phase_one_exit;
47877 rc = pager_write_pagelist(pPager,sqlite3PcacheDirtyList(pPager->pPCache));
47878 if( rc!=SQLITE_OK ){
47879 assert( rc!=SQLITE_IOERR_BLOCKED );
47893 rc = pager_truncate(pPager, nNew);
47894 if( rc!=SQLITE_OK ) goto commit_phase_one_exit;
47899 rc = sqlite3PagerSync(pPager, zMaster);
47906 if( rc==SQLITE_OK && !pagerUseWal(pPager) ){
47909 return rc;
47929 int rc = SQLITE_OK; /* Return code */
47964 rc = pager_end_transaction(pPager, pPager->setMaster, 1);
47965 return pager_error(pPager, rc);
47995 int rc = SQLITE_OK; /* Return code */
48008 rc = sqlite3PagerSavepoint(pPager, SAVEPOINT_ROLLBACK, -1);
48010 if( rc==SQLITE_OK ) rc = rc2;
48013 rc = pager_end_transaction(pPager, 0, 0);
48021 return rc;
48024 rc = pager_playback(pPager, 0);
48027 assert( pPager->eState==PAGER_READER || rc!=SQLITE_OK );
48028 assert( rc==SQLITE_OK || rc==SQLITE_FULL || rc==SQLITE_CORRUPT
48029 || rc==SQLITE_NOMEM || (rc&0xFF)==SQLITE_IOERR
48030 || rc==SQLITE_CANTOPEN
48036 return pager_error(pPager, rc);
48136 int rc = SQLITE_OK; /* Return code */
48181 return rc;
48215 int rc = pPager->errCode; /* Return code */
48220 if( rc==SQLITE_OK && iSavepoint<pPager->nSavepoint ){
48240 rc = sqlite3OsTruncate(pPager->sjfd, 0);
48241 assert( rc==SQLITE_OK );
48253 rc = pagerPlaybackSavepoint(pPager, pSavepoint);
48254 assert(rc!=SQLITE_DONE);
48258 return rc;
48378 int rc; /* Return code */
48391 rc = sqlite3PagerWrite(pPg);
48392 if( rc ) return rc;
48415 && SQLITE_OK!=(rc = subjournalPage(pPg))
48417 return rc;
48487 rc = sqlite3PagerGet(pPager, needSyncPgno, &pPgHdr);
48488 if( rc!=SQLITE_OK ){
48493 return rc;
48641 int rc = SQLITE_OK;
48645 rc = sqlite3PagerSharedLock(pPager);
48648 assert( rc==SQLITE_OK );
48649 rc = pagerLockDb(pPager, RESERVED_LOCK);
48651 if( rc==SQLITE_OK ){
48654 if( rc==SQLITE_OK && state==PAGER_READER ){
48731 int rc = SQLITE_OK;
48733 rc = sqlite3WalCheckpoint(pPager->pWal, eMode,
48740 return rc;
48761 int rc; /* Return code */
48764 rc = pagerLockDb(pPager, EXCLUSIVE_LOCK);
48765 if( rc!=SQLITE_OK ){
48771 return rc;
48781 int rc = SQLITE_OK;
48792 rc = pagerExclusiveLock(pPager);
48798 if( rc==SQLITE_OK ){
48799 rc = sqlite3WalOpen(pPager->pVfs,
48806 return rc;
48829 int rc = SQLITE_OK; /* Return code */
48843 rc = pagerOpenWal(pPager);
48844 if( rc==SQLITE_OK ){
48852 return rc;
48865 int rc = SQLITE_OK;
48875 rc = pagerLockDb(pPager, SHARED_LOCK);
48876 if( rc==SQLITE_OK ){
48877 rc = sqlite3OsAccess(
48881 if( rc==SQLITE_OK && logexists ){
48882 rc = pagerOpenWal(pPager);
48889 if( rc==SQLITE_OK && pPager->pWal ){
48890 rc = pagerExclusiveLock(pPager);
48891 if( rc==SQLITE_OK ){
48892 rc = sqlite3WalClose(pPager->pWal, pPager->ckptSyncFlags,
48898 return rc;
49439 int rc = SQLITE_OK;
49460 if( !pWal->apWiData[iPage] ) rc = SQLITE_NOMEM;
49462 rc = sqlite3OsShmMap(pWal->pDbFd, iPage, WALINDEX_PGSZ,
49465 if( rc==SQLITE_READONLY ){
49467 rc = SQLITE_OK;
49473 assert( iPage==0 || *ppPage || rc!=SQLITE_OK );
49474 return rc;
49696 int rc;
49698 rc = sqlite3OsShmLock(pWal->pDbFd, lockIdx, 1,
49701 walLockName(lockIdx), rc ? "failed" : "ok"));
49702 VVA_ONLY( pWal->lockError = (u8)(rc!=SQLITE_OK && rc!=SQLITE_BUSY); )
49703 return rc;
49712 int rc;
49715 rc = sqlite3OsShmLock(pWal->pDbFd, lockIdx, n,
49718 walLockName(lockIdx), n, rc ? "failed" : "ok"));
49719 VVA_ONLY( pWal->lockError = (u8)(rc!=SQLITE_OK && rc!=SQLITE_BUSY); )
49720 return rc;
49765 int rc; /* Return code */
49768 rc = walIndexPage(pWal, iHash, &aPgno);
49769 assert( rc==SQLITE_OK || iHash>0 );
49771 if( rc==SQLITE_OK ){
49787 return rc;
49893 int rc; /* Return code */
49898 rc = walHashGet(pWal, walFramePage(iFrame), &aHash, &aPgno, &iZero);
49903 if( rc==SQLITE_OK ){
49967 return rc;
49982 int rc; /* Return Code */
50000 rc = walLockExclusive(pWal, iLock, nLock, 0);
50001 if( rc ){
50002 return rc;
50008 rc = sqlite3OsFileSize(pWal->pWalFd, &nSize);
50009 if( rc!=SQLITE_OK ){
50026 rc = sqlite3OsRead(pWal->pWalFd, aBuf, WAL_HDRSIZE, 0);
50027 if( rc!=SQLITE_OK ){
50064 rc = SQLITE_CANTOPEN_BKPT;
50072 rc = SQLITE_NOMEM;
50085 rc = sqlite3OsRead(pWal->pWalFd, aFrame, szFrame, iOffset);
50086 if( rc!=SQLITE_OK ) break;
50089 rc = walIndexAppend(pWal, iFrame, pgno);
50090 if( rc!=SQLITE_OK ) break;
50108 if( rc==SQLITE_OK ){
50139 WALTRACE(("WAL%p: recovery %s\n", pWal, rc ? "failed" : "ok"));
50141 return rc;
50182 int rc; /* Return Code */
50220 rc = sqlite3OsOpen(pVfs, zWalName, pRet->pWalFd, flags, &flags);
50221 if( rc==SQLITE_OK && flags&SQLITE_OPEN_READONLY ){
50225 if( rc!=SQLITE_OK ){
50238 return rc;
50450 int rc = SQLITE_OK; /* Return Code */
50477 rc = SQLITE_NOMEM;
50480 for(i=0; rc==SQLITE_OK && i<nSegment; i++){
50485 rc = walHashGet(pWal, i, &aHash, &aPgno, &iZero);
50486 if( rc==SQLITE_OK ){
50512 if( rc!=SQLITE_OK ){
50516 return rc;
50532 int rc;
50534 rc = walLockExclusive(pWal, lockIdx, n, 0);
50535 }while( xBusy && rc==SQLITE_BUSY && xBusy(pBusyArg) );
50536 return rc;
50618 int rc = SQLITE_OK; /* Return code */
50635 rc = walIteratorInit(pWal, &pIter);
50636 if( rc!=SQLITE_OK ){
50637 return rc;
50664 rc = walBusyLock(pWal, xBusy, pBusyArg, WAL_READ_LOCK(i), 1);
50665 if( rc==SQLITE_OK ){
50668 }else if( rc==SQLITE_BUSY ){
50678 && (rc = walBusyLock(pWal, xBusy, pBusyArg, WAL_READ_LOCK(0),1))==SQLITE_OK
50685 rc = sqlite3OsSync(pWal->pWalFd, sync_flags);
50691 if( rc==SQLITE_OK ){
50693 rc = sqlite3OsFileSize(pWal->pDbFd, &nSize);
50694 if( rc==SQLITE_OK && nSize<nReq ){
50701 while( rc==SQLITE_OK && 0==walIteratorNext(pIter, &iDbpage, &iFrame) ){
50709 rc = sqlite3OsRead(pWal->pWalFd, zBuf, szPage, iOffset);
50710 if( rc!=SQLITE_OK ) break;
50713 rc = sqlite3OsWrite(pWal->pDbFd, zBuf, szPage, iOffset);
50714 if( rc!=SQLITE_OK ) break;
50718 if( rc==SQLITE_OK ){
50722 rc = sqlite3OsTruncate(pWal->pDbFd, szDb);
50723 if( rc==SQLITE_OK && sync_flags ){
50724 rc = sqlite3OsSync(pWal->pDbFd, sync_flags);
50727 if( rc==SQLITE_OK ){
50736 if( rc==SQLITE_BUSY ){
50739 rc = SQLITE_OK;
50748 if( rc==SQLITE_OK && eMode!=SQLITE_CHECKPOINT_PASSIVE ){
50751 rc = SQLITE_BUSY;
50756 rc = walBusyLock(pWal, xBusy, pBusyArg, WAL_READ_LOCK(1), WAL_NREADER-1);
50757 if( rc==SQLITE_OK ){
50773 rc = sqlite3OsTruncate(pWal->pWalFd, 0);
50782 return rc;
50812 int rc = SQLITE_OK;
50824 rc = sqlite3OsLock(pWal->pDbFd, SQLITE_LOCK_EXCLUSIVE);
50825 if( rc==SQLITE_OK ){
50829 rc = sqlite3WalCheckpoint(
50832 if( rc==SQLITE_OK ){
50839 ** fsyned (rc==SQLITE_OK) and if we are not in persistent-wal
50844 ** completed and fsynced (rc==SQLITE_OK) and we are in persistent
50865 return rc;
50944 int rc; /* Return code */
50952 rc = walIndexPage(pWal, 0, &page0);
50953 if( rc!=SQLITE_OK ){
50954 return rc;
50971 if( SQLITE_OK==(rc = walLockShared(pWal, WAL_WRITE_LOCK)) ){
50973 rc = SQLITE_READONLY_RECOVERY;
50975 }else if( SQLITE_OK==(rc = walLockExclusive(pWal, WAL_WRITE_LOCK, 1, 1)) ){
50977 if( SQLITE_OK==(rc = walIndexPage(pWal, 0, &page0)) ){
50984 rc = walIndexRecover(pWal);
50998 rc = SQLITE_CANTOPEN_BKPT;
51001 return rc;
51065 int rc = SQLITE_OK; /* Return code */
51097 rc = walIndexReadHdr(pWal, pChanged);
51098 if( rc==SQLITE_BUSY ){
51115 rc = WAL_RETRY;
51116 }else if( SQLITE_OK==(rc = walLockShared(pWal, WAL_RECOVER_LOCK)) ){
51118 rc = WAL_RETRY;
51119 }else if( rc==SQLITE_BUSY ){
51120 rc = SQLITE_BUSY_RECOVERY;
51123 if( rc!=SQLITE_OK ){
51124 return rc;
51133 rc = walLockShared(pWal, WAL_READ_LOCK(0));
51135 if( rc==SQLITE_OK ){
51155 }else if( rc!=SQLITE_BUSY ){
51156 return rc;
51181 rc = walLockExclusive(pWal, WAL_READ_LOCK(i), 1, 0);
51182 if( rc==SQLITE_OK ){
51187 }else if( rc!=SQLITE_BUSY ){
51188 return rc;
51193 assert( rc==SQLITE_BUSY || (pWal->readOnly & WAL_SHM_RDONLY)!=0 );
51194 return rc==SQLITE_BUSY ? WAL_RETRY : SQLITE_READONLY_CANTLOCK;
51197 rc = walLockShared(pWal, WAL_READ_LOCK(mxI));
51198 if( rc ){
51199 return rc==SQLITE_BUSY ? WAL_RETRY : rc;
51232 return rc;
51250 int rc; /* Return code */
51254 rc = walTryBeginRead(pWal, pChanged, 0, ++cnt);
51255 }while( rc==WAL_RETRY );
51256 testcase( (rc&0xff)==SQLITE_BUSY );
51257 testcase( (rc&0xff)==SQLITE_IOERR );
51258 testcase( rc==SQLITE_PROTOCOL );
51259 testcase( rc==SQLITE_OK );
51260 return rc;
51337 int rc; /* Error code */
51339 rc = walHashGet(pWal, iHash, &aHash, &aPgno, &iZero);
51340 if( rc!=SQLITE_OK ){
51341 return rc;
51424 int rc;
51437 rc = walLockExclusive(pWal, WAL_WRITE_LOCK, 1, 0);
51438 if( rc ){
51439 return rc;
51450 rc = SQLITE_BUSY_SNAPSHOT;
51453 return rc;
51482 int rc = SQLITE_OK;
51493 ALWAYS(rc==SQLITE_OK) && iFrame<=iMax;
51508 rc = xUndo(pUndoCtx, walFramePgno(pWal, iFrame));
51512 return rc;
51536 int rc = SQLITE_OK;
51557 return rc;
51573 int rc = SQLITE_OK;
51582 rc = walLockExclusive(pWal, WAL_READ_LOCK(1), WAL_NREADER-1, 0);
51583 if( rc==SQLITE_OK ){
51595 }else if( rc!=SQLITE_BUSY ){
51596 return rc;
51604 rc = walTryBeginRead(pWal, &notUsed, 1, ++cnt);
51605 }while( rc==WAL_RETRY );
51606 assert( (rc&0xff)!=SQLITE_BUSY ); /* BUSY not possible when useWal==1 */
51607 testcase( (rc&0xff)==SQLITE_IOERR );
51608 testcase( rc==SQLITE_PROTOCOL );
51609 testcase( rc==SQLITE_OK );
51611 return rc;
51641 int rc;
51644 rc = sqlite3OsWrite(p->pFd, pContent, iFirstAmt, iOffset);
51645 if( rc ) return rc;
51650 rc = sqlite3OsSync(p->pFd, p->syncFlags & SQLITE_SYNC_MASK);
51651 if( iAmt==0 || rc ) return rc;
51653 rc = sqlite3OsWrite(p->pFd, pContent, iAmt, iOffset);
51654 return rc;
51666 int rc; /* Result code from subfunctions */
51675 rc = walWriteToLog(p, aFrame, sizeof(aFrame), iOffset);
51676 if( rc ) return rc;
51678 rc = walWriteToLog(p, pData, p->szPage, iOffset+sizeof(aFrame));
51679 return rc;
51694 int rc; /* Used to catch return codes */
51720 if( SQLITE_OK!=(rc = walRestartLog(pWal)) ){
51721 return rc;
51749 rc = sqlite3OsWrite(pWal->pWalFd, aWalHdr, sizeof(aWalHdr), 0);
51750 WALTRACE(("WAL%p: wal-header write %s\n", pWal, rc ? "failed" : "ok"));
51751 if( rc!=SQLITE_OK ){
51752 return rc;
51763 rc = sqlite3OsSync(pWal->pWalFd, sync_flags & SQLITE_SYNC_MASK);
51764 if( rc ) return rc;
51784 rc = walWriteOneFrame(&w, p, nDbSize, iOffset);
51785 if( rc ) return rc;
51809 rc = walWriteOneFrame(&w, pLast, nTruncate, iOffset);
51810 if( rc ) return rc;
51815 rc = sqlite3OsSync(w.pFd, sync_flags & SQLITE_SYNC_MASK);
51838 for(p=pList; p && rc==SQLITE_OK; p=p->pDirty){
51840 rc = walIndexAppend(pWal, iFrame, p->pgno);
51842 while( rc==SQLITE_OK && nExtra>0 ){
51845 rc = walIndexAppend(pWal, iFrame, pLast->pgno);
51848 if( rc==SQLITE_OK ){
51865 WALTRACE(("WAL%p: frame write %s\n", pWal, rc ? "failed" : "ok"));
51866 return rc;
51890 int rc; /* Return code */
51907 rc = walLockExclusive(pWal, WAL_CKPT_LOCK, 1, 0);
51908 if( rc ){
51915 testcase( rc==SQLITE_BUSY );
51917 return rc;
51931 rc = walBusyLock(pWal, xBusy, pBusyArg, WAL_WRITE_LOCK, 1);
51932 if( rc==SQLITE_OK ){
51934 }else if( rc==SQLITE_BUSY ){
51937 rc = SQLITE_OK;
51942 if( rc==SQLITE_OK ){
51943 rc = walIndexReadHdr(pWal, &isChanged);
51950 if( rc==SQLITE_OK ){
51952 rc = SQLITE_CORRUPT_BKPT;
51954 rc = walCheckpoint(pWal, eMode2, xBusy2, pBusyArg, sync_flags, zBuf);
51958 if( rc==SQLITE_OK || rc==SQLITE_BUSY ){
51978 WALTRACE(("WAL%p: checkpoint %s\n", pWal, rc ? "failed" : "ok"));
51979 return (rc==SQLITE_OK && eMode!=eMode2 ? SQLITE_BUSY : rc);
52021 int rc;
52040 rc = pWal->exclusiveMode==0;
52043 rc = 0;
52050 rc = 1;
52052 rc = pWal->exclusiveMode==0;
52054 return rc;
53614 int rc = SQLITE_OK;
53619 rc = SQLITE_NOMEM;
53622 if( rc==SQLITE_OK && pgno<=sqlite3BitvecSize(pBt->pHasContent) ){
53623 rc = sqlite3BitvecSet(pBt->pHasContent, pgno);
53625 return rc;
53670 int rc;
53681 rc = sqlite3BtreeKeySize(pCur, &pCur->nKey);
53682 assert( rc==SQLITE_OK ); /* KeySize() cannot fail */
53693 rc = sqlite3BtreeKey(pCur, 0, (int)pCur->nKey, pKey);
53694 if( rc==SQLITE_OK ){
53700 rc = SQLITE_NOMEM;
53705 if( rc==SQLITE_OK ){
53711 return rc;
53752 int rc = saveCursorPosition(p);
53753 if( SQLITE_OK!=rc ){
53754 return rc;
53788 int rc; /* Status code */
53807 rc = sqlite3BtreeMovetoUnpacked(pCur, pIdxKey, nKey, bias, pRes);
53811 return rc;
53822 int rc;
53830 rc = btreeMoveto(pCur, pCur->pKey, pCur->nKey, 0, &skipNext);
53831 if( rc==SQLITE_OK ){
53840 return rc;
53878 int rc;
53882 rc = restoreCursorPosition(pCur);
53883 if( rc ){
53885 return rc;
53935 int rc; /* Return code from subfunctions */
53949 rc = sqlite3PagerGet(pBt->pPager, iPtrmap, &pDbPage);
53950 if( rc!=SQLITE_OK ){
53951 *pRC = rc;
53964 *pRC= rc = sqlite3PagerWrite(pDbPage);
53965 if( rc==SQLITE_OK ){
53987 int rc;
53992 rc = sqlite3PagerGet(pBt->pPager, iPtrmap, &pDbPage);
53993 if( rc!=0 ){
53994 return rc;
54014 #define ptrmapPut(w,x,y,z,rc)
54016 #define ptrmapPutOvflPtr(x, y, rc)
54395 int rc
54426 u8 *pSpace = pageFindSlot(pPage, nByte, &rc, &bDefrag);
54427 if( rc ) return rc;
54443 rc = defragmentPage(pPage);
54444 if( rc ) return rc;
54819 int rc;
54824 rc = sqlite3PagerAcquire(pBt->pPager, pgno, (DbPage**)&pDbPage, flags);
54825 rc ) return rc;
54872 int rc;
54877 rc = SQLITE_CORRUPT_BKPT;
54879 rc = btreeGetPage(pBt, pgno, ppPage, bReadonly);
54880 if( rc==SQLITE_OK && (*ppPage)->isInit==0 ){
54881 rc = btreeInitPage(*ppPage);
54882 if( rc!=SQLITE_OK ){
54889 assert( pgno!=0 || rc==SQLITE_CORRUPT );
54890 return rc;
54978 int rc = SQLITE_OK; /* Result code from this function */
55044 rc = sqlite3OsFullPathname(pVfs, zFilename,
55046 if( rc ){
55049 return rc;
55107 rc = SQLITE_NOMEM;
55110 rc = sqlite3PagerOpen(pVfs, &pBt->pPager, zFilename,
55112 if( rc==SQLITE_OK ){
55114 rc = sqlite3PagerReadFileheader(pBt->pPager,sizeof(zDbHeader),zDbHeader);
55116 if( rc!=SQLITE_OK ){
55161 rc = sqlite3PagerSetPagesize(pBt->pPager, &pBt->pageSize, nReserve);
55162 if( rc ) goto btree_open_out;
55176 rc = SQLITE_NOMEM;
55223 if( rc!=SQLITE_OK ){
55243 return rc;
55453 int rc;
55457 rc = sqlite3PagerNosync(pBt->pPager);
55459 return rc;
55483 int rc = SQLITE_OK;
55505 rc = sqlite3PagerSetPagesize(pBt->pPager, &pBt->pageSize, nReserve);
55509 return rc;
55600 int rc = SQLITE_OK;
55605 rc = SQLITE_READONLY;
55611 return rc;
55623 int rc;
55625 rc = (
55631 return rc;
55646 int rc; /* Result code from subfunctions */
55654 rc = sqlite3PagerSharedLock(pBt->pPager);
55655 if( rc!=SQLITE_OK ) return rc;
55656 rc = btreeGetPage(pBt, 1, &pPage1, 0);
55657 if( rc!=SQLITE_OK ) return rc;
55671 rc = SQLITE_NOTADB;
55704 rc = sqlite3PagerOpenWal(pBt->pPager, &isOpen);
55705 if( rc!=SQLITE_OK ){
55711 rc = SQLITE_NOTADB;
55756 rc = sqlite3PagerSetPagesize(pBt->pPager, &pBt->pageSize,
55758 return rc;
55761 rc = SQLITE_CORRUPT_BKPT;
55808 return rc;
55863 int rc;
55872 rc = sqlite3PagerWrite(pP1->pDbPage);
55873 if( rc ) return rc;
55905 int rc;
55908 rc = newDatabase(p->pBt);
55910 return rc;
55951 int rc = SQLITE_OK;
55967 rc = SQLITE_READONLY;
55991 rc = SQLITE_LOCKED_SHAREDCACHE;
55999 rc = querySharedCacheTableLock(p, MASTER_ROOT, READ_LOCK);
56000 if( SQLITE_OK!=rc ) goto trans_begun;
56012 while( pBt->pPage1==0 && SQLITE_OK==(rc = lockBtree(pBt)) );
56014 if( rc==SQLITE_OK && wrflag ){
56016 rc = SQLITE_READONLY;
56018 rc = sqlite3PagerBegin(pBt->pPager,wrflag>1,sqlite3TempInMemory(p->db));
56019 if( rc==SQLITE_OK ){
56020 rc = newDatabase(pBt);
56025 if( rc!=SQLITE_OK ){
56028 }while( (rc&0xFF)==SQLITE_BUSY && pBt->inTransaction==TRANS_NONE &&
56031 if( rc==SQLITE_OK ){
56063 rc = sqlite3PagerWrite(pPage1->pDbPage);
56064 if( rc==SQLITE_OK ){
56073 if( rc==SQLITE_OK && wrflag ){
56078 rc = sqlite3PagerOpenSavepoint(pBt->pPager, p->db->nSavepoint);
56083 return rc;
56096 int rc; /* Return code */
56102 rc = btreeInitPage(pPage);
56103 if( rc!=SQLITE_OK ){
56111 ptrmapPutOvflPtr(pPage, pCell, &rc);
56115 ptrmapPut(pBt, childPgno, PTRMAP_BTREE, pgno, &rc);
56121 ptrmapPut(pBt, childPgno, PTRMAP_BTREE, pgno, &rc);
56126 return rc;
56214 int rc;
56224 rc = sqlite3PagerMovepage(pPager, pDbPage->pDbPage, iFreePage, isCommit);
56225 if( rc!=SQLITE_OK ){
56226 return rc;
56239 rc = setChildPtrmaps(pDbPage);
56240 if( rc!=SQLITE_OK ){
56241 return rc;
56246 ptrmapPut(pBt, nextOvfl, PTRMAP_OVERFLOW2, iFreePage, &rc);
56247 if( rc!=SQLITE_OK ){
56248 return rc;
56258 rc = btreeGetPage(pBt, iPtrPage, &pPtrPage, 0);
56259 if( rc!=SQLITE_OK ){
56260 return rc;
56262 rc = sqlite3PagerWrite(pPtrPage->pDbPage);
56263 if( rc!=SQLITE_OK ){
56265 return rc;
56267 rc = modifyPagePointer(pPtrPage, iDbPage, iFreePage, eType);
56269 if( rc==SQLITE_OK ){
56270 ptrmapPut(pBt, iFreePage, eType, iPtrPage, &rc);
56273 return rc;
56298 int rc;
56312 rc = ptrmapGet(pBt, iLastPg, &eType, &iPtrPage);
56313 if( rc!=SQLITE_OK ){
56314 return rc;
56329 rc = allocateBtreePage(pBt, &pFreePg, &iFreePg, iLastPg, BTALLOC_EXACT);
56330 if( rc!=SQLITE_OK ){
56331 return rc;
56342 rc = btreeGetPage(pBt, iLastPg, &pLastPg, 0);
56343 if( rc!=SQLITE_OK ){
56344 return rc;
56360 rc = allocateBtreePage(pBt, &pFreePg, &iFreePg, iNear, eMode);
56361 if( rc!=SQLITE_OK ){
56363 return rc;
56369 rc = relocatePage(pBt, pLastPg, eType, iPtrPage, iFreePg, bCommit);
56371 if( rc!=SQLITE_OK ){
56372 return rc;
56419 int rc;
56425 rc = SQLITE_DONE;
56432 rc = SQLITE_CORRUPT_BKPT;
56434 rc = saveAllCursors(pBt, 0, 0);
56435 if( rc==SQLITE_OK ){
56437 rc = incrVacuumStep(pBt, nFin, nOrig, 0);
56439 if( rc==SQLITE_OK ){
56440 rc = sqlite3PagerWrite(pBt->pPage1->pDbPage);
56444 rc = SQLITE_DONE;
56448 return rc;
56461 int rc = SQLITE_OK;
56487 rc = saveAllCursors(pBt, 0, 0);
56489 for(iFree=nOrig; iFree>nFin && rc==SQLITE_OK; iFree--){
56490 rc = incrVacuumStep(pBt, nFin, iFree, 1);
56492 if( (rc==SQLITE_DONE || rc==SQLITE_OK) && nFree>0 ){
56493 rc = sqlite3PagerWrite(pBt->pPage1->pDbPage);
56500 if( rc!=SQLITE_OK ){
56506 return rc;
56540 int rc = SQLITE_OK;
56546 rc = autoVacuumCommit(pBt);
56547 if( rc!=SQLITE_OK ){
56549 return rc;
56556 rc = sqlite3PagerCommitPhaseOne(pBt->pPager, zMaster, 0);
56559 return rc;
56638 int rc;
56642 rc = sqlite3PagerCommitPhaseTwo(pBt->pPager);
56643 if( rc!=SQLITE_OK && bCleanup==0 ){
56645 return rc;
56661 int rc;
56663 rc = sqlite3BtreeCommitPhaseOne(p, 0);
56664 if( rc==SQLITE_OK ){
56665 rc = sqlite3BtreeCommitPhaseTwo(p, 0);
56668 return rc;
56699 int rc = SQLITE_OK;
56708 rc = saveCursorPosition(p);
56709 if( rc!=SQLITE_OK ){
56710 (void)sqlite3BtreeTripAllCursors(pBtree, rc, 0);
56726 return rc;
56741 int rc;
56749 rc = tripCode = saveAllCursors(pBt, 0, 0);
56750 if( rc ) writeOnly = 0;
56752 rc = SQLITE_OK;
56756 assert( rc==SQLITE_OK || (writeOnly==0 && rc2==SQLITE_OK) );
56757 if( rc2!=SQLITE_OK ) rc = rc2;
56767 rc = rc2;
56788 return rc;
56810 int rc;
56823 rc = sqlite3PagerOpenSavepoint(pBt->pPager, iStatement);
56825 return rc;
56841 int rc = SQLITE_OK;
56847 rc = sqlite3PagerSavepoint(pBt->pPager, op, iSavepoint);
56848 if( rc==SQLITE_OK ){
56852 rc = newDatabase(pBt);
56862 return rc;
56957 int rc;
56959 rc = btreeCursor(p, iTable, wrFlag, pKeyInfo, pCur);
56961 return rc;
57148 int rc = SQLITE_OK;
57170 rc = ptrmapGet(pBt, iGuess, &eType, &pgno);
57171 if( rc==SQLITE_OK && eType==PTRMAP_OVERFLOW2 && pgno==ovfl ){
57173 rc = SQLITE_DONE;
57179 assert( next==0 || rc==SQLITE_DONE );
57180 if( rc==SQLITE_OK ){
57181 rc = btreeGetPage(pBt, ovfl, &pPage, (ppPage==0) ? PAGER_GET_READONLY : 0);
57182 assert( rc==SQLITE_OK || pPage==0 );
57183 if( rc==SQLITE_OK ){
57194 return (rc==SQLITE_DONE ? SQLITE_OK : rc);
57217 int rc = sqlite3PagerWrite(pDbPage);
57218 if( rc!=SQLITE_OK ){
57219 return rc;
57267 int rc = SQLITE_OK;
57300 rc = copyPayload(&aPayload[offset], pBuf, a, (eOp & 0x01), pPage->pDbPage);
57309 if( rc==SQLITE_OK && amt>0 ){
57330 rc = SQLITE_NOMEM;
57336 if( rc==SQLITE_OK ){
57354 for( ; rc==SQLITE_OK && amt>0 && nextPage; iIdx++){
57378 rc = getOverflowPage(pBt, nextPage, 0, &nextPage);
57420 rc = sqlite3OsRead(fd, aWrite, a+4, (i64)pBt->pageSize*(nextPage-1));
57428 rc = sqlite3PagerAcquire(pBt->pPager, nextPage, &pDbPage,
57431 if( rc==SQLITE_OK ){
57434 rc = copyPayload(&aPayload[offset+4], pBuf, a, (eOp&0x01), pDbPage);
57445 if( rc==SQLITE_OK && amt>0 ){
57448 return rc;
57481 int rc;
57490 rc = restoreCursorPosition(pCur);
57491 if( rc==SQLITE_OK ){
57495 rc = accessPayload(pCur, offset, amt, pBuf, 0);
57497 return rc;
57571 int rc;
57583 rc = getAndInitPage(pBt, newPgno, &pNewPage,
57585 if( rc ) return rc;
57669 int rc = SQLITE_OK;
57689 rc = getAndInitPage(pCur->pBtree->pBt, pCur->pgnoRoot, &pCur->apPage[0],
57691 if( rc!=SQLITE_OK ){
57693 return rc;
57726 rc = moveToChild(pCur, subpage);
57730 return rc;
57742 int rc = SQLITE_OK;
57747 while( rc==SQLITE_OK && !(pPage = pCur->apPage[pCur->iPage])->leaf ){
57750 rc = moveToChild(pCur, pgno);
57752 return rc;
57767 int rc = SQLITE_OK;
57775 rc = moveToChild(pCur, pgno);
57776 if( rc ) return rc;
57789 int rc;
57793 rc = moveToRoot(pCur);
57794 if( rc==SQLITE_OK ){
57801 rc = moveToLeftmost(pCur);
57804 return rc;
57812 int rc;
57832 rc = moveToRoot(pCur);
57833 if( rc==SQLITE_OK ){
57840 rc = moveToRightmost(pCur);
57841 if( rc==SQLITE_OK ){
57849 return rc;
57887 int rc;
57921 rc = moveToRoot(pCur);
57922 if( rc ){
57923 return rc;
57979 rc = SQLITE_OK;
58024 rc = SQLITE_NOMEM;
58028 rc = accessPayload(pCur, 0, nCell, (unsigned char*)pCellKey, 2);
58029 if( rc ){
58047 rc = SQLITE_OK;
58049 if( pIdxKey->errCode ) rc = SQLITE_CORRUPT;
58063 rc = SQLITE_OK;
58073 rc = moveToChild(pCur, chldPg);
58074 if( rc ) break;
58079 return rc;
58120 int rc;
58129 rc = restoreCursorPosition(pCur);
58130 if( rc!=SQLITE_OK ){
58131 return rc;
58161 rc = moveToChild(pCur, get4byte(&pPage->aData[pPage->hdrOffset+8]));
58162 if( rc ) return rc;
58230 int rc;
58240 rc = restoreCursorPosition(pCur);
58241 if( rc!=SQLITE_OK ){
58242 return rc;
58263 rc = moveToChild(pCur, get4byte(findCell(pPage, idx)));
58264 if( rc ) return rc;
58265 rc = moveToRightmost(pCur);
58281 rc = sqlite3BtreePrevious(pCur, pRes);
58283 rc = SQLITE_OK;
58286 return rc;
58337 int rc;
58370 rc = ptrmapGet(pBt, nearby, &eType, 0);
58371 if( rc ) return rc;
58384 rc = sqlite3PagerWrite(pPage1->pDbPage);
58385 if( rc ) return rc;
58408 rc = SQLITE_CORRUPT_BKPT;
58410 rc = btreeGetPage(pBt, iTrunk, &pTrunk, 0);
58412 if( rc ){
58426 rc = sqlite3PagerWrite(pTrunk->pDbPage);
58427 if( rc ){
58437 rc = SQLITE_CORRUPT_BKPT;
58449 rc = sqlite3PagerWrite(pTrunk->pDbPage);
58450 if( rc ){
58457 rc = sqlite3PagerWrite(pPrevTrunk->pDbPage);
58458 if( rc!=SQLITE_OK ){
58471 rc = SQLITE_CORRUPT_BKPT;
58475 rc = btreeGetPage(pBt, iNewTrunk, &pNewTrunk, 0);
58476 if( rc!=SQLITE_OK ){
58479 rc = sqlite3PagerWrite(pNewTrunk->pDbPage);
58480 if( rc!=SQLITE_OK ){
58492 rc = sqlite3PagerWrite(pPrevTrunk->pDbPage);
58493 if( rc ){
58536 rc = SQLITE_CORRUPT_BKPT;
58548 rc = sqlite3PagerWrite(pTrunk->pDbPage);
58549 if( rc ) goto end_allocate_page;
58555 rc = btreeGetPage(pBt, *pPgno, ppPage, noContent);
58556 if( rc==SQLITE_OK ){
58557 rc = sqlite3PagerWrite((*ppPage)->pDbPage);
58558 if( rc!=SQLITE_OK ){
58589 rc = sqlite3PagerWrite(pBt->pPage1->pDbPage);
58590 if( rc ) return rc;
58603 rc = btreeGetPage(pBt, pBt->nPage, &pPg, bNoContent);
58604 if( rc
58605 rc = sqlite3PagerWrite(pPg->pDbPage);
58608 if( rc ) return rc;
58617 rc = btreeGetPage(pBt, *pPgno, ppPage, bNoContent);
58618 if( rc ) return rc;
58619 rc = sqlite3PagerWrite((*ppPage)->pDbPage);
58620 if( rc!=SQLITE_OK ){
58631 if( rc==SQLITE_OK ){
58641 assert( rc!=SQLITE_OK || sqlite3PagerIswriteable((*ppPage)->pDbPage) );
58642 return rc;
58662 int rc; /* Return Code */
58677 rc = sqlite3PagerWrite(pPage1->pDbPage);
58678 if( rc ) goto freepage_out;
58686 if( (!pPage && ((rc = btreeGetPage(pBt, iPage, &pPage, 0))!=0) )
58687 || ((rc = sqlite3PagerWrite(pPage->pDbPage))!=0)
58698 ptrmapPut(pBt, iPage, PTRMAP_FREEPAGE, 0, &rc);
58699 if( rc ) goto freepage_out;
58713 rc = btreeGetPage(pBt, iTrunk, &pTrunk, 0);
58714 if( rc!=SQLITE_OK ){
58721 rc = SQLITE_CORRUPT_BKPT;
58744 rc = sqlite3PagerWrite(pTrunk->pDbPage);
58745 if( rc==SQLITE_OK ){
58751 rc = btreeSetHasContent(pBt, iPage);
58764 if( pPage==0 && SQLITE_OK!=(rc = btreeGetPage(pBt, iPage, &pPage, 0)) ){
58767 rc = sqlite3PagerWrite(pPage->pDbPage);
58768 if( rc!=SQLITE_OK ){
58782 return rc;
58803 int rc;
58831 rc = getOverflowPage(pBt, ovflPgno, &pOvfl, &iNext);
58832 if( rc ) return rc;
58848 rc = SQLITE_CORRUPT_BKPT;
58850 rc = freePage2(pBt, pOvfl, ovflPgno);
58856 if( rc ) return rc;
58884 int nSrc, n, rc;
58982 rc = allocateBtreePage(pBt, &pOvfl, &pgnoOvfl, pgnoOvfl, 0);
58994 if( pBt->autoVacuum && rc==SQLITE_OK ){
58996 ptrmapPut(pBt, pgnoOvfl, eType, pgnoPtrmap, &rc);
58997 if( rc ){
59002 if( rc ){
59004 return rc;
59069 int rc; /* The return code */
59088 rc = freeSpace(pPage, pc, sz);
59089 if( rc ){
59090 *pRC = rc;
59162 int rc = sqlite3PagerWrite(pPage->pDbPage);
59163 if( rc!=SQLITE_OK ){
59164 *pRC = rc;
59172 rc = allocateSpace(pPage, sz, &idx);
59173 if( rc ){ *pRC = rc; return; }
59293 int rc;
59295 if( bFreelist==0 || (pSlot = pageFindSlot(pPg, sz, &rc, 0))==0 ){
59509 int rc; /* Return Code */
59523 rc = allocateBtreePage(pBt, &pNew, &pgnoNew, 0, 0);
59525 if( rc==SQLITE_OK ){
59548 ptrmapPut(pBt, pgnoNew, PTRMAP_BTREE, pParent->pgno, &rc);
59550 ptrmapPutOvflPtr(pNew, pCell, &rc);
59575 0, pPage->pgno, &rc);
59584 return rc;
59654 int rc;
59673 rc = btreeInitPage(pTo);
59674 if( rc!=SQLITE_OK ){
59675 *pRC = rc;
59745 int rc = SQLITE_OK; /* The return code */
59824 rc = getAndInitPage(pBt, pgno, &apOld[i], 0);
59825 if( rc ){
59859 rc = SQLITE_CORRUPT_BKPT;
59867 dropCell(pParent, i+nxDiv-pParent->nOverflow, szNew[i], &rc);
59888 rc = SQLITE_NOMEM;
59997 if( k>NB+1 ){ rc = SQLITE_CORRUPT_BKPT; goto balance_cleanup; }
60056 rc = SQLITE_CORRUPT_BKPT;
60065 rc = sqlite3PagerWrite(pNew->pDbPage);
60067 if( rc ) goto balance_cleanup;
60070 rc = allocateBtreePage(pBt, &pNew, &pgno, (bBulk ? 1 : pgno), 0);
60071 if( rc ) goto balance_cleanup;
60079 ptrmapPut(pBt, pNew->pgno, PTRMAP_BTREE, pParent->pgno, &rc);
60080 if( rc!=SQLITE_OK ){
60111 rc = SQLITE_CORRUPT_BKPT;
60204 ptrmapPut(pBt, get4byte(pCell), PTRMAP_BTREE, pNew->pgno, &rc);
60207 ptrmapPutOvflPtr(pNew, pCell, &rc);
60260 insertCell(pParent, nxDiv+i, pCell, sz, pTemp, pNew->pgno, &rc);
60261 if( rc!=SQLITE_OK ) goto balance_cleanup;
60346 rc = defragmentPage(apNew[0]);
60347 testcase( rc!=SQLITE_OK );
60350 || rc!=SQLITE_OK
60352 copyNodeContent(apNew[0], pParent, &rc);
60353 freePage(apNew[0], &rc);
60360 ptrmapPut(pBt, key, PTRMAP_BTREE, apNew[i]->pgno, &rc);
60371 freePage(apOld[i], &rc);
60375 if( ISAUTOVACUUM && rc==SQLITE_OK && apNew[0]->isInit ){
60397 return rc;
60424 int rc; /* Return value from subprocedures */
60436 rc = sqlite3PagerWrite(pRoot->pDbPage);
60437 if( rc==SQLITE_OK ){
60438 rc = allocateBtreePage(pBt,&pChild,&pgnoChild,pRoot->pgno,0);
60439 copyNodeContent(pRoot, pChild, &rc);
60441 ptrmapPut(pBt, pgnoChild, PTRMAP_BTREE, pRoot->pgno, &rc);
60444 if( rc ){
60447 return rc;
60481 int rc = SQLITE_OK;
60501 rc = balance_deeper(pPage, &pCur->apPage[1]);
60502 if( rc==SQLITE_OK ){
60517 rc = sqlite3PagerWrite(pParent->pDbPage);
60518 if( rc==SQLITE_OK ){
60540 rc = balance_quick(pParent, pPage, aBalanceQuickSpace);
60562 rc = balance_nonroot(pParent, iIdx, pSpace, iPage==1,
60586 }while( rc==SQLITE_OK );
60591 return rc;
60625 int rc;
60664 rc = saveAllCursors(pBt, pCur->pgnoRoot, pCur);
60665 if( rc ) return rc;
60682 rc = btreeMoveto(pCur, pKey, nKey, appendBias, &loc);
60683 if( rc ) return rc;
60697 rc = fillInCell(pPage, newCell, pKey, nKey, pData, nData, nZero, &szNew);
60698 if( rc ) goto end_insert;
60705 rc = sqlite3PagerWrite(pPage->pDbPage);
60706 if( rc ){
60713 rc = clearCell(pPage, oldCell, &szOld);
60714 dropCell(pPage, idx, szOld, &rc);
60715 if( rc ) goto end_insert;
60722 insertCell(pPage, idx, newCell, szNew, 0, 0, &rc);
60723 assert( rc!=SQLITE_OK || pPage->nCell>0 || pPage->nOverflow>0 );
60746 if( rc==SQLITE_OK && pPage->nOverflow ){
60748 rc = balance(pCur);
60760 return rc;
60770 int rc; /* Return code */
60804 rc = sqlite3BtreePrevious(pCur, &notUsed);
60805 if( rc ) return rc;
60813 rc = saveAllCursors(pBt, pCur->pgnoRoot, pCur);
60814 if( rc ) return rc;
60822 rc = sqlite3PagerWrite(pPage->pDbPage);
60823 if( rc ) return rc;
60824 rc = clearCell(pPage, pCell, &szCell);
60825 dropCell(pPage, iCellIdx, szCell, &rc);
60826 if( rc ) return rc;
60844 rc = sqlite3PagerWrite(pLeaf->pDbPage);
60845 insertCell(pPage, iCellIdx, pCell-4, nCell+4, pTmp, n, &rc);
60846 dropCell(pLeaf, pLeaf->nCell-1, nCell, &rc);
60847 if( rc ) return rc;
60865 rc = balance(pCur);
60866 if( rc==SQLITE_OK && pCur->iPage>iCellDepth ){
60870 rc = balance(pCur);
60873 if( rc==SQLITE_OK ){
60876 return rc;
60894 int rc;
60902 rc = allocateBtreePage(pBt, &pRoot, &pgnoRoot, 1, 0);
60903 if( rc ){
60904 return rc;
60938 rc = allocateBtreePage(pBt, &pPageMove, &pgnoMove, pgnoRoot, BTALLOC_EXACT);
60939 if( rc!=SQLITE_OK ){
60940 return rc;
60956 rc = saveAllCursors(pBt, 0, 0);
60958 if( rc!=SQLITE_OK ){
60959 return rc;
60963 rc = btreeGetPage(pBt, pgnoRoot, &pRoot, 0);
60964 if( rc!=SQLITE_OK ){
60965 return rc;
60967 rc = ptrmapGet(pBt, pgnoRoot, &eType, &iPtrPage);
60969 rc = SQLITE_CORRUPT_BKPT;
60971 if( rc!=SQLITE_OK ){
60973 return rc;
60977 rc = relocatePage(pBt, pRoot, eType, iPtrPage, pgnoMove, 0);
60981 if( rc!=SQLITE_OK ){
60982 return rc;
60984 rc = btreeGetPage(pBt, pgnoRoot, &pRoot, 0);
60985 if( rc!=SQLITE_OK ){
60986 return rc;
60988 rc = sqlite3PagerWrite(pRoot->pDbPage);
60989 if( rc!=SQLITE_OK ){
60991 return rc;
60998 ptrmapPut(pBt, pgnoRoot, PTRMAP_ROOTPAGE, 0, &rc);
60999 if( rc ){
61001 return rc;
61009 rc = sqlite3BtreeUpdateMeta(p, 4, pgnoRoot);
61010 if( NEVER(rc) ){
61012 return rc;
61016 rc = allocateBtreePage(pBt, &pRoot, &pgnoRoot, 1, 0);
61017 if( rc ) return rc;
61033 int rc;
61035 rc = btreeCreateTable(p, piTable, flags);
61037 return rc;
61051 int rc;
61061 rc = getAndInitPage(pBt, pgno, &pPage, 0);
61062 if( rc ) return rc;
61064 rc = SQLITE_CORRUPT_BKPT;
61072 rc = clearDatabasePage(pBt, get4byte(pCell), 1, pnChange);
61073 if( rc ) goto cleardatabasepage_out;
61075 rc = clearCell(pPage, pCell, &szCell);
61076 if( rc ) goto cleardatabasepage_out;
61079 rc = clearDatabasePage(pBt, get4byte(&pPage->aData[hdr+8]), 1, pnChange);
61080 if( rc ) goto cleardatabasepage_out;
61086 freePage(pPage, &rc);
61087 }else if( (rc = sqlite3PagerWrite(pPage->pDbPage))==0 ){
61094 return rc;
61111 int rc;
61116 rc = saveAllCursors(pBt, (Pgno)iTable, 0);
61118 if( SQLITE_OK==rc ){
61123 rc = clearDatabasePage(pBt, (Pgno)iTable, 0, pnChange);
61126 return rc;
61159 int rc;
61179 rc = btreeGetPage(pBt, (Pgno)iTable, &pPage, 0);
61180 if( rc ) return rc;
61181 rc = sqlite3BtreeClearTable(p, iTable, 0);
61182 if( rc ){
61184 return rc;
61191 freePage(pPage, &rc);
61202 freePage(pPage, &rc);
61204 if( rc!=SQLITE_OK ){
61205 return rc;
61214 rc = btreeGetPage(pBt, maxRootPgno, &pMove, 0);
61215 if( rc!=SQLITE_OK ){
61216 return rc;
61218 rc = relocatePage(pBt, pMove, PTRMAP_ROOTPAGE, 0, iTable, 0);
61220 if( rc!=SQLITE_OK ){
61221 return rc;
61224 rc = btreeGetPage(pBt, maxRootPgno, &pMove, 0);
61225 freePage(pMove, &rc);
61227 if( rc!=SQLITE_OK ){
61228 return rc;
61245 rc = sqlite3BtreeUpdateMeta(p, 4, maxRootPgno);
61247 freePage(pPage, &rc);
61259 return rc;
61262 int rc;
61264 rc = btreeDropTable(p, iTable, piMoved);
61266 return rc;
61323 int rc;
61329 rc = sqlite3PagerWrite(pBt->pPage1->pDbPage);
61330 if( rc==SQLITE_OK ){
61341 return rc;
61355 int rc; /* Return code */
61361 rc = moveToRoot(pCur);
61366 while( rc==SQLITE_OK ){
61408 rc = moveToChild(pCur, get4byte(&pPage->aData[pPage->hdrOffset+8]));
61410 rc = moveToChild(pCur, get4byte(findCell(pPage, iIdx)));
61415 return rc;
61511 int rc;
61515 rc = ptrmapGet(pCheck->pBt, iChild, &ePtrmapType, &iPtrmapParent);
61516 if( rc!=SQLITE_OK ){
61517 if( rc==SQLITE_NOMEM || rc==SQLITE_IOERR_NOMEM ) pCheck->mallocFailed = 1;
61677 int i, rc, depth, d2, pgno, cnt;
61699 if( (rc = btreeGetPage(pBt, (Pgno)iPage, &pPage, 0))!=0 ){
61701 "unable to get the page. error code=%d", rc);
61709 if( (rc = btreeInitPage(pPage))!=0 ){
61710 assert( rc==SQLITE_CORRUPT ); /* The only possible error from InitPage */
61712 "btreeInitPage() returns error code %d", rc);
62085 int rc = SQLITE_OK;
62090 rc = SQLITE_LOCKED;
62092 rc = sqlite3PagerCheckpoint(pBt->pPager, eMode, pnLog, pnCkpt);
62096 return rc;
62152 int rc;
62155 rc = querySharedCacheTableLock(p, MASTER_ROOT, READ_LOCK);
62156 assert( rc==SQLITE_OK || rc==SQLITE_LOCKED_SHAREDCACHE );
62158 return rc;
62169 int rc = SQLITE_OK;
62177 rc = querySharedCacheTableLock(p, iTab, lockType);
62178 if( rc==SQLITE_OK ){
62179 rc = setSharedCacheTableLock(p, iTab, lockType);
62183 return rc;
62199 int rc;
62204 rc = restoreCursorPosition(pCsr);
62205 if( rc!=SQLITE_OK ){
62206 return rc;
62221 VVA_ONLY(rc =) saveAllCursors(pCsr->pBt, pCsr->pgnoRoot, pCsr);
62222 assert( rc==SQLITE_OK );
62258 int rc; /* Return code */
62268 rc = sqlite3BtreeBeginTrans(pBtree, 0);
62269 if( rc==SQLITE_OK ){
62272 rc = sqlite3BtreeBeginTrans(pBtree, 2);
62273 if( rc==SQLITE_OK ){
62274 rc = sqlite3PagerWrite(pBt->pPage1->pDbPage);
62275 if( rc==SQLITE_OK ){
62284 return rc;
62347 int rc; /* Backup process error code */
62403 int rc = 0;
62407 rc = SQLITE_NOMEM;
62411 sqlite3ErrorWithMsg(pErrorDb, pParse->rc, "%s", pParse->zErrMsg);
62412 rc = SQLITE_ERROR;
62418 if( rc ){
62436 int rc;
62437 rc = sqlite3BtreeSetPageSize(p->pDest,sqlite3BtreeGetPageSize(p->pSrc),-1,0);
62438 return rc;
62537 ** Argument rc is an SQLite error code. Return true if this error is
62541 static int isFatalError(int rc){
62542 return (rc!=SQLITE_OK && rc!=SQLITE_BUSY && ALWAYS(rc!=SQLITE_LOCKED));
62568 int rc = SQLITE_OK;
62573 assert( !isFatalError(p->rc) );
62581 rc = SQLITE_READONLY;
62589 rc = SQLITE_READONLY;
62599 rc = sqlite3PagerSetPagesize(pDestPager, &newPgsz, nSrcReserve);
62600 if( rc==SQLITE_OK && newPgsz!=nSrcPgsz ) rc = SQLITE_READONLY;
62608 for(iOff=iEnd-(i64)nSrcPgsz; rc==SQLITE_OK && iOff<iEnd; iOff+=nDestPgsz){
62612 if( SQLITE_OK==(rc = sqlite3PagerGet(pDestPager, iDest, &pDestPg))
62613 && SQLITE_OK==(rc = sqlite3PagerWrite(pDestPg))
62635 return rc;
62648 int rc = sqlite3OsFileSize(pFile, &iCurrent);
62649 if( rc==SQLITE_OK && iCurrent>iSize ){
62650 rc = sqlite3OsTruncate(pFile, iSize);
62652 return rc;
62672 int rc;
62686 rc = p->rc;
62687 if( !isFatalError(rc) ){
62698 rc = SQLITE_BUSY;
62700 rc = SQLITE_OK;
62704 if( SQLITE_OK==rc && p->bDestLocked==0
62705 && SQLITE_OK==(rc = sqlite3BtreeBeginTrans(p->pDest, 2))
62715 if( rc==SQLITE_OK && 0==sqlite3BtreeIsInReadTrans(p->pSrc) ){
62716 rc = sqlite3BtreeBeginTrans(p->pSrc, 0);
62725 if( SQLITE_OK==rc && destMode==PAGER_JOURNALMODE_WAL && pgszSrc!=pgszDest ){
62726 rc = SQLITE_READONLY;
62734 for(ii=0; (nPage<0 || ii<nPage) && p->iNext<=(Pgno)nSrcPage && !rc; ii++){
62738 rc = sqlite3PagerAcquire(pSrcPager, iSrcPg, &pSrcPg,
62740 if( rc==SQLITE_OK ){
62741 rc = backupOnePage(p, iSrcPg, sqlite3PagerGetData(pSrcPg), 0);
62747 if( rc==SQLITE_OK ){
62751 rc = SQLITE_DONE;
62762 if( rc==SQLITE_DONE ){
62764 rc
62767 if( rc==SQLITE_OK || rc==SQLITE_DONE ){
62768 rc = sqlite3BtreeUpdateMeta(p->pDest,1,p->iDestSchema+1);
62770 if( rc==SQLITE_OK ){
62775 rc = sqlite3BtreeSetVersion(p->pDest, 2);
62778 if( rc==SQLITE_OK ){
62836 for(iPg=nDestTruncate; rc==SQLITE_OK && iPg<=(Pgno)nDstPage; iPg++){
62839 rc = sqlite3PagerGet(pDestPager, iPg, &pPg);
62840 if( rc==SQLITE_OK ){
62841 rc = sqlite3PagerWrite(pPg);
62846 if( rc==SQLITE_OK ){
62847 rc = sqlite3PagerCommitPhaseOne(pDestPager, 0, 1);
62854 rc==SQLITE_OK && iOff<iEnd;
62859 rc = sqlite3PagerGet(pSrcPager, iSrcPg, &pSrcPg);
62860 if( rc==SQLITE_OK ){
62862 rc = sqlite3OsWrite(pFile, zData, pgszSrc, iOff);
62866 if( rc==SQLITE_OK ){
62867 rc = backupTruncateFile(pFile, iSize);
62871 if( rc==SQLITE_OK ){
62872 rc = sqlite3PagerSync(pDestPager, 0);
62876 rc = sqlite3PagerCommitPhaseOne(pDestPager, 0, 0);
62880 if( SQLITE_OK==rc
62881 && SQLITE_OK==(rc = sqlite3BtreeCommitPhaseTwo(p->pDest, 0))
62883 rc = SQLITE_DONE;
62900 if( rc==SQLITE_IOERR_NOMEM ){
62901 rc = SQLITE_NOMEM;
62903 p->rc = rc;
62910 return rc;
62919 int rc; /* Value to return */
62946 rc = (p->rc==SQLITE_DONE) ? SQLITE_OK : p->rc;
62948 sqlite3Error(p->pDestDb, rc);
62961 return rc;
63008 if( !isFatalError(p->rc) && iPage<p->iNext ){
63013 int rc;
63016 rc = backupOnePage(p, iPage, aData, 1);
63018 assert( rc!=SQLITE_BUSY && rc!=SQLITE_LOCKED );
63019 if( rc!=SQLITE_OK ){
63020 p->rc = rc;
63055 int rc;
63065 rc = sqlite3OsFileControl(pFd, SQLITE_FCNTL_OVERWRITE, &nByte);
63066 if( rc==SQLITE_NOTFOUND ) rc = SQLITE_OK;
63067 if( rc ) goto copy_finished;
63085 ** checks this assumption - (p->rc) should be set to either SQLITE_DONE
63089 assert( b.rc!=SQLITE_OK );
63090 rc = sqlite3_backup_finish(&b);
63091 if( rc==SQLITE_OK ){
63101 return rc;
63187 int rc;
63203 rc = sqlite3VdbeMemTranslate(pMem, (u8)desiredEnc);
63204 assert(rc==SQLITE_OK || rc==SQLITE_NOMEM);
63205 assert(rc==SQLITE_OK || pMem->enc!=desiredEnc);
63206 assert(rc==SQLITE_NOMEM || pMem->enc==desiredEnc);
63207 return rc;
63432 int rc = SQLITE_OK;
63449 rc = ctx.isError;
63451 return rc;
63905 int rc = SQLITE_OK;
63915 rc = sqlite3VdbeMemMakeWriteable(pTo);
63919 return rc;
64063 int rc = SQLITE_OK; /* Return code */
64084 if( SQLITE_OK==(rc = sqlite3VdbeMemClearAndResize(pMem, amt+2)) ){
64086 rc = sqlite3BtreeKey(pCur, offset, amt, pMem->z);
64088 rc = sqlite3BtreeData(pCur, offset, amt, pMem->z);
64090 if( rc==SQLITE_OK ){
64101 return rc;
64276 int rc = SQLITE_OK; /* Return code */
64297 rc = SQLITE_NOMEM;
64301 rc = sqlite3ValueFromExpr(db, pList->a[i].pExpr, enc, aff, &apVal[i]);
64302 if( apVal[i]==0 || rc!=SQLITE_OK ) goto value_from_function_out;
64308 rc = SQLITE_NOMEM;
64312 assert( pCtx->pParse->rc==SQLITE_OK );
64318 rc = ctx.isError;
64322 assert( rc==SQLITE_OK );
64323 rc = sqlite3VdbeChangeEncoding(pVal, enc);
64324 if( rc==SQLITE_OK && sqlite3VdbeMemTooBig(pVal) ){
64325 rc = SQLITE_TOOBIG;
64329 pCtx->pParse->rc = rc;
64332 if( rc!=SQLITE_OK ){
64343 return rc;
64372 int rc = SQLITE_OK;
64389 rc = valueFromExpr(db, pExpr->pLeft, enc, aff, ppVal, pCtx);
64390 testcase( rc!=SQLITE_OK );
64395 return rc;
64426 rc = sqlite3VdbeChangeEncoding(pVal, enc);
64465 rc = valueFromFunction(db, pExpr, enc, affinity, &pVal, pCtx);
64470 return rc;
64585 int rc = SQLITE_OK;
64606 rc = sqlite3VdbeMemCopy((Mem*)pVal, &v->aVar[iBindVar-1]);
64607 if( rc==SQLITE_OK ){
64614 rc = valueFromExpr(db, pExpr, ENC(db), affinity, &pVal, pAlloc);
64619 return rc;
64661 int rc;
64670 rc = stat4ValueFromExpr(pParse, pExpr, affinity, &alloc, &pVal);
64673 return rc;
66141 int rc = SQLITE_OK; /* Return code */
66146 assert( p->rc==SQLITE_OK || p->rc==SQLITE_BUSY || p->rc==SQLITE_NOMEM );
66155 if( p->rc==SQLITE_NOMEM ){
66192 p->rc = SQLITE_OK;
66193 rc = SQLITE_DONE;
66195 p->rc = SQLITE_INTERRUPT;
66196 rc = SQLITE_ERROR;
66197 sqlite3SetString(&p->zErrMsg, db, "%s", sqlite3ErrStr(p->rc));
66300 p->rc = SQLITE_OK;
66301 rc = SQLITE_ROW;
66303 return rc;
66420 p->rc = SQLITE_OK;
66727 int rc;
66737 rc = sqlite3VdbeMemSetStr(pColName, zName, -1, SQLITE_UTF8, xDel);
66738 assert( rc!=0 || !zName || (pColName->flags&MEM_Term)!=0 );
66739 return rc;
66751 int rc = SQLITE_OK;
66767 rc = sqlite3VtabSync(db, p);
66775 for(i=0; rc==SQLITE_OK && i<db->nDb; i++){
66781 rc = sqlite3PagerExclusiveLock(sqlite3BtreePager(pBt));
66785 if( rc!=SQLITE_OK ){
66786 return rc;
66791 rc = db->xCommitCallback(db->pCommitArg);
66792 if( rc ){
66809 for(i=0; rc==SQLITE_OK && i<db->nDb; i++){
66812 rc = sqlite3BtreeCommitPhaseOne(pBt, 0);
66821 for(i=0; rc==SQLITE_OK && i<db->nDb; i++){
66824 rc = sqlite3BtreeCommitPhaseTwo(pBt, 0);
66827 if( rc==SQLITE_OK ){
66871 rc = sqlite3OsAccess(pVfs, zMaster, SQLITE_ACCESS_EXISTS, &res);
66872 }while( rc
66873 if( rc==SQLITE_OK ){
66875 rc = sqlite3OsOpenMalloc(pVfs, zMaster, &pMaster,
66880 if( rc!=SQLITE_OK ){
66882 return rc;
66902 rc = sqlite3OsWrite(pMaster, zFile, sqlite3Strlen30(zFile)+1, offset);
66904 if( rc!=SQLITE_OK ){
66908 return rc;
66918 && SQLITE_OK!=(rc = sqlite3OsSync(pMaster, SQLITE_SYNC_NORMAL))
66923 return rc;
66936 for(i=0; rc==SQLITE_OK && i<db->nDb; i++){
66939 rc = sqlite3BtreeCommitPhaseOne(pBt, zMaster);
66943 assert( rc!=SQLITE_BUSY );
66944 if( rc!=SQLITE_OK ){
66946 return rc;
66953 rc = sqlite3OsDelete(pVfs, zMaster, needSync);
66956 if( rc ){
66957 return rc;
66982 return rc;
67029 int rc = SQLITE_OK;
67054 if( rc==SQLITE_OK ){
67055 rc = rc2;
67062 if( rc==SQLITE_OK ){
67064 rc = sqlite3VtabSavepoint(db, SAVEPOINT_ROLLBACK, iSavepoint);
67066 if( rc==SQLITE_OK ){
67067 rc = sqlite3VtabSavepoint(db, SAVEPOINT_RELEASE, iSavepoint);
67079 return rc;
67098 p->rc = SQLITE_CONSTRAINT_FOREIGNKEY;
67121 int rc; /* Used to store transient return codes */
67141 p->rc = SQLITE_NOMEM;
67153 int mrc; /* Primary error code from p->rc */
67161 mrc = p->rc & 0xff;
67193 if( p->rc==SQLITE_OK ){
67207 if( p->rc==SQLITE_OK || (p->errorAction==OE_Fail && !isSpecialError) ){
67208 rc = sqlite3VdbeCheckFk(p, 1);
67209 if( rc!=SQLITE_OK ){
67214 rc = SQLITE_CONSTRAINT_FOREIGNKEY;
67220 rc = vdbeCommit(db, p);
67222 if( rc==SQLITE_BUSY && p->readOnly ){
67225 }else if( rc!=SQLITE_OK ){
67226 p->rc = rc;
67241 if( p->rc==SQLITE_OK || p->errorAction==OE_Fail ){
67260 rc = sqlite3VdbeCloseStatement(p, eStatementOp);
67261 if( rc ){
67262 if( p->rc==SQLITE_OK || (p->rc&0xff)==SQLITE_CONSTRAINT ){
67263 p->rc = rc;
67302 p->rc = SQLITE_NOMEM;
67314 return (p->rc==SQLITE_BUSY ? SQLITE_BUSY : SQLITE_OK);
67320 ** in p->rc. This routine sets that result back to SQLITE_OK.
67323 p->rc = SQLITE_OK;
67336 int rc = p->rc;
67344 db->errCode = rc;
67346 sqlite3Error(db, rc);
67348 return rc;
67357 if( sqlite3GlobalConfig.xSqllog && v->rc==SQLITE_OK && v->zSql && v->pc>=0 ){
67404 }else if( p->rc && p->expired ){
67409 sqlite3ErrorWithMsg(db, p->rc, p->zErrMsg ? "%s" : 0, p->zErrMsg);
67456 return p->rc & db->errMask;
67464 int rc = SQLITE_OK;
67466 rc = sqlite3VdbeReset(p);
67467 assert( (rc & p->db->errMask)==rc );
67470 return rc;
67570 int res, rc;
67576 rc = sqlite3BtreeMovetoUnpacked(p->pCursor, 0, p->movetoTarget, 0, &res);
67577 if( rc ) return rc;
67595 int isDifferentRow, rc;
67598 rc = sqlite3BtreeCursorRestore(p->pCursor, &isDifferentRow);
67601 return rc;
68076 int rc = 0;
68127 rc = sqlite3MemCompare(&mem1, &pPKey2->aMem[i], pKeyInfo->aColl[i]);
68128 if( rc!=0 ){
68131 rc = -rc; /* Invert the result for DESC sort order. */
68144 /* rc==0 here means that one of the keys ran out of fields and
68147 rc = pPKey2->default_rc;
68150 if( desiredResult==0 && rc==0 ) return 1;
68151 if( desiredResult<0 && rc<0 ) return 1;
68152 if( desiredResult>0 && rc>0 ) return 1;
68199 ** *pMem2, respectively. Similar in spirit to "rc = (*pMem1) - (*pMem2);".
68212 int rc;
68225 rc = pColl->xCmp(pColl->pUser, n1, v1, n2, v2);
68229 return rc;
68404 int rc = 0; /* Return value */
68444 rc = +1;
68446 rc = -1;
68451 rc = -1;
68453 rc = +1;
68459 rc = -1;
68461 rc = +1;
68470 rc = +1;
68472 rc = -1;
68483 rc = -1;
68485 rc = +1;
68495 rc = -1;
68497 rc = +1;
68510 rc = vdbeCompareMemString(
68515 rc = memcmp(&aKey1[d1], pRhs->z, nCmp);
68516 if( rc==0 ) rc = mem1.n - pRhs->n;
68526 rc = -1;
68536 rc = memcmp(&aKey1[d1], pRhs->z, nCmp);
68537 if( rc==0 ) rc = nStr - pRhs->n;
68545 rc = (serial_type!=0);
68548 if( rc!=0 ){
68550 rc = -rc;
68552 assert( vdbeRecordCompareDebug(nKey1, pKey1, pPKey2, rc) );
68554 return rc;
68568 /* rc==0 here means that one or both of the keys ran out of fields and
68793 int rc;
68805 VVA_ONLY(rc =) sqlite3BtreeKeySize(pCur, &nCellKey);
68806 assert( rc==SQLITE_OK ); /* pCur is always valid so KeySize cannot fail */
68811 rc = sqlite3VdbeMemFromBtree(pCur, 0, (u32)nCellKey, 1, &m);
68812 if( rc ){
68813 return rc;
68876 int rc;
68881 VVA_ONLY(rc =) sqlite3BtreeKeySize(pCur, &nCellKey);
68882 assert( rc==SQLITE_OK ); /* pCur is always valid so KeySize cannot fail */
68890 rc = sqlite3VdbeMemFromBtree(pC->pCursor, 0, (u32)nCellKey, 1, &m);
68891 if( rc ){
68892 return rc;
69059 int rc;
69063 rc = SQLITE_OK;
69069 rc = sqlite3VdbeFinalize(v);
69070 rc = sqlite3ApiExit(db, rc);
69073 return rc;
69085 int rc;
69087 rc = SQLITE_OK;
69091 rc = sqlite3VdbeReset(v);
69093 assert( (rc & (v->db->errMask))==rc );
69094 rc = sqlite3ApiExit(v->db, rc);
69097 return rc;
69105 int rc = SQLITE_OK;
69119 return rc;
69397 int rc = SQLITE_OK;
69407 if( db->xWalCallback && nEntry>0 && rc==SQLITE_OK ){
69408 rc = db->xWalCallback(db->pWalArg, db, db->aDb[i].zName, nEntry);
69413 return rc;
69427 int rc;
69448 if( (rc = p->rc&0xff)==SQLITE_BUSY || rc==SQLITE_LOCKED ){
69461 p->rc = SQLITE_NOMEM;
69466 p->rc = SQLITE_SCHEMA;
69467 rc = SQLITE_ERROR;
69499 rc = sqlite3VdbeList(p);
69504 rc = sqlite3VdbeExec(p);
69511 if( rc!=SQLITE_ROW && db->xProfile && !db->init.busy && p->zSql ){
69518 if( rc==SQLITE_DONE ){
69519 assert( p->rc==SQLITE_OK );
69520 p->rc = doWalCallbacks(db);
69521 if( p->rc!=SQLITE_OK ){
69522 rc = SQLITE_ERROR;
69526 db->errCode = rc;
69527 if( SQLITE_NOMEM==sqlite3ApiExit(p->db, p->rc) ){
69528 p->rc = SQLITE_NOMEM;
69531 /* At this point local variable rc holds the value that should be
69534 ** be one of the values in the first assert() below. Variable p->rc
69538 assert( rc==SQLITE_ROW || rc==SQLITE_DONE || rc==SQLITE_ERROR
69539 || rc==SQLITE_BUSY || rc==SQLITE_MISUSE
69541 assert( (p->rc!=SQLITE_ROW && p->rc!=SQLITE_DONE) || p->rc==p->rcApp );
69542 if( p->isPrepareV2 && rc!=SQLITE_ROW && rc!=SQLITE_DONE ){
69544 ** error has occurred, then return the error code in p->rc to the
69547 rc = sqlite3VdbeTransferError(p);
69549 return (rc&db->errMask);
69558 int rc = SQLITE_OK; /* Result from sqlite3Step() */
69570 while( (rc = sqlite3Step(v))==SQLITE_SCHEMA
69573 rc2 = rc = sqlite3Reprepare(v);
69574 if( rc!=SQLITE_OK) break;
69592 v->rc = rc2;
69595 v->rc = rc = SQLITE_NOMEM;
69598 rc = sqlite3ApiExit(db, rc);
69600 return rc;
69636 int rc;
69645 rc = sqlite3OsCurrentTimeInt64(p->pOut->db->pVfs, piTime);
69646 if( rc ) *piTime = 0;
69901 p->rc = sqlite3ApiExit(p->db, p->rc);
70187 int rc;
70189 rc = vdbeUnbind(p, i);
70190 if( rc==SQLITE_OK ){
70193 rc = sqlite3VdbeMemSetStr(pVar, zData, nData, encoding, xDel);
70194 if( rc==SQLITE_OK && encoding!=0 ){
70195 rc = sqlite3VdbeChangeEncoding(pVar, ENC(p->db));
70197 sqlite3Error(p->db, rc);
70198 rc = sqlite3ApiExit(p->db, rc);
70204 return rc;
70235 int rc;
70237 rc = vdbeUnbind(p, i);
70238 if( rc==SQLITE_OK ){
70242 return rc;
70248 int rc;
70250 rc = vdbeUnbind(p, i);
70251 if( rc==SQLITE_OK ){
70255 return rc;
70258 int rc;
70260 rc = vdbeUnbind(p, i);
70261 if( rc==SQLITE_OK ){
70264 return rc;
70303 int rc;
70306 rc = sqlite3_bind_int64(pStmt, i, pValue->u.i);
70310 rc = sqlite3_bind_double(pStmt, i, pValue->u.r);
70315 rc = sqlite3_bind_zeroblob(pStmt, i, pValue->u.nZero);
70317 rc = sqlite3_bind_blob(pStmt, i, pValue->z, pValue->n,SQLITE_TRANSIENT);
70322 rc = bindText(pStmt,i, pValue->z, pValue->n, SQLITE_TRANSIENT,
70327 rc = sqlite3_bind_null(pStmt, i);
70331 return rc;
70334 int rc;
70336 rc = vdbeUnbind(p, i);
70337 if( rc==SQLITE_OK ){
70341 return rc;
71396 int rc = SQLITE_OK; /* Value to return */
71419 if( p->rc==SQLITE_NOMEM ){
71424 assert( p->rc==SQLITE_OK || p->rc==SQLITE_BUSY );
71426 p->rc = SQLITE_OK;
71471 for(pOp=&aOp[p->pc]; rc==SQLITE_OK; pOp++){
71618 rc = SQLITE_INTERRUPT;
71802 p->rc = pOp->p1;
71805 if( p->rc ){
71830 rc = sqlite3VdbeHalt(p);
71831 assert( rc==SQLITE_BUSY || rc==SQLITE_OK || rc==SQLITE_ERROR );
71832 if( rc==SQLITE_BUSY ){
71833 p->rc = rc = SQLITE_BUSY;
71835 assert( rc==SQLITE_OK || (p->rc&0xff)==SQLITE_CONSTRAINT );
71836 assert( rc==SQLITE_OK || db->nDeferredCons>0 || db->nDeferredImmCons>0 );
71837 rc = p->rc ? SQLITE_ERROR : SQLITE_DONE;
71898 rc
71899 if( rc==SQLITE_TOOBIG ) goto too_big;
72146 rc = SQLITE_INTERRUPT;
72154 if( SQLITE_OK!=(rc = sqlite3VdbeCheckFk(p, 0)) ){
72176 rc = sqlite3VdbeCloseStatement(p, SAVEPOINT_RELEASE);
72177 if( NEVER(rc!=SQLITE_OK) ){
72202 rc = SQLITE_ROW;
72459 rc = ctx.isError;
72587 rc = SQLITE_MISMATCH;
72642 rc = ExpandBlob(pIn1);
73184 rc = sqlite3VdbeCursorMoveto(pC);
73185 if( rc ) goto abort_due_to_error;
73203 VVA_ONLY(rc =) sqlite3BtreeKeySize(pCrsr, &payloadSize64);
73204 assert( rc==SQLITE_OK ); /* True because of CursorMoveto() call above */
73213 VVA_ONLY(rc =) sqlite3BtreeDataSize(pCrsr, &pC->payloadSize);
73214 assert( rc==SQLITE_OK ); /* DataSize() cannot fail */
73242 rc = SQLITE_CORRUPT_BKPT;
73275 rc = sqlite3VdbeMemFromBtree(pCrsr, 0, aOffset[0],
73277 if( rc!=SQLITE_OK ){
73326 rc = SQLITE_CORRUPT_BKPT;
73350 assert( rc==SQLITE_OK );
73374 rc = sqlite3VdbeMemFromBtree(pCrsr, aOffset[p2], len, !pC->isTable,
73376 if( rc!=SQLITE_OK ){
73605 rc = sqlite3BtreeCount(pCrsr, &nEntry);
73647 rc = SQLITE_BUSY;
73657 rc = sqlite3VtabSavepoint(db, SAVEPOINT_BEGIN,
73659 if( rc!=SQLITE_OK ) goto abort_due_to_error;
73698 rc = SQLITE_ERROR;
73706 rc = SQLITE_BUSY;
73715 if( (rc = sqlite3VdbeCheckFk(p, 1))!=SQLITE_OK ){
73722 p->rc = rc = SQLITE_BUSY;
73726 rc = p->rc;
73733 rc = sqlite3BtreeTripAllCursors(db->aDb[ii].pBt,
73736 if( rc!=SQLITE_OK ) goto abort_due_to_error;
73742 rc = sqlite3BtreeSavepoint(db->aDb[ii].pBt, p1, iSavepoint);
73743 if( rc!=SQLITE_OK ){
73780 rc = sqlite3VtabSavepoint(db, p1, iSavepoint);
73781 if( rc!=SQLITE_OK ) goto abort_due_to_error;
73819 rc = SQLITE_BUSY;
73828 rc = SQLITE_BUSY;
73834 }else if( (rc = sqlite3VdbeCheckFk(p, 1))!=SQLITE_OK ){
73841 p->rc = rc = SQLITE_BUSY;
73847 if( p->rc==SQLITE_OK ){
73848 rc = SQLITE_DONE;
73850 rc = SQLITE_ERROR;
73859 rc = SQLITE_ERROR;
73908 rc = SQLITE_READONLY;
73914 rc = sqlite3BtreeBeginTrans(pBt, pOp->p2);
73915 if( rc==SQLITE_BUSY ){
73917 p->rc = rc = SQLITE_BUSY;
73920 if( rc!=SQLITE_OK ){
73934 rc = sqlite3VtabSavepoint(db, SAVEPOINT_BEGIN, p->iStatement-1);
73935 if( rc==SQLITE_OK ){
73936 rc = sqlite3BtreeBeginStmt(pBt, p->iStatement);
73978 rc = SQLITE_SCHEMA;
74036 rc = sqlite3BtreeUpdateMeta(pDb->pBt, pOp->p2, (int)pIn3->u.i);
74148 rc = SQLITE_ABORT_ROLLBACK;
74183 rc = SQLITE_CORRUPT_BKPT;
74203 rc = sqlite3BtreeCursor(pX, p2, wrFlag, pKeyInfo, pCur->pCursor);
74262 rc = sqlite3BtreeOpen(db->pVfs, 0, db, &pCx->pBt,
74264 if( rc==SQLITE_OK ){
74265 rc = sqlite3BtreeBeginTrans(pCx->pBt, 1);
74267 if( rc==SQLITE_OK ){
74276 rc = sqlite3BtreeCreateTable(pCx->pBt, &pgno, BTREE_BLOBKEY | pOp->p5);
74277 if( rc==SQLITE_OK ){
74282 rc = sqlite3BtreeCursor(pCx->pBt, pgno, 1, pKeyInfo, pCx->pCursor);
74286 rc = sqlite3BtreeCursor(pCx->pBt, MASTER_ROOT, 1, 0, pCx->pCursor);
74314 rc = sqlite3VdbeSorterInit(db, pOp->p3, pCx);
74535 rc = sqlite3BtreeMovetoUnpacked(pC->pCursor, 0, (u64)iKey, 0, &res);
74537 if( rc!=SQLITE_OK ){
74565 rc = sqlite3BtreeMovetoUnpacked(pC->pCursor, &r, 0, 0, &res);
74566 if( rc!=SQLITE_OK ){
74578 rc = sqlite3BtreeNext(pC->pCursor, &res);
74579 if( rc!=SQLITE_OK ) goto abort_due_to_error;
74587 rc = sqlite3BtreePrevious(pC->pCursor, &res);
74588 if( rc!=SQLITE_OK ) goto abort_due_to_error;
74751 rc = sqlite3BtreeMovetoUnpacked(pC->pCursor, pIdxKey, 0, 0, &res);
74753 if( rc!=SQLITE_OK ){
74809 rc = sqlite3BtreeMovetoUnpacked(pCrsr, 0, iKey, 0, &res);
74895 rc = sqlite3BtreeLast(pC->pCursor, &res);
74896 if( rc!=SQLITE_OK ){
74903 rc = sqlite3BtreeKeySize(pC->pCursor, &v);
74904 assert( rc==SQLITE_OK ); /* Cannot fail following BtreeLast() */
74934 rc = SQLITE_FULL; /* IMP: R-12275-61338 */
74954 }while( ((rc = sqlite3BtreeMovetoUnpacked(pC->pCursor, 0, (u64)v,
74958 if( rc==SQLITE_OK && res==0 ){
74959 rc = SQLITE_FULL; /* IMP: R-38219-53002 */
75064 rc = sqlite3BtreeInsert(pC->pCursor, 0, iKey,
75072 if( rc==SQLITE_OK && db->xUpdateCallback && pOp->p4.z ){
75123 rc = sqlite3BtreeDelete(pC->pCursor);
75127 if( rc==SQLITE_OK && db->xUpdateCallback && pOp->p4.z && pC->isTable ){
75174 rc = sqlite3VdbeSorterCompare(pC, pIn3, nKeyCol, &res);
75198 rc = sqlite3VdbeSorterRowkey(pC, pOut);
75199 assert( rc!=SQLITE_OK || (pOut->flags & MEM_Blob) );
75259 rc = sqlite3VdbeCursorMoveto(pC);
75260 if( rc!=SQLITE_OK ) goto abort_due_to_error;
75265 VVA_ONLY(rc =) sqlite3BtreeKeySize(pCrsr, &n64);
75266 assert( rc==SQLITE_OK ); /* True because of CursorMoveto() call above */
75272 VVA_ONLY(rc =) sqlite3BtreeDataSize(pCrsr, &n);
75273 assert( rc==SQLITE_OK ); /* DataSize() cannot fail */
75285 rc = sqlite3BtreeKey(pCrsr, 0, n, pOut->z);
75287 rc = sqlite3BtreeData(pCrsr, 0, n, pOut->z);
75326 rc = pModule->xRowid(pC->pVtabCursor, &v);
75331 rc = sqlite3VdbeCursorRestore(pC);
75332 if( rc ) goto abort_due_to_error;
75337 rc = sqlite3BtreeKeySize(pC->pCursor, &v);
75338 assert( rc==SQLITE_OK ); /* Always so because of CursorRestore() above */
75387 rc = sqlite3BtreeLast(pCrsr, &res);
75450 rc = sqlite3VdbeSorterRewind(pC, &res);
75454 rc = sqlite3BtreeFirst(pCrsr, &res);
75535 rc = sqlite3VdbeSorterNext(db, pC, &res);
75566 rc = pOp->p4.xAdvance(pC->pCursor, &res);
75621 rc = ExpandBlob(pIn2);
75622 if( rc==SQLITE_OK ){
75624 rc = sqlite3VdbeSorterWrite(pC, pIn2);
75628 rc = sqlite3BtreeInsert(pCrsr, zKey, nKey, "", 0, 0, pOp->p3,
75666 rc = sqlite3BtreeMovetoUnpacked(pCrsr, &r, 0, 0, &res);
75667 if( rc==SQLITE_OK && res==0 ){
75668 rc = sqlite3BtreeDelete(pCrsr);
75703 rc = sqlite3VdbeCursorRestore(pC);
75704 if( NEVER(rc!=SQLITE_OK) ) goto abort_due_to_error;
75708 rc = sqlite3VdbeIdxRowid(db, pCrsr, &rowid);
75709 if( rc!=SQLITE_OK ){
75792 rc = sqlite3VdbeIdxKeyCompare(db, pC, &r, &res);
75834 rc = SQLITE_LOCKED;
75840 rc = sqlite3BtreeDropTable(db->aDb[iDb].pBt, pOp->p1, &iMoved);
75844 if( rc==SQLITE_OK && iMoved!=0 ){
75879 rc = sqlite3BtreeClearTable(
75911 rc = sqlite3BtreeClearTableOfCursor(pC->pCursor);
75959 rc = sqlite3BtreeCreateTable(pDb->pBt, &pgno, flags);
76000 rc = SQLITE_NOMEM;
76004 initData.rc = SQLITE_OK;
76006 rc = sqlite3_exec(db, zSql, sqlite3InitCallback, &initData, 0);
76007 if( rc==SQLITE_OK ) rc = initData.rc;
76012 if( rc ) sqlite3ResetAllSchemasOfConnection(db);
76013 if( rc==SQLITE_NOMEM ){
76028 rc = sqlite3AnalysisLoad(db, pOp->p1);
76286 rc = SQLITE_ERROR;
76591 rc = ctx.isError;
76620 rc = sqlite3VdbeMemFinalize(pMem, pOp->p4.pFunc);
76621 if( rc ){
76657 rc = sqlite3Checkpoint(db, pOp->p1, pOp->p2, &aRes[1], &aRes[2]);
76658 if( rc==SQLITE_BUSY ){
76659 rc = SQLITE_OK;
76726 rc = SQLITE_ERROR;
76740 rc = sqlite3PagerCloseWal(pPager);
76741 if( rc==SQLITE_OK ){
76754 if( rc==SQLITE_OK ){
76755 rc = sqlite3BtreeSetVersion(pBt, (eNew==PAGER_JOURNALMODE_WAL ? 2 : 1));
76761 if( rc ){
76784 rc = sqlite3RunVacuum(&p->zErrMsg, db);
76803 rc = sqlite3BtreeIncrVacuum(pBt);
76804 VdbeBranchTaken(rc==SQLITE_DONE,2);
76805 if( rc==SQLITE_DONE ){
76806 rc = SQLITE_OK;
76855 rc = sqlite3BtreeLockTable(db->aDb[p1].pBt, pOp->p2, isWriteLock);
76856 if( (rc&0xFF)==SQLITE_LOCKED ){
76878 rc = sqlite3VtabBegin(db, pVTab);
76900 rc = sqlite3VdbeMemCopy(&sMem, &aMem[pOp->p2]);
76901 assert( rc==SQLITE_OK );
76905 rc = sqlite3VtabCallCreate(db, pOp->p1, zTab, &p->zErrMsg);
76920 rc = sqlite3VtabCallDestroy(db, pOp->p1, pOp->p4.z);
76944 rc = SQLITE_LOCKED;
76948 rc = pModule->xOpen(pVtab, &pVtabCursor);
76950 if( SQLITE_OK==rc ){
77023 rc = pModule->xFilter(pVtabCursor, iQuery, pOp->p4.z, nArg, apArg);
77025 if( rc==SQLITE_OK ){
77064 rc = pModule->xColumn(pCur->pVtabCursor, &sContext, pOp->p2);
77067 rc = sContext.isError;
77109 rc = pModule->xNext(pCur->pVtabCursor);
77111 if( rc==SQLITE_OK ){
77144 rc = sqlite3VdbeChangeEncoding(pName, SQLITE_UTF8);
77145 if( rc==SQLITE_OK ){
77146 rc = pVtab->pModule->xRename(pVtab, pName->z);
77197 rc = SQLITE_LOCKED;
77214 rc = pModule->xUpdate(pVtab, nArg, apArg, &rowid);
77217 if( rc==SQLITE_OK && pOp->p1 ){
77221 if( (rc&0xff)==SQLITE_CONSTRAINT && pOp->p4.pVtab->bConstraint ){
77223 rc = SQLITE_OK;
77364 if( rc!=0 ) printf("rc=%d\n",rc);
77380 assert( rc );
77381 p->rc = rc;
77383 sqlite3_log(rc, "statement aborts at %d: [%s] %s",
77386 if( rc==SQLITE_IOERR_NOMEM ) db->mallocFailed = 1;
77387 rc = SQLITE_ERROR;
77400 return rc;
77407 rc = SQLITE_TOOBIG;
77415 rc = SQLITE_NOMEM;
77418 /* Jump to here for any other kind of fatal error. The "rc" variable
77423 if( db->mallocFailed ) rc = SQLITE_NOMEM;
77424 if( rc!=SQLITE_IOERR_NOMEM ){
77425 sqlite3SetString(&p->zErrMsg, db, "%s", sqlite3ErrStr(rc));
77434 rc = SQLITE_INTERRUPT;
77435 p->rc = rc;
77436 sqlite3SetString(&p->zErrMsg, db, "%s", sqlite3ErrStr(rc));
77494 int rc; /* Error code */
77505 rc = sqlite3_step(p->pStmt);
77506 if( rc==SQLITE_ROW ){
77513 rc = SQLITE_ERROR;
77524 if( rc==SQLITE_ROW ){
77525 rc = SQLITE_OK;
77527 rc = sqlite3_finalize(p->pStmt);
77529 if( rc==SQLITE_OK ){
77531 rc = SQLITE_ERROR;
77537 assert( rc!=SQLITE_OK || zErr==0 );
77538 assert( rc!=SQLITE_ROW && rc!=SQLITE_DONE );
77541 return rc;
77590 int rc = SQLITE_OK;
77644 rc = SQLITE_ERROR;
77658 rc = SQLITE_ERROR;
77698 rc = SQLITE_ERROR;
77761 rc = blobSeekToRow(pBlob, iRow, &zErr);
77762 } while( (++nAttempt)<SQLITE_MAX_SCHEMA_RETRY && rc==SQLITE_SCHEMA );
77765 if( rc==SQLITE_OK && db->mallocFailed==0 ){
77771 sqlite3ErrorWithMsg(db, rc, (zErr ? "%s" : 0), zErr);
77775 rc = sqlite3ApiExit(db, rc);
77777 return rc;
77786 int rc;
77792 rc = sqlite3_finalize(p->pStmt);
77796 rc = SQLITE_OK;
77798 return rc;
77811 int rc;
77823 rc = SQLITE_ERROR;
77828 rc = SQLITE_ABORT;
77835 rc = xCall(p->pCsr, iOffset+p->iOffset, n, z);
77837 if( rc==SQLITE_ABORT ){
77841 v->rc = rc;
77844 sqlite3Error(db, rc);
77845 rc = sqlite3ApiExit(db, rc);
77847 return rc;
77886 int rc;
77898 rc = SQLITE_ABORT;
77901 rc = blobSeekToRow(p, iRow, &zErr);
77902 if( rc!=SQLITE_OK ){
77903 sqlite3ErrorWithMsg(db, rc, (zErr ? "%s" : 0), zErr);
77906 assert( rc!=SQLITE_SCHEMA );
77909 rc = sqlite3ApiExit(db, rc);
77910 assert( rc==SQLITE_OK || p->pStmt==0 );
77912 return rc;
78424 int rc; /* sqlite3OsRead() return code */
78435 rc = sqlite3OsRead(p->pFd, p->aBuffer, nRead, p->iReadOff);
78436 assert( rc!=SQLITE_IOERR_SHORT_READ );
78437 if( rc!=SQLITE_OK ) return rc;
78473 int rc; /* vdbePmaReadBlob() return code */
78479 rc = vdbePmaReadBlob(p, nCopy, &aNext);
78480 if( rc!=SQLITE_OK ) return rc;
78507 int i = 0, rc;
78509 rc = vdbePmaReadBlob(p, 1, &a);
78510 if( rc ) return rc;
78530 int rc = SQLITE_OK;
78534 rc = sqlite3OsFetch(pFd, 0, (int)pFile->iEof, (void**)pp);
78535 testcase( rc!=SQLITE_OK );
78538 return rc;
78552 int rc = SQLITE_OK;
78565 rc = vdbeSorterMapFile(pTask, pFile, &pReadr->aMap);
78566 if( rc==SQLITE_OK && pReadr->aMap==0 ){
78571 if( pReadr->aBuffer==0 ) rc = SQLITE_NOMEM;
78574 if( rc==SQLITE_OK && iBuf ){
78579 rc = sqlite3OsRead(
78582 testcase( rc!=SQLITE_OK );
78586 return rc;
78594 int rc = SQLITE_OK; /* Return Code */
78602 rc = vdbeIncrSwap(pIncr);
78603 if( rc==SQLITE_OK && pIncr->bEof==0 ){
78604 rc = vdbePmaReaderSeek(
78614 testcase( rc!=SQLITE_OK );
78615 return rc;
78619 if( rc==SQLITE_OK ){
78620 rc = vdbePmaReadVarint(pReadr, &nRec);
78622 if( rc==SQLITE_OK ){
78624 rc = vdbePmaReadBlob(pReadr, (int)nRec, &pReadr->aKey);
78625 testcase( rc!=SQLITE_OK );
78628 return rc;
78647 int rc;
78654 rc = vdbePmaReaderSeek(pTask, pReadr, pFile, iStart);
78655 if( rc==SQLITE_OK ){
78657 rc = vdbePmaReadVarint(pReadr, &nByte);
78662 if( rc==SQLITE_OK ){
78663 rc = vdbePmaReaderNext(pReadr);
78665 return rc;
78855 int rc = SQLITE_OK;
78886 rc = SQLITE_NOMEM;
78920 if( !pSorter->list.aMemory ) rc = SQLITE_NOMEM;
78931 return rc;
79017 int rc = SQLITE_OK;
79026 rc = SQLITE_PTR_TO_INT(pRet);
79031 return rc;
79051 int rc = rcin;
79064 if( rc==SQLITE_OK ) rc = rc2;
79066 return rc;
79211 int rc;
79213 rc = sqlite3OsOpenMalloc(db->pVfs, 0, ppFd,
79216 SQLITE_OPEN_EXCLUSIVE | SQLITE_OPEN_DELETEONCLOSE, &rc
79218 if( rc==SQLITE_OK ){
79225 return rc;
79305 int rc;
79307 rc = vdbeSortAllocUnpacked(pTask);
79308 if( rc!=SQLITE_OK ) return rc;
79412 int rc;
79421 rc = p->eFWErr;
79423 return rc;
79453 int rc = SQLITE_OK; /* Return code */
79468 rc = vdbeSorterOpenTempFile(db, 0, &pTask->file.pFd);
79469 assert( rc!=SQLITE_OK || pTask->file.pFd );
79475 if( rc==SQLITE_OK ){
79480 if( rc==SQLITE_OK ){
79481 rc = vdbeSorterSort(pTask, pList);
79484 if( rc==SQLITE_OK ){
79499 rc = vdbePmaWriterFinish(&writer, &pTask->file.iEof);
79503 assert( rc!=SQLITE_OK || pList->pList==0 );
79504 assert( rc!=SQLITE_OK || pTask->file.iEof==iSz );
79505 return rc;
79519 int rc;
79524 rc = vdbePmaReaderNext(&pMerger->aReadr[iPrev]);
79527 if( rc==SQLITE_OK ){
79579 return (rc==SQLITE_OK ? pTask->pUnpacked->errCode : rc);
79588 int rc; /* Return code */
79590 rc = vdbeSorterListToPMA(pTask, &pTask->list);
79592 return SQLITE_INT_TO_PTR(rc);
79605 int rc = SQLITE_OK;
79626 rc = vdbeSorterJoinThread(pTask);
79628 if( rc!=SQLITE_OK || pTask->pThread==0 ) break;
79631 if( rc==SQLITE_OK ){
79634 rc = vdbeSorterListToPMA(&pSorter->aTask[nWorker], &pSorter->list);
79656 rc = vdbeSorterCreateThread(pTask, vdbeSorterFlushThread, pCtx);
79660 return rc;
79672 int rc = SQLITE_OK; /* Return Code */
79719 rc = vdbeSorterFlushPMA(pSorter);
79722 assert( rc!=SQLITE_OK || pSorter->list.pList==0 );
79765 return rc;
79774 int rc = SQLITE_OK;
79786 while( rc==SQLITE_OK ){
79801 rc = vdbeMergeEngineStep(pIncr->pMerger, &dummy);
79805 if( rc==SQLITE_OK ) rc = rc2;
79807 return rc;
79850 int rc = SQLITE_OK;
79854 rc = vdbeSorterJoinThread(pIncr->pTask);
79856 if( rc==SQLITE_OK ){
79862 if( rc==SQLITE_OK ){
79866 rc = vdbeIncrBgPopulate(pIncr);
79872 rc = vdbeIncrPopulate(pIncr);
79879 return rc;
79893 int rc = SQLITE_OK;
79903 rc = SQLITE_NOMEM;
79905 return rc;
80012 int rc = SQLITE_OK; /* Return code */
80032 rc = vdbePmaReaderNext(&pMerger->aReadr[nTree-i-1]);
80034 rc = vdbePmaReaderIncrInit(&pMerger->aReadr[i], INCRINIT_NORMAL);
80036 if( rc!=SQLITE_OK ) return rc;
80079 int rc = SQLITE_OK;
80087 rc = vdbeMergeEngineInit(pTask, pIncr->pMerger, eMode);
80092 if( rc==SQLITE_OK ){
80096 rc = vdbeSorterOpenTempFile(db, mxSz, &pIncr->aFile[0].pFd);
80097 if( rc==SQLITE_OK ){
80098 rc = vdbeSorterOpenTempFile(db, mxSz, &pIncr->aFile[1].pFd);
80105 rc = vdbeSorterOpenTempFile(db, pTask->file2.iEof, &pTask->file2.pFd);
80108 if( rc==SQLITE_OK ){
80117 if( rc==SQLITE_OK && pIncr->bUseThread ){
80129 rc = vdbeIncrPopulate(pIncr);
80133 if( rc==SQLITE_OK && (SQLITE_MAX_WORKER_THREADS==0 || eMode!=INCRINIT_TASK) ){
80134 rc = vdbePmaReaderNext(pReadr);
80137 return rc;
80168 int rc = SQLITE_OK; /* Return code */
80174 rc = vdbeSorterCreateThread(pIncr->pTask, vdbePmaReaderBgIncrInit, pCtx);
80178 rc = vdbePmaReaderIncrMergeInit(pReadr, eMode);
80181 return rc;
80205 int rc = SQLITE_OK;
80208 if( pNew==0 ) rc = SQLITE_NOMEM;
80210 for(i=0; i<nPMA && rc==SQLITE_OK; i++){
80213 rc = vdbePmaReaderInit(pTask, &pTask->file, iOff, pReadr, &nDummy);
80217 if( rc!=SQLITE_OK ){
80222 return rc;
80260 int rc = SQLITE_OK;
80266 rc = vdbeIncrMergerNew(pTask, pLeaf, &pIncr);
80272 for(i=1; i<nDepth && rc==SQLITE_OK; i++){
80279 rc = SQLITE_NOMEM;
80281 rc = vdbeIncrMergerNew(pTask, pNew, &pReadr->pIncr);
80284 if( rc==SQLITE_OK ){
80290 if( rc==SQLITE_OK ){
80295 return rc;
80314 int rc = SQLITE_OK;
80324 if( pMain==0 ) rc = SQLITE_NOMEM;
80328 for(iTask=0; rc==SQLITE_OK && iTask<pSorter->nTask; iTask++){
80337 rc = vdbeMergeEngineLevel0(pTask, pTask->nPMA, &iReadOff, &pRoot);
80342 if( pRoot==0 ) rc = SQLITE_NOMEM;
80343 for(i=0; i<pTask->nPMA && rc==SQLITE_OK; i += SORTER_MAX_MERGE_COUNT){
80348 rc = vdbeMergeEngineLevel0(pTask, nReader, &iReadOff, &pMerger);
80349 if( rc==SQLITE_OK ){
80350 rc = vdbeSorterAddToTree(pTask, nDepth, iSeq++, pRoot, pMerger);
80355 if( rc==SQLITE_OK ){
80358 rc = vdbeIncrMergerNew(pTask, pRoot, &pMain->aReadr[iTask].pIncr);
80371 if( rc!=SQLITE_OK ){
80376 return rc;
80389 int rc; /* Return code */
80401 rc = vdbeSorterMergeTreeBuild(pSorter, &pMain);
80402 if( rc==SQLITE_OK ){
80409 rc = vdbeSortAllocUnpacked(pLast);
80410 if( rc==SQLITE_OK ){
80413 if( pReadr==0 ) rc = SQLITE_NOMEM;
80415 if( rc==SQLITE_OK ){
80416 rc = vdbeIncrMergerNew(pLast, pMain, &pReadr->pIncr);
80417 if( rc==SQLITE_OK ){
80426 for(iTask=0; rc==SQLITE_OK && iTask<pSorter->nTask; iTask++){
80441 rc = vdbePmaReaderIncrInit(p, INCRINIT_TASK);
80446 if( rc==SQLITE_OK ){
80447 rc = vdbePmaReaderIncrMergeInit(pReadr, INCRINIT_ROOT);
80452 rc = vdbeMergeEngineInit(pTask0, pMain, INCRINIT_NORMAL);
80458 if( rc!=SQLITE_OK ){
80461 return rc;
80472 int rc = SQLITE_OK; /* Return code */
80482 rc = vdbeSorterSort(&pSorter->aTask[0], &pSorter->list);
80486 return rc;
80494 rc = vdbeSorterFlushPMA(pSorter);
80497 rc = vdbeSorterJoinAll(pSorter, rc);
80504 if( rc==SQLITE_OK ){
80505 rc = vdbeSorterSetupMerge(pSorter);
80510 return rc;
80518 int rc; /* Return code */
80527 rc = vdbePmaReaderNext(pSorter->pReader);
80534 rc = vdbeMergeEngineStep(pSorter->pMerger, pbEof);
80542 rc = SQLITE_OK;
80544 return rc;
80695 int rc = SQLITE_OK;
80698 rc = sqlite3OsOpen(p->pVfs, p->zJournal, pReal, p->flags, 0);
80699 if( rc==SQLITE_OK ){
80703 rc = sqlite3OsWrite(p->pReal, p->zBuf, p->iSize, 0);
80705 if( rc!=SQLITE_OK ){
80715 return rc;
80739 int rc = SQLITE_OK;
80742 rc = sqlite3OsRead(p->pReal, zBuf, iAmt, iOfst);
80744 rc = SQLITE_IOERR_SHORT_READ;
80748 return rc;
80760 int rc = SQLITE_OK;
80763 rc = createFile(p);
80765 if( rc==SQLITE_OK ){
80767 rc = sqlite3OsWrite(p->pReal, zBuf, iAmt, iOfst);
80775 return rc;
80782 int rc = SQLITE_OK;
80785 rc = sqlite3OsTruncate(p->pReal, size);
80789 return rc;
80796 int rc;
80799 rc = sqlite3OsSync(p->pReal, flags);
80801 rc = SQLITE_OK;
80803 return rc;
80810 int rc = SQLITE_OK;
80813 rc = sqlite3OsFileSize(p->pReal, pSize);
80817 return rc;
81198 int rc;
81202 rc = pWalker->xExprCallback(pWalker, pExpr);
81203 if( rc==WRC_Continue
81213 return rc & WRC_Abort;
81288 int rc;
81292 rc = WRC_Continue;
81296 rc = pWalker->xSelectCallback(pWalker, p);
81297 if( rc ) break;
81311 return rc & WRC_Abort;
82182 int rc; /* Return code from subprocedures */
82199 rc = sqlite3ResolveExprNames(&nc, pE);
82201 if( rc ) return 0;
83141 int rc = SQLITE_OK;
83147 rc = SQLITE_ERROR;
83149 return rc;
84230 int rc = 0;
84235 || sqlite3GetInt32(p->u.zToken, &rc)==0 );
84243 rc = sqlite3ExprIsInteger(p->pLeft, pValue);
84251 rc = 1;
84257 return rc;
87939 int rc;
87940 rc = sqlite3ValueFromExpr(db, pDflt, SQLITE_UTF8, SQLITE_AFF_NONE, &pVal);
87941 assert( rc==SQLITE_OK || rc==SQLITE_NOMEM );
87942 if( rc!=SQLITE_OK ){
89750 int rc; /* Result codes from subroutines */
89761 rc = sqlite3_prepare(db, zSql, -1, &pStmt, 0);
89763 if( rc ) return rc;
89810 rc = sqlite3_finalize(pStmt);
89811 if( rc ) return rc;
89817 rc = sqlite3_prepare(db, zSql, -1, &pStmt, 0);
89819 if( rc ) return rc;
89858 rc = sqlite3_finalize(pStmt);
89859 if( rc==SQLITE_OK ) initAvgEq(pPrevIdx);
89860 return rc;
89868 int rc = SQLITE_OK; /* Result codes from subroutines */
89872 rc = loadStatTbl(db, 0,
89879 if( rc==SQLITE_OK && sqlite3FindTable(db, "sqlite_stat3", zDb) ){
89880 rc = loadStatTbl(db, 1,
89887 return rc;
89915 int rc;
89942 rc = SQLITE_NOMEM;
89944 rc = sqlite3_exec(db, zSql, analysisLoader, &sInfo, 0);
89951 if( rc==SQLITE_OK && OptimizationEnabled(db, SQLITE_Stat34) ){
89954 rc = loadStat4(db, sInfo.zDatabase);
89964 if( rc==SQLITE_NOMEM ){
89967 return rc;
90010 int rc = SQLITE_OK;
90013 rc = sqlite3ResolveExprNames(pName, pExpr);
90018 return rc;
90038 int rc = 0;
90101 rc = sqlite3ParseUri(db->pVfs->zName, zFile, &flags, &pVfs, &zPath, &zErr);
90102 if( rc!=SQLITE_OK ){
90103 if( rc==SQLITE_NOMEM ) db->mallocFailed = 1;
90110 rc = sqlite3BtreeOpen(pVfs, zPath, db, &aNew->pBt, 0, flags);
90113 if( rc==SQLITE_CONSTRAINT ){
90114 rc = SQLITE_ERROR;
90116 }else if( rc==SQLITE_OK ){
90120 rc = SQLITE_NOMEM;
90124 rc = SQLITE_ERROR;
90138 if( rc==SQLITE_OK && aNew->zName==0 ){
90139 rc = SQLITE_NOMEM;
90144 if( rc==SQLITE_OK ){
90154 rc = SQLITE_ERROR;
90161 rc = sqlite3CodecAttach(db, db->nDb-1, zKey, nKey);
90168 rc = sqlite3CodecAttach(db, db->nDb-1, zKey, nKey);
90180 if( rc==SQLITE_OK ){
90182 rc = sqlite3Init(db, &zErrDyn);
90186 if( rc==SQLITE_OK ){
90188 rc = sqlite3UserAuthCheckLogin(db, zName, &newAuth);
90190 rc = SQLITE_AUTH_USER;
90194 if( rc ){
90204 if( rc==SQLITE_NOMEM || rc==SQLITE_IOERR_NOMEM ){
90222 if( rc ) sqlite3_result_error_code(context, rc);
90294 int rc;
90304 SQLITE_OK!=(rc = resolveAttachExpr(&sName, pFilename)) ||
90305 SQLITE_OK!=(rc = resolveAttachExpr(&sName, pDbname)) ||
90306 SQLITE_OK!=(rc = resolveAttachExpr(&sName, pKey))
90319 rc = sqlite3AuthCheck(pParse, type, zAuthArg, 0, 0);
90320 if(rc!=SQLITE_OK ){
90651 pParse->rc = SQLITE_ERROR;
90671 int rc; /* Auth callback return code */
90673 rc = db->xAuth(db->pAuthArg, SQLITE_READ, zTab,zCol,zDb,pParse->zAuthContext
90678 if( rc==SQLITE_DENY ){
90684 pParse->rc = SQLITE_AUTH;
90685 }else if( rc!=SQLITE_IGNORE && rc!=SQLITE_OK ){
90688 return rc;
90765 int rc;
90777 rc = db->xAuth(db->pAuthArg, code, zArg1, zArg2, zArg3, pParse->zAuthContext
90782 if( rc==SQLITE_DENY ){
90784 pParse->rc = SQLITE_AUTH;
90785 }else if( rc!=SQLITE_OK && rc!=SQLITE_IGNORE ){
90786 rc = SQLITE_DENY;
90789 return rc;
90968 if( pParse->rc==SQLITE_OK ) pParse->rc = SQLITE_ERROR;
90986 pParse->rc = SQLITE_AUTH_USER;
91058 pParse->rc = SQLITE_DONE;
91061 pParse->rc = SQLITE_ERROR;
91765 pParse->rc = SQLITE_NOMEM;
94696 int rc;
94705 rc = sqlite3BtreeOpen(db->pVfs, 0, db, &pBt, 0, flags);
94706 if( rc!=SQLITE_OK ){
94709 pParse->rc = rc;
94873 int rc;
94877 rc = SQLITE_CONSTRAINT_PRIMARYKEY;
94880 rc = SQLITE_CONSTRAINT_ROWID;
94882 sqlite3HaltConstraint(pParse, rc, onError, zMsg, P4_DYNAMIC,
98050 int rc = sqlite3_overload_function(db, "MATCH", 2);
98051 assert( rc==SQLITE_NOMEM || rc==SQLITE_OK );
98052 if( rc==SQLITE_NOMEM ){
100290 int rc; /* Result code */
100298 rc = sqlite3Select(pParse, pSelect, &dest);
100300 if( rc || db->mallocFailed || pParse->nErr ) goto insert_cleanup;
101744 int rc = SQLITE_OK; /* Return code */
101755 while( rc==SQLITE_OK && zSql[0] ){
101760 rc = sqlite3_prepare_v2(db, zSql, -1, &pStmt, &zLeftover);
101761 assert( rc==SQLITE_OK || pStmt==0 );
101762 if( rc!=SQLITE_OK ){
101776 rc = sqlite3_step(pStmt);
101779 if( xCallback && (SQLITE_ROW==rc ||
101780 (SQLITE_DONE==rc && !callbackIsInit
101795 if( rc==SQLITE_ROW ){
101809 rc = SQLITE_ABORT;
101817 if( rc!=SQLITE_ROW ){
101818 rc = sqlite3VdbeFinalize((Vdbe *)pStmt);
101834 rc = sqlite3ApiExit(db, rc);
101835 if( rc!=SQLITE_OK && pzErrMsg ){
101841 rc = SQLITE_NOMEM;
101848 assert( (rc&db->errMask)==rc );
101850 return rc;
102938 int rc;
102940 rc = sqlite3LoadExtension(db, zFile, zProc, pzErrMsg);
102941 rc = sqlite3ApiExit(db, rc);
102943 return rc;
103021 int rc = SQLITE_OK;
103023 rc = sqlite3_initialize();
103024 if( rc ){
103025 return rc;
103043 rc = SQLITE_NOMEM;
103051 assert( (rc&0xff)==rc );
103052 return rc;
103113 int rc;
103136 if( xInit && (rc = xInit(db, &zErrmsg, &sqlite3Apis))!=0 ){
103137 sqlite3ErrorWithMsg(db, rc,
103888 int rc; /* return value form SQLITE_FCNTL_PRAGMA */
103945 rc = sqlite3_file_control(db, zDb, SQLITE_FCNTL_PRAGMA, (void*)aFcntl);
103946 if( rc==SQLITE_OK ){
103957 if( rc!=SQLITE_NOTFOUND ){
103963 pParse->rc = rc;
103972 rc = sqlite3_stricmp(zLeft, aPragmaNames[mid].zName);
103973 if( rc==0 ) break;
103974 if( rc<0 ){
104265 rc = sqlite3BtreeSetAutoVacuum(pBt, eAuto);
104266 if( rc==SQLITE_OK && (eAuto==1 || eAuto==2) ){
104371 rc = sqlite3_file_control(db, zDb, SQLITE_FCNTL_MMAP_SIZE, &sz);
104374 rc = SQLITE_OK;
104376 if( rc==SQLITE_OK ){
104378 }else if( rc!=SQLITE_NOTFOUND ){
104380 pParse->rc = rc;
104428 rc = sqlite3OsAccess(db->pVfs, zRight, SQLITE_ACCESS_READWRITE, &res);
104429 if( rc!=SQLITE_OK || res==0 ){
104478 rc = sqlite3OsAccess(db->pVfs, zRight, SQLITE_ACCESS_READWRITE, &res);
104479 if( rc!=SQLITE_OK || res==0 ){
105627 pData->rc = db->mallocFailed ? SQLITE_NOMEM : SQLITE_CORRUPT_BKPT;
105666 int rc;
105675 rc = db->errCode;
105676 assert( (rc&0xFF)==(rcp&0xFF) );
105678 if( SQLITE_OK!=rc ){
105682 pData->rc = rc;
105683 if( rc==SQLITE_NOMEM ){
105685 }else if( rc!=SQLITE_INTERRUPT && (rc&0xFF)!=SQLITE_LOCKED ){
105725 int rc;
105788 initData.rc = SQLITE_OK;
105791 if( initData.rc ){
105792 rc = initData.rc;
105815 rc = sqlite3BtreeBeginTrans(pDb->pBt, 0);
105816 if( rc!=SQLITE_OK ){
105817 sqlite3SetString(pzErrMsg, db, "%s", sqlite3ErrStr(rc));
105866 rc = SQLITE_ERROR;
105898 rc = SQLITE_CORRUPT_BKPT; // Android Change from "rc = SQLITE_ERROR;"
105925 rc = sqlite3_exec(db, zSql, sqlite3InitCallback, &initData, 0);
105930 if( rc==SQLITE_OK ) rc = initData.rc;
105933 if( rc==SQLITE_OK ){
105939 rc = SQLITE_NOMEM;
105942 if( rc==SQLITE_OK || (db->flags&SQLITE_RecoveryMode)){
105952 rc = SQLITE_OK;
105966 if( rc==SQLITE_NOMEM || rc==SQLITE_IOERR_NOMEM ){
105969 return rc;
105983 int i, rc;
105989 rc = SQLITE_OK;
105992 for(i=0; rc==SQLITE_OK && i<db->nDb; i++){
105994 rc = sqlite3InitOne(db, i, pzErrMsg);
105995 if( rc ){
106006 if( rc==SQLITE_OK && !DbHasProperty(db, 1, DB_SchemaLoaded) ){
106007 rc = sqlite3InitOne(db, 1, pzErrMsg);
106008 if( rc ){
106015 if( rc==SQLITE_OK && commit_internal ){
106019 return rc;
106027 int rc = SQLITE_OK;
106031 rc = sqlite3Init(db, &pParse->zErrMsg);
106033 if( rc!=SQLITE_OK ){
106034 pParse->rc = rc;
106037 return rc;
106043 ** of date set pParse->rc to SQLITE_SCHEMA. If all schema cookies
106044 ** make no changes to pParse->rc.
106049 int rc;
106063 rc = sqlite3BtreeBeginTrans(pBt, 0);
106064 if( rc==SQLITE_NOMEM || rc==SQLITE_IOERR_NOMEM ){
106067 if( rc!=SQLITE_OK ) return;
106073 ** set Parse.rc to SQLITE_SCHEMA. */
106078 pParse->rc = SQLITE_SCHEMA;
106145 int rc = SQLITE_OK; /* Result code */
106151 rc = SQLITE_NOMEM;
106186 rc = sqlite3BtreeSchemaLocked(pBt);
106187 if( rc ){
106189 sqlite3ErrorWithMsg(db, rc, "database schema is locked: %s", zDb);
106207 rc = sqlite3ApiExit(db, SQLITE_TOOBIG);
106224 pParse->rc = SQLITE_NOMEM;
106226 if( pParse->rc==SQLITE_DONE ) pParse->rc = SQLITE_OK;
106231 pParse->rc = SQLITE_NOMEM;
106236 rc = pParse->rc;
106239 if( rc==SQLITE_OK && pParse->pVdbe && pParse->explain ){
106265 if( pParse->pVdbe && (rc!=SQLITE_OK || db->mallocFailed) ){
106273 sqlite3ErrorWithMsg(db, rc, "%s", zErrMsg);
106276 sqlite3Error(db, rc);
106290 rc = sqlite3ApiExit(db, rc);
106291 assert( (rc&db->errMask)==rc );
106292 return rc;
106303 int rc;
106314 rc = sqlite3Prepare(db, zSql, nBytes, saveSqlFlag, pOld, ppStmt, pzTail);
106315 if( rc==SQLITE_SCHEMA ){
106317 rc = sqlite3Prepare(db, zSql, nBytes, saveSqlFlag, pOld, ppStmt, pzTail);
106321 assert( rc==SQLITE_OK || *ppStmt==0 );
106322 return rc;
106334 int rc;
106344 rc = sqlite3LockAndPrepare(db, zSql, -1, 0, p, &pNew, 0);
106345 if( rc ){
106346 if( rc==SQLITE_NOMEM ){
106350 return rc;
106377 int rc;
106378 rc = sqlite3LockAndPrepare(db,zSql,nBytes,0,0,ppStmt,pzTail);
106379 assert( rc==SQLITE_OK || ppStmt==0 || *ppStmt==0 ); /* VERIFY: F13021 */
106380 return rc;
106389 int rc;
106390 rc = sqlite3LockAndPrepare(db,zSql,nBytes,1,0,ppStmt,pzTail);
106391 assert( rc==SQLITE_OK || ppStmt==0 || *ppStmt==0 ); /* VERIFY: F13021 */
106392 return rc;
106414 int rc = SQLITE_OK;
106432 rc = sqlite3LockAndPrepare(db, zSql8, -1, saveSqlFlag, 0, ppStmt, &zTail8);
106445 rc = sqlite3ApiExit(db, rc);
106447 return rc;
106465 int rc;
106466 rc = sqlite3Prepare16(db,zSql,nBytes,0,ppStmt,pzTail);
106467 assert( rc==SQLITE_OK || ppStmt==0 || *ppStmt==0 ); /* VERIFY: F13021 */
106468 return rc;
106477 int rc;
106478 rc = sqlite3Prepare16(db,zSql,nBytes,1,ppStmt,pzTail);
106479 assert( rc==SQLITE_OK || ppStmt==0 || *ppStmt==0 ); /* VERIFY: F13021 */
106480 return rc;
108448 int rc; /* Result code */
108509 rc = sqlite3Select(pParse, pSetup, &destQueue);
108511 if( rc ) goto end_of_recursive_query;
108596 int rc = 0;
108615 rc = sqlite3Select(pParse, p, pDest);
108617 if( rc ) break;
108621 return rc;
108660 int rc = SQLITE_OK; /* Success code from a subroutine */
108682 rc = 1;
108688 rc = 1;
108707 rc = multiSelectValues(pParse, p, &dest);
108717 rc = 1;
108745 rc = sqlite3Select(pParse, pPrior, &dest);
108748 if( rc ){
108759 rc = sqlite3Select(pParse, p, &dest);
108760 testcase( rc!=SQLITE_OK );
108812 rc = sqlite3Select(pParse, pPrior, &uniondest);
108813 if( rc ){
108832 rc = sqlite3Select(pParse, p, &uniondest);
108833 testcase( rc!=SQLITE_OK );
108899 rc = sqlite3Select(pParse, pPrior, &intersectdest);
108900 if( rc ){
108916 rc = sqlite3Select(pParse, p, &intersectdest);
108917 testcase( rc!=SQLITE_OK );
108975 rc = SQLITE_NOMEM;
109007 return rc;
111204 int rc = 1; /* Value to return from this function */
111390 rc = multiSelect(pParse, p, pDest);
111396 return rc;
111976 rc = (pParse->nErr>0);
111986 if( rc==SQLITE_OK && pDest->eDest==SRT_Output ){
111996 return rc;
112129 int rc; /* Return code from sqlite3_exec() */
112174 p->rc = SQLITE_ERROR;
112197 p->rc = SQLITE_NOMEM;
112219 int rc;
112234 res.rc = SQLITE_OK;
112241 rc = sqlite3_exec(db, zSql, sqlite3_get_table_cb, &res, pzErrMsg);
112244 if( (rc&0xff)==SQLITE_ABORT ){
112253 db->errCode = res.rc; /* Assume 32-bit assignment is atomic */
112254 return res.rc;
112257 if( rc!=SQLITE_OK ){
112259 return rc;
112274 return rc;
113093 pTo->rc = pFrom->rc;
113665 int rc;
113666 rc = sqlite3AuthCheck(pParse, SQLITE_UPDATE, pTab->zName,
113669 if( rc==SQLITE_DENY ){
113671 }else if( rc==SQLITE_IGNORE ){
114217 int rc;
114218 rc = sqlite3VdbeFinalize((Vdbe*)pStmt);
114219 if( rc ){
114222 return rc;
114230 VVA_ONLY( int rc; )
114238 VVA_ONLY( rc = ) sqlite3_step(pStmt);
114239 assert( rc!=SQLITE_ROW || (db->flags&SQLITE_CountRows) );
114249 int rc;
114251 rc = sqlite3_prepare(db, zSql, -1, &pStmt, 0);
114252 if( rc!=SQLITE_OK ) return rc;
114255 rc = execSql(db, pzErrMsg, (char*)sqlite3_column_text(pStmt, 0));
114256 if( rc!=SQLITE_OK ){
114258 return rc;
114308 int rc = SQLITE_OK; /* Return code from service routines */
114364 rc = execSql(db, pzErrMsg, zSql);
114369 if( rc!=SQLITE_OK ) goto end_of_vacuum;
114391 rc = execSql(db, pzErrMsg, "PRAGMA vacuum_db.synchronous=OFF");
114392 if( rc!=SQLITE_OK ) goto end_of_vacuum;
114398 rc = execSql(db, pzErrMsg, "BEGIN;");
114399 if( rc!=SQLITE_OK ) goto end_of_vacuum;
114400 rc = sqlite3BtreeBeginTrans(pMain, 2);
114401 if( rc!=SQLITE_OK ) goto end_of_vacuum;
114413 rc = SQLITE_NOMEM;
114425 rc = execExecSql(db, pzErrMsg,
114430 if( rc!=SQLITE_OK ) goto end_of_vacuum;
114431 rc = execExecSql(db, pzErrMsg,
114434 if( rc!=SQLITE_OK ) goto end_of_vacuum;
114435 rc = execExecSql(db, pzErrMsg,
114438 if( rc!=SQLITE_OK ) goto end_of_vacuum;
114446 rc = execExecSql(db, pzErrMsg,
114455 if( rc!=SQLITE_OK ) goto end_of_vacuum;
114459 rc = execExecSql(db, pzErrMsg,
114463 if( rc!=SQLITE_OK ) goto end_of_vacuum;
114464 rc = execExecSql(db, pzErrMsg,
114469 if( rc!=SQLITE_OK ) goto end_of_vacuum;
114477 rc = execSql(db, pzErrMsg,
114484 if( rc ) goto end_of_vacuum;
114518 rc = sqlite3BtreeUpdateMeta(pTemp, aCopy[i], meta+aCopy[i+1]);
114519 if( NEVER(rc!=SQLITE_OK) ) goto end_of_vacuum;
114522 rc = sqlite3BtreeCopyFile(pMain, pTemp);
114523 if( rc!=SQLITE_OK ) goto end_of_vacuum;
114524 rc = sqlite3BtreeCommit(pTemp);
114525 if( rc!=SQLITE_OK ) goto end_of_vacuum;
114531 assert( rc==SQLITE_OK );
114532 rc = sqlite3BtreeSetPageSize(pMain, sqlite3BtreeGetPageSize(pTemp), nRes,1);
114561 return rc;
114609 int rc = SQLITE_OK;
114615 rc = SQLITE_MISUSE_BKPT;
114635 rc = sqlite3ApiExit(db, rc);
114636 if( rc!=SQLITE_OK && xDestroy ) xDestroy(pAux);
114639 return rc;
115060 int rc;
115102 rc = xConstruct(db, pMod->pAux, nArg, azArg, &pVTable->pVtab, &zErr);
115104 if( rc==SQLITE_NOMEM ) db->mallocFailed = 1;
115107 if( SQLITE_OK!=rc ){
115125 rc = SQLITE_ERROR;
115176 return rc;
115190 int rc;
115204 rc = SQLITE_ERROR;
115207 rc = vtabCallConstructor(db, pTab, pMod, pMod->pModule->xConnect, &zErr);
115208 if( rc!=SQLITE_OK ){
115214 return rc;
115257 int rc = SQLITE_OK;
115275 rc = SQLITE_ERROR;
115277 rc = vtabCallConstructor(db, pTab, pMod, pMod->pModule->xCreate, pzErr);
115282 if( rc==SQLITE_OK && ALWAYS(sqlite3GetVTable(db, pTab)) ){
115283 rc = growVTrans(db);
115284 if( rc==SQLITE_OK ){
115289 return rc;
115300 int rc = SQLITE_OK;
115321 rc = SQLITE_NOMEM;
115343 rc = SQLITE_ERROR;
115355 assert( (rc&0xff)==rc );
115356 rc = sqlite3ApiExit(db, rc);
115358 return rc;
115369 int rc = SQLITE_OK;
115382 rc = p->pMod->pModule->xDestroy(p->pVtab);
115384 if( rc==SQLITE_OK ){
115392 return rc;
115432 int rc = SQLITE_OK;
115436 for(i=0; rc==SQLITE_OK && i<db->nVTrans; i++){
115440 rc = x(pVtab);
115445 return rc;
115475 int rc = SQLITE_OK;
115503 rc = growVTrans(db);
115504 if( rc==SQLITE_OK ){
115505 rc = pModule->xBegin(pVTab->pVtab);
115506 if( rc==SQLITE_OK ){
115511 return rc;
115530 int rc = SQLITE_OK;
115536 for(i=0; rc==SQLITE_OK && i<db->nVTrans; i++){
115554 rc = xMethod(pVTab->pVtab, iSavepoint);
115559 return rc;
115587 int rc = 0;
115612 rc = pMod->xFindFunction(pVtab, nArg, zLowerName, &xFunc, &pArg);
115615 if( rc==0 ){
115687 int rc = SQLITE_OK;
115698 rc = SQLITE_MISUSE_BKPT;
115706 rc = SQLITE_MISUSE_BKPT;
115711 if( rc!=SQLITE_OK ) sqlite3Error(db, rc);
115713 return rc;
118190 int rc;
118193 rc = pVtab->pModule->xBestIndex(pVtab, p);
118196 if( rc!=SQLITE_OK ){
118197 if( rc==SQLITE_NOMEM ){
118200 sqlite3ErrorMsg(pParse, "%s", sqlite3ErrStr(rc));
118485 int rc = SQLITE_OK;
118496 rc = sqlite3Stat4ValueFromExpr(pParse, pLower->pExpr->pRight, aff, &p1);
118499 if( pUpper && rc==SQLITE_OK ){
118500 rc = sqlite3Stat4ValueFromExpr(pParse, pUpper->pExpr->pRight, aff, &p2);
118507 for(i=0; rc==SQLITE_OK && i<p->nSample; i++){
118508 rc = sqlite3Stat4Column(db, p->aSample[i].p, p->aSample[i].n, nEq, &pVal);
118509 if( rc==SQLITE_OK && p1 ){
118513 if( rc==SQLITE_OK && p2 ){
118542 return rc;
118593 int rc = SQLITE_OK;
118664 rc = sqlite3Stat4ProbeSetValue(pParse, p, &pRec, pExpr, aff, nEq, &bOk);
118665 if( rc==SQLITE_OK && bOk ){
118679 rc = sqlite3Stat4ProbeSetValue(pParse, p, &pRec, pExpr, aff, nEq, &bOk);
118680 if( rc==SQLITE_OK && bOk ){
118691 if( rc==SQLITE_OK ){
118710 rc = whereRangeSkipScanEst(pParse, pLower, pUpper, pLoop, &bDone);
118711 if( bDone ) return rc;
118743 return rc;
118774 int rc; /* Subfunction return code */
118798 rc = sqlite3Stat4ProbeSetValue(pParse, p, &pRec, pExpr, aff, nEq-1, &bOk);
118800 if( rc!=SQLITE_OK ) return rc;
118808 return rc;
118838 int rc = SQLITE_OK; /* Subfunction return code */
118844 for(i=0; rc==SQLITE_OK && i<pList->nExpr; i++){
118846 rc = whereEqualScanEst(pParse, pBuilder, pList->a[i].pExpr, &nEst);
118851 if( rc==SQLITE_OK ){
118857 return rc;
120902 int rc = SQLITE_OK; /* Return code */
120935 for(; rc==SQLITE_OK && pTerm!=0; pTerm = whereScanNext(&scan)){
121050 rc = whereEqualScanEst(pParse, pBuilder, pExpr->pRight, &nOut);
121052 rc = whereInScanEst(pParse, pBuilder, pExpr->x.pList, &nOut);
121054 if( rc==SQLITE_NOTFOUND ) rc = SQLITE_OK;
121055 if( rc!=SQLITE_OK ) break; /* Jump out of the pTerm loop */
121091 rc = whereLoopInsert(pBuilder, pNew);
121131 && (rc = whereLoopResize(db, pNew, pNew->nLTerm+1))==SQLITE_OK
121150 return rc;
121267 int rc = SQLITE_OK; /* Return code */
121330 for(pTerm=pWC->a; rc==SQLITE_OK && pTerm<pWCEnd; pTerm++){
121359 rc = whereLoopInsert(pBuilder, pNew);
121367 for(; rc==SQLITE_OK && pProbe; pProbe=pProbe->pNext, iSortIdx++){
121395 rc = whereLoopInsert(pBuilder, pNew);
121397 if( rc ) break;
121431 rc = whereLoopInsert(pBuilder, pNew);
121433 if( rc ) break;
121437 rc = whereLoopAddBtreeIndex(pBuilder, pSrc, pProbe, 0);
121448 return rc;
121477 int rc = SQLITE_OK;
121545 rc = vtabBestIndex(pParse, pTab, pIdxInfo);
121546 if( rc ) goto whereLoopAddVtab_exit;
121561 rc = SQLITE_ERROR;
121616 return rc;
121629 int rc = SQLITE_OK;
121643 for(pTerm=pWC->a; pTerm<pWCEnd && rc==SQLITE_OK; pTerm++){
121683 rc = whereLoopAddVirtual(&sSubBuild, mExtra);
121687 rc = whereLoopAddBtree(&sSubBuild, mExtra);
121689 if( rc==SQLITE_OK ){
121690 rc = whereLoopAddOr(&sSubBuild, mExtra);
121692 assert( rc==SQLITE_OK || sCur.n==0 );
121718 for(i=0; rc==SQLITE_OK && i<sSum.n; i++){
121734 rc = whereLoopInsert(pBuilder, pNew);
121739 return rc;
121754 int rc = SQLITE_OK;
121769 rc = whereLoopAddVirtual(pBuilder, mExtra);
121771 rc = whereLoopAddBtree(pBuilder, mExtra);
121773 if( rc==SQLITE_OK ){
121774 rc = whereLoopAddOr(pBuilder, mExtra);
121777 if( rc || db->mallocFailed ) break;
121780 return rc;
122426 int rc = wherePathSatisfiesOrderBy(pWInfo, pWInfo->pResultSet, pFrom,
122428 if( rc==pWInfo->pResultSet->nExpr ){
122658 int rc; /* Return code */
122816 rc = whereLoopAddAll(&sWLB);
122817 if( rc ) goto whereBeginError;
127502 pParse->rc = SQLITE_OK;
127524 pParse->rc = SQLITE_TOOBIG;
127531 pParse->rc = SQLITE_INTERRUPT;
127548 if( pParse->rc!=SQLITE_OK ){
127557 if( zSql[i]==0 && pParse->rc==SQLITE_OK && db->mallocFailed==0 ){
127562 if( pParse->rc==SQLITE_OK && db->mallocFailed==0 ){
127576 pParse->rc = SQLITE_NOMEM;
127578 if( pParse->rc!=SQLITE_OK && pParse->rc!=SQLITE_DONE && pParse->zErrMsg==0 ){
127579 sqlite3SetString(&pParse->zErrMsg, db, "%s", sqlite3ErrStr(pParse->rc));
127584 sqlite3_log(pParse->rc, "%s", *pzErrMsg);
127625 assert( nErr==0 || pParse->rc!=SQLITE_OK );
127901 int rc;
127904 rc = sqlite3_initialize();
127905 if( rc ) return rc;
127911 rc = sqlite3_complete(zSql8);
127913 rc = SQLITE_NOMEM;
127916 return sqlite3ApiExit(0, rc);
128140 int rc; /* Result code */
128146 rc = sqlite3_wsd_init(4096, 24);
128147 if( rc!=SQLITE_OK ){
128148 return rc;
128172 rc = sqlite3MutexInit();
128173 if( rc ) return rc;
128185 rc = sqlite3MallocInit();
128187 if( rc==SQLITE_OK ){
128193 rc = SQLITE_NOMEM;
128197 if( rc==SQLITE_OK ){
128202 /* If rc is not SQLITE_OK at this point, then either the malloc
128205 if( rc!=SQLITE_OK ){
128206 return rc;
128229 rc = sqlite3PcacheInitialize();
128231 if( rc==SQLITE_OK ){
128233 rc = sqlite3OsInit();
128235 if( rc==SQLITE_OK ){
128267 if ( rc==SQLITE_OK ){
128284 rc = SQLITE_EXTRA_INIT(0);
128288 return rc;
128301 int rc = sqlite3_wsd_init(4096, 24);
128302 if( rc!=SQLITE_OK ){
128303 return rc;
128355 int rc = SQLITE_OK;
128471 rc = SQLITE_ERROR;
128634 rc = SQLITE_ERROR;
128639 return rc;
128749 int rc;
128756 rc = setupLookaside(db, pBuf, sz, cnt);
128768 rc = SQLITE_ERROR; /* IMP: R-42790-23372 */
128785 rc = SQLITE_OK;
128793 return rc;
128817 int rc, n;
128822 rc = memcmp(pKey1, pKey2, n);
128823 if( rc==0 ){
128834 rc = nKey1 - nKey2;
128837 return rc;
129219 SQLITE_PRIVATE const char *sqlite3ErrName(int rc){
129221 int i, origRc = rc;
129222 for(i=0; i<2 && zName==0; i++, rc &= 0xff){
129223 switch( rc ){
129327 SQLITE_PRIVATE const char *sqlite3ErrStr(int rc){
129358 switch( rc ){
129364 rc &= 0xff;
129365 if( ALWAYS(rc>=0) && rc<ArraySize(aMsg) && aMsg[rc]!=0 ){
129366 zErr = aMsg[rc];
129427 int rc;
129429 rc = p->xFunc(p->pArg, p->nBusy);
129430 if( rc==0 ){
129435 return rc;
129569 int rc;
129570 rc = sqlite3CreateFunc(db, zFunctionName, nArg, SQLITE_UTF8|extraFlags,
129572 if( rc==SQLITE_OK ){
129573 rc = sqlite3CreateFunc(db, zFunctionName, nArg, SQLITE_UTF16LE|extraFlags,
129576 if( rc!=SQLITE_OK ){
129577 return rc;
129654 int rc = SQLITE_ERROR;
129672 rc = sqlite3CreateFunc(db, zFunc, nArg, enc, p, xFunc, xStep, xFinal, pArg);
129674 assert( rc!=SQLITE_OK );
129680 rc = sqlite3ApiExit(db, rc);
129682 return rc;
129696 int rc;
129705 rc = sqlite3CreateFunc(db, zFunc8, nArg, eTextRep, p, xFunc, xStep, xFinal,0);
129707 rc = sqlite3ApiExit(db, rc);
129709 return rc;
129732 int rc = SQLITE_OK;
129741 rc = sqlite3CreateFunc(db, zName, nArg, SQLITE_UTF8,
129744 rc = sqlite3ApiExit(db, rc);
129746 return rc;
129971 int rc; /* Return code */
129997 rc = SQLITE_ERROR;
130001 rc = sqlite3Checkpoint(db, iDb, eMode, pnLog, pnCkpt);
130002 sqlite3Error(db, rc);
130004 rc = sqlite3ApiExit(db, rc);
130006 return rc;
130043 int rc = SQLITE_OK; /* Return code */
130051 for(i=0; i<db->nDb && rc==SQLITE_OK; i++){
130053 rc = sqlite3BtreeCheckpoint(db->aDb[i].pBt, eMode, pnLog, pnCkpt);
130056 if( rc==SQLITE_BUSY ){
130058 rc = SQLITE_OK;
130063 return (rc==SQLITE_OK && bBusy) ? SQLITE_BUSY : rc;
130202 SQLITE_API const char *SQLITE_STDCALL sqlite3_errstr(int rc){
130203 return sqlite3ErrStr(rc);
130424 char **pzErrMsg /* OUT: Error message (if rc!=SQLITE_OK) */
130426 int rc = SQLITE_OK;
130474 rc = SQLITE_ERROR;
130599 rc = SQLITE_ERROR;
130605 rc = SQLITE_PERM;
130627 rc = SQLITE_ERROR;
130630 if( rc!=SQLITE_OK ){
130636 return rc;
130652 int rc; /* Return code */
130662 rc = sqlite3_initialize();
130663 if( rc ) return rc;
130800 rc = sqlite3ParseUri(zVfs, zFilename, &flags, &db->pVfs, &zOpen, &zErrMsg);
130801 if( rc!=SQLITE_OK ){
130802 if( rc==SQLITE_NOMEM ) db->mallocFailed = 1;
130803 sqlite3ErrorWithMsg(db, rc, zErrMsg ? "%s" : 0, zErrMsg);
130809 rc = sqlite3BtreeOpen(db->pVfs, zOpen, db, &db->aDb[0].pBt, 0,
130811 if( rc!=SQLITE_OK ){
130812 if( rc==SQLITE_IOERR_NOMEM ){
130813 rc = SQLITE_NOMEM;
130815 sqlite3Error(db, rc);
130847 rc = sqlite3_errcode(db);
130848 if( rc==SQLITE_OK ){
130850 rc = sqlite3_errcode(db);
130851 if( rc!=SQLITE_OK ){
130859 rc = sqlite3Fts1Init(db);
130864 if( !db->mallocFailed && rc==SQLITE_OK ){
130866 rc = sqlite3Fts2Init(db);
130871 if( !db->mallocFailed && rc==SQLITE_OK ){
130872 rc = sqlite3Fts3Init(db);
130877 if( !db->mallocFailed && rc==SQLITE_OK ){
130878 rc = sqlite3IcuInit(db);
130883 if( !db->mallocFailed && rc==SQLITE_OK){
130884 rc = sqlite3RtreeInit(db);
130889 if( !db->mallocFailed && rc==SQLITE_OK){
130891 rc = sqlite3_dbstat_register(db);
130905 if( rc ) sqlite3Error(db, rc);
130920 rc = sqlite3_errcode(db);
130921 assert( db!=0 || rc==SQLITE_NOMEM );
130922 if( rc==SQLITE_NOMEM ){
130925 }else if( rc!=SQLITE_OK ){
130936 return sqlite3ApiExit(0, rc);
130968 int rc;
130975 rc = sqlite3_initialize();
130976 if( rc ) return rc;
130983 rc = openDatabase(zFilename8, ppDb,
130985 assert( *ppDb || rc==SQLITE_NOMEM );
130986 if( rc==SQLITE_OK && !DbHasProperty(*ppDb, 0, DB_SchemaLoaded) ){
130990 rc = SQLITE_NOMEM;
130994 return sqlite3ApiExit(0, rc);
131022 int rc;
131029 rc = createCollation(db, zName, (u8)enc, pCtx, xCompare, xDel);
131030 rc = sqlite3ApiExit(db, rc);
131032 return rc;
131046 int rc = SQLITE_OK;
131056 rc = createCollation(db, zName8, (u8)enc, pCtx, xCompare, 0);
131059 rc = sqlite3ApiExit(db, rc);
131061 return rc;
131194 int rc;
131215 rc = sqlite3Init(db, &zErrMsg);
131216 if( SQLITE_OK!=rc ){
131285 if( SQLITE_OK==rc && !pTab ){
131289 rc = SQLITE_ERROR;
131291 sqlite3ErrorWithMsg(db, rc, (zErrMsg?"%s":0), zErrMsg);
131293 rc = sqlite3ApiExit(db, rc);
131295 return rc;
131303 int rc;
131310 rc = (sqlite3OsSleep(pVfs, 1000*ms)/1000);
131311 return rc;
131331 int rc = SQLITE_ERROR;
131349 rc = SQLITE_OK;
131351 rc = sqlite3OsFileControl(fd, op, pArg);
131353 rc = SQLITE_NOTFOUND;
131358 return rc;
131365 int rc = 0;
131410 rc = sqlite3BitvecBuiltinTest(sz, aProg);
131432 rc = sqlite3FaultSim(0);
131465 rc = PENDING_BYTE;
131489 rc = x;
131523 rc = ALWAYS(x);
131539 rc = SQLITE_BYTEORDER*100 + SQLITE_LITTLEENDIAN*10 + SQLITE_BIGENDIAN;
131585 rc = (sqlite3KeywordCode((u8*)zWord, n)!=TK_ID) ? SQLITE_N_KEYWORD : 0;
131658 if( sqlite3GlobalConfig.isInit==0 ) rc = SQLITE_ERROR;
131693 return rc;
131943 int rc = SQLITE_OK;
131965 rc = SQLITE_LOCKED; /* Deadlock detected. */
131977 sqlite3ErrorWithMsg(db, rc, (rc?"database is deadlocked":0));
131979 return rc;
133565 int rc = SQLITE_OK; /* Return code */
133571 fts3DbExec(&rc, db, "DROP TABLE IF EXISTS %Q.'%q_content'", zDb, p->zName);
133573 fts3DbExec(&rc, db, "DROP TABLE IF EXISTS %Q.'%q_segments'", zDb,p->zName);
133574 fts3DbExec(&rc, db, "DROP TABLE IF EXISTS %Q.'%q_segdir'", zDb, p->zName);
133575 fts3DbExec(&rc, db, "DROP TABLE IF EXISTS %Q.'%q_docsize'", zDb, p->zName);
133576 fts3DbExec(&rc, db, "DROP TABLE IF EXISTS %Q.'%q_stat'", zDb, p->zName);
133582 return (rc==SQLITE_OK ? fts3DisconnectMethod(pVtab) : rc);
133598 int rc; /* Return code */
133618 rc = SQLITE_NOMEM;
133620 rc = sqlite3_declare_vtab(p->db, zSql);
133625 *pRc = rc;
133651 int rc = SQLITE_OK; /* Return code */
133668 if( zContentCols==0 ) rc = SQLITE_NOMEM;
133671 fts3DbExec(&rc, db,
133679 fts3DbExec(&rc, db,
133683 fts3DbExec(&rc, db,
133696 fts3DbExec(&rc, db,
133703 sqlite3Fts3CreateStatTable(&rc, p);
133705 return rc;
133717 int rc; /* Return code */
133723 rc = SQLITE_NOMEM;
133725 rc = sqlite3_prepare(p->db, zSql, -1, &pStmt, 0);
133726 if( rc==SQLITE_OK ){
133729 rc = sqlite3_finalize(pStmt);
133730 }else if( rc==SQLITE_AUTH ){
133732 rc = SQLITE_OK;
133735 assert( p->nPgsz>0 || rc!=SQLITE_OK );
133737 *pRc = rc;
134054 int rc = SQLITE_OK; /* Return code */
134060 rc = SQLITE_NOMEM;
134062 rc = sqlite3_prepare(db, zSql, -1, &pStmt, 0);
134063 if( rc!=SQLITE_OK ){
134069 if( rc==SQLITE_OK ){
134087 rc = SQLITE_NOMEM;
134106 return rc;
134131 int rc = SQLITE_OK; /* Return code */
134176 rc = SQLITE_NOMEM;
134191 for(i=3; rc==SQLITE_OK && i<argc; i++){
134202 rc = sqlite3Fts3InitTokenizer(pHash, &z[9], &pTokenizer, pzErr);
134223 rc = SQLITE_NOMEM;
134233 rc = SQLITE_ERROR;
134239 rc = SQLITE_ERROR;
134267 rc = SQLITE_ERROR;
134309 if( rc==SQLITE_OK && zContent ){
134317 rc = fts3ContentColumns(db, argv[1], zContent,&aCol,&nCol,&nString,pzErr);
134321 if( rc==SQLITE_OK && zLanguageid ){
134334 if( rc!=SQLITE_OK ) goto fts3_init_out;
134344 rc = sqlite3Fts3InitTokenizer(pHash, "simple", &pTokenizer, pzErr);
134345 if( rc!=SQLITE_OK ) goto fts3_init_out;
134349 rc = fts3PrefixParameter(zPrefix, &nIndex, &aIndex);
134350 if( rc==SQLITE_ERROR ){
134354 if( rc!=SQLITE_OK ) goto fts3_init_out;
134366 rc = SQLITE_NOMEM;
134435 rc = SQLITE_ERROR;
134439 if( rc==SQLITE_OK && (zCompress==0)!=(zUncompress==0) ){
134441 rc = SQLITE_ERROR;
134444 p->zReadExprlist = fts3ReadExprList(p, zUncompress, &rc);
134445 p->zWriteExprlist = fts3WriteExprList(p, zCompress, &rc);
134446 if( rc!=SQLITE_OK ) goto fts3_init_out;
134452 rc = fts3CreateTables(p);
134464 fts3DatabasePageSize(&rc, p);
134468 fts3DeclareVtab(&rc, p);
134480 if( rc!=SQLITE_OK ){
134490 return rc;
134707 int rc = SQLITE_OK;
134713 rc = sqlite3_prepare_v2(p->db, zSql, -1, &pCsr->pStmt, 0);
134717 return rc;
134726 int rc = SQLITE_OK;
134730 rc = fts3CursorSeekStmt(pCsr, &pStmt);
134731 if( rc==SQLITE_OK ){
134737 rc = sqlite3_reset(pCsr->pStmt);
134738 if( rc==SQLITE_OK && ((Fts3Table *)pCsr->base.pVtab)->zContentTbl==0 ){
134742 rc = FTS_CORRUPT_VTAB;
134749 if( rc!=SQLITE_OK && pContext ){
134750 sqlite3_result_error_code(pContext, rc);
134752 return rc;
134778 int rc = SQLITE_OK; /* Return code */
134820 rc = FTS_CORRUPT_VTAB;
134828 rc = SQLITE_NOMEM;
134866 return rc;
134900 int rc = SQLITE_OK; /* Return code */
134906 rc = fts3ScanInteriorNode(zTerm, nTerm, zNode, nNode, piLeaf, piLeaf2);
134907 assert( !piLeaf2 || !piLeaf || rc!=SQLITE_OK || (*piLeaf<=*piLeaf2) );
134909 if( rc==SQLITE_OK && iHeight>1 ){
134914 rc = sqlite3Fts3ReadBlock(p, *piLeaf, &zBlob, &nBlob, 0);
134915 if( rc==SQLITE_OK ){
134916 rc = fts3SelectLeaf(p, zTerm, nTerm, zBlob, nBlob, piLeaf, 0);
134923 if( rc==SQLITE_OK ){
134924 rc = sqlite3Fts3ReadBlock(p, piLeaf?*piLeaf:*piLeaf2, &zBlob, &nBlob, 0);
134926 if( rc==SQLITE_OK ){
134927 rc = fts3SelectLeaf(p, zTerm, nTerm, zBlob, nBlob, piLeaf, piLeaf2);
134932 return rc;
135679 int rc = fts3DoclistOrMerge(p->bDescIdx,
135682 if( rc!=SQLITE_OK ){
135684 return rc;
135760 int rc = fts3DoclistOrMerge(p->bDescIdx, aMerge, nMerge,
135763 if( rc!=SQLITE_OK ){
135765 return rc;
135823 int rc = SQLITE_OK; /* Error code */
135835 rc = sqlite3Fts3SegReaderPending(p, iIndex, zTerm, nTerm, isPrefix||isScan, &pSeg);
135836 if( rc==SQLITE_OK && pSeg ){
135837 rc = fts3SegReaderCursorAppend(pCsr, pSeg);
135842 if( rc==SQLITE_OK ){
135843 rc = sqlite3Fts3AllSegdirs(p, iLangid, iIndex, iLevel, &pStmt);
135846 while( rc==SQLITE_OK && SQLITE_ROW==(rc = sqlite3_step(pStmt)) ){
135860 rc = fts3SelectLeaf(p, zTerm, nTerm, zRoot, nRoot, &iStartBlock, pi);
135861 if( rc!=SQLITE_OK ) goto finished;
135865 rc = sqlite3Fts3SegReaderNew(pCsr->nSegment+1,
135870 if( rc!=SQLITE_OK ) goto finished;
135871 rc = fts3SegReaderCursorAppend(pCsr, pSeg);
135877 if( rc==SQLITE_DONE ) rc = rc2;
135879 return rc;
135951 int rc = SQLITE_NOMEM; /* Return code */
135963 rc = sqlite3Fts3SegReaderCursor(p, pCsr->iLangid,
135973 rc = sqlite3Fts3SegReaderCursor(p, pCsr->iLangid,
135976 if( rc==SQLITE_OK ){
135977 rc = fts3SegReaderCursorAddZero(
135986 rc = sqlite3Fts3SegReaderCursor(p, pCsr->iLangid,
135994 return rc;
136016 int rc; /* Return code */
136032 rc = sqlite3Fts3SegReaderStart(p, pSegcsr, &filter);
136033 while( SQLITE_OK==rc
136034 && SQLITE_ROW==(rc = sqlite3Fts3SegReaderStep(p, pSegcsr))
136036 rc = fts3TermSelectMerge(p, &tsc, pSegcsr->aDoclist, pSegcsr->nDoclist);
136039 if( rc==SQLITE_OK ){
136040 rc = fts3TermSelectFinishMerge(p, &tsc);
136042 if( rc==SQLITE_OK ){
136054 return rc;
136093 int rc;
136098 rc = sqlite3_reset(pCsr->pStmt);
136101 rc = SQLITE_OK;
136104 rc = fts3EvalNext((Fts3Cursor *)pCursor);
136107 return rc;
136160 int rc = SQLITE_OK;
136217 rc = sqlite3Fts3ExprParse(p->pTokenizer, pCsr->iLangid,
136221 if( rc!=SQLITE_OK ){
136222 return rc;
136225 rc = fts3EvalStart(pCsr);
136227 if( rc!=SQLITE_OK ) return rc;
136250 rc = sqlite3_prepare_v2(p->db, zSql, -1, &pCsr->pStmt, 0);
136253 rc = SQLITE_NOMEM;
136256 rc = fts3CursorSeekStmt(pCsr, &pCsr->pStmt);
136257 if( rc==SQLITE_OK ){
136258 rc = sqlite3_bind_value(pCsr->pStmt, 1, pCons);
136261 if( rc!=SQLITE_OK ) return rc;
136302 int rc = SQLITE_OK; /* Return Code */
136323 rc = fts3CursorSeek(0, pCsr);
136325 if( rc==SQLITE_OK ){
136339 return rc;
136384 int rc = sqlite3Fts3PendingTermsFlush(p);
136386 if( rc==SQLITE_OK
136393 rc = sqlite3Fts3MaxLevel(p, &mxLevel);
136394 assert( rc==SQLITE_OK || mxLevel==0 );
136397 if( A>(int)nMinMerge ) rc = sqlite3Fts3Incrmerge(p, A, p->nAutoincrmerge);
136400 return rc;
136410 int rc = SQLITE_OK;
136416 rc = sqlite3_prepare_v2(p->db, zSql, -1, &pStmt, 0);
136417 if( rc==SQLITE_OK ){
136419 rc = sqlite3_finalize(pStmt);
136420 if( rc==SQLITE_OK ) p->bHasStat = bHasStat;
136424 rc = SQLITE_NOMEM;
136427 return rc;
136620 int rc; /* Return code */
136631 rc = sqlite3Fts3Optimize(p);
136633 switch( rc ){
136641 sqlite3_result_error_code(pContext, rc);
136711 int rc; /* Return Code */
136715 rc = fts3SetHasStat(p);
136724 if( rc==SQLITE_OK ){
136725 rc = sqlite3Fts3PendingTermsFlush(p);
136729 fts3DbExec(&rc, db,
136736 fts3DbExec(&rc, db,
136742 fts3DbExec(&rc, db,
136747 fts3DbExec(&rc, db,
136751 fts3DbExec(&rc, db,
136755 return rc;
136764 int rc = SQLITE_OK;
136770 rc = fts3SyncMethod(pVtab);
136772 return rc;
136868 int rc = SQLITE_OK;
136886 rc = sqlite3Fts3InitTerm(db);
136887 if( rc!=SQLITE_OK ) return rc;
136890 rc = sqlite3Fts3InitAux(db);
136891 if( rc!=SQLITE_OK ) return rc;
136899 rc = SQLITE_NOMEM;
136905 if( rc==SQLITE_OK ){
136916 rc = SQLITE_NOMEM;
136921 if( rc==SQLITE_OK ){
136922 rc = sqlite3Fts3ExprInitTestInterface(db);
136930 if( SQLITE_OK==rc
136932 && SQLITE_OK==(rc = sqlite3Fts3InitHashTable(db, pHash, "fts3_tokenizer"))
136934 && SQLITE_OK==(rc = sqlite3_overload_function(db, "snippet", -1))
136935 && SQLITE_OK==(rc = sqlite3_overload_function(db, "offsets", 1))
136936 && SQLITE_OK==(rc = sqlite3_overload_function(db, "matchinfo", 1))
136937 && SQLITE_OK==(rc = sqlite3_overload_function(db, "matchinfo", 2))
136938 && SQLITE_OK==(rc = sqlite3_overload_function(db, "optimize", 1))
136941 rc = sqlite3_create_module_v2(
136944 if(rc) return rc;
136945 rc = sqlite3_create_module_v2(
136948 if(rc) return rc;
136950 rc = sqlite3_create_module_v2(
136953 if( rc==SQLITE_OK ){
136954 rc = sqlite3_create_module_v2(
136958 if( rc==SQLITE_OK ){
136959 rc = sqlite3Fts3InitTok(db, (void *)pHash);
136961 return rc;
136966 assert( rc!=SQLITE_OK );
136971 return rc;
137003 int rc = fts3TermSegReaderCursor(pCsr,
137006 if( rc!=SQLITE_OK ){
137007 *pRc = rc;
137038 int rc = SQLITE_OK;
137077 rc = fts3DoclistPhraseMerge(
137086 return rc;
137101 int rc = SQLITE_OK;
137103 for(iToken=0; rc==SQLITE_OK && iToken<p->nToken; iToken++){
137110 rc = fts3TermSelect(pTab, pToken, p->iColumn, &nThis, &pThis);
137111 if( rc==SQLITE_OK ){
137112 rc = fts3EvalPhraseMergeToken(pTab, p, iToken, pThis, nThis);
137118 return rc;
137146 int rc = sqlite3Fts3DeferredTokenList(pDeferred, &pList, &nList);
137147 if( rc!=SQLITE_OK ) return rc;
137245 int rc = SQLITE_OK; /* Error code */
137273 for(i=0; rc==SQLITE_OK && i<p->nToken; i++){
137277 rc = sqlite3Fts3MsrIncrStart(pTab, pSegcsr, iCol, pToken->z, pToken->n);
137283 rc = fts3EvalPhraseLoad(pCsr, p);
137287 assert( rc!=SQLITE_OK || p->nToken<1 || p->aToken[0].pSegcsr==0 || p->bIncr );
137288 return rc;
137463 int rc = SQLITE_OK;
137478 rc = sqlite3Fts3MsrIncrNext(
137487 return rc;
137513 int rc = SQLITE_OK;
137523 rc = sqlite3Fts3MsrIncrNext(pTab, p->aToken[0].pSegcsr,
137541 for(i=0; rc==SQLITE_OK && i<p->nToken && bEof==0; i++){
137542 rc = incrPhraseTokenNext(pTab, p, i, &a[i], &bEof);
137548 assert( rc!=SQLITE_OK || (p->nToken>=1 && a[p->nToken-1].bIgnore==0) );
137549 assert( rc!=SQLITE_OK || bMaxSet );
137553 while( rc==SQLITE_OK && bEof==0
137556 rc = incrPhraseTokenNext(pTab, p, i, &a[i], &bEof);
137596 return rc;
137613 int rc = SQLITE_OK;
137618 rc = fts3EvalIncrPhraseNext(pCsr, p, pbEof);
137628 return rc;
137767 int rc;
137775 rc = sqlite3Fts3SelectDoctotal(p, &pStmt);
137776 if( rc!=SQLITE_OK ) return rc;
137793 rc = sqlite3_reset(pStmt);
137794 if( rc!=SQLITE_OK ) return rc;
137823 int rc = SQLITE_OK; /* Return code */
137852 rc = fts3EvalAverageDocsize(pCsr, &nDocSize);
137853 assert( rc!=SQLITE_OK || nDocSize>0 );
137878 for(ii=0; ii<nToken && rc==SQLITE_OK; ii++){
137898 rc = sqlite3Fts3DeferToken(pCsr, pToken, pTC->iCol);
137914 rc = fts3TermSelect(pTab, pToken, pTC->iCol, &nList, &pList);
137915 assert( rc==SQLITE_OK || pList==0 );
137916 if( rc==SQLITE_OK ){
137917 rc = fts3EvalPhraseMergeToken(
137921 if( rc==SQLITE_OK ){
137933 return rc;
137950 int rc = SQLITE_OK;
137955 fts3EvalAllocateReaders(pCsr, pCsr->pExpr, &nToken, &nOr, &rc);
137959 if( rc==SQLITE_OK && nToken>1 && pTab->bFts4 ){
137969 rc = SQLITE_NOMEM;
137975 fts3EvalTokenCosts(pCsr, 0, pCsr->pExpr, &pTC, &ppOr, &rc);
137979 if( rc==SQLITE_OK ){
137980 rc = fts3EvalSelectDeferred(pCsr, 0, aTC, nToken);
137981 for(ii=0; rc==SQLITE_OK && ii<nOr; ii++){
137982 rc = fts3EvalSelectDeferred(pCsr, apOr[ii], aTC, nToken);
137991 fts3EvalStartReaders(pCsr, pCsr->pExpr, &rc);
137992 return rc;
138442 int rc = *pRc;
138444 if( rc==SQLITE_OK ){
138453 rc = fts3CursorSeek(0, pCsr);
138454 if( rc==SQLITE_OK ){
138455 rc = sqlite3Fts3CacheDeferredDoclists(pCsr);
138458 bMiss = (0==fts3EvalTestExpr(pCsr, pCsr->pExpr, &rc));
138462 *pRc = rc;
138464 return (rc==SQLITE_OK && bMiss);
138472 int rc = SQLITE_OK; /* Return Code */
138483 fts3EvalNextRow(pCsr, pExpr, &rc);
138488 }while( pCsr->isEof==0 && fts3EvalTestDeferredAndNear(pCsr, &rc) );
138493 if( rc==SQLITE_OK && (
138500 return rc;
138602 int rc = SQLITE_OK; /* Return code */
138632 fts3EvalRestart(pCsr, pRoot, &rc);
138634 while( pCsr->isEof==0 && rc==SQLITE_OK ){
138642 fts3EvalNextRow(pCsr, pRoot, &rc);
138649 && fts3EvalTestDeferredAndNear(pCsr, &rc)
138652 if( rc==SQLITE_OK && pCsr->isEof==0 ){
138667 ** do {...} while( pRoot->iDocid<iDocid && rc==SQLITE_OK );
138669 fts3EvalRestart(pCsr, pRoot, &rc);
138671 fts3EvalNextRow(pCsr, pRoot, &rc);
138673 }while( pRoot->iDocid!=iDocid && rc==SQLITE_OK );
138674 fts3EvalTestDeferredAndNear(pCsr, &rc);
138677 return rc;
138716 int rc = SQLITE_OK;
138726 rc = fts3EvalGatherStats(pCsr, pExpr);
138727 if( rc==SQLITE_OK ){
138736 return rc;
138781 int rc = SQLITE_OK;
138807 fts3EvalRestart(pCsr, pNear, &rc);
138808 while( rc==SQLITE_OK && !pNear->bEof ){
138809 fts3EvalNextRow(pCsr, pNear, &rc);
138812 assert( rc!=SQLITE_OK || pPhrase->bIncr==0 );
138815 while( rc==SQLITE_OK && !pNear->bEof ){
138816 fts3EvalNextRow(pCsr, pNear, &rc);
138819 if( rc!=SQLITE_OK ) return rc;
138988 int rc; /* value returned by declare_vtab() */
139015 rc = sqlite3_declare_vtab(db, FTS3_AUX_SCHEMA);
139016 if( rc!=SQLITE_OK ) return rc;
139188 int rc;
139197 rc = sqlite3Fts3SegReaderStep(pFts3, &pCsr->csr);
139198 if( rc==SQLITE_ROW ){
139269 rc = SQLITE_OK;
139273 return rc;
139288 int rc;
139360 rc = sqlite3Fts3SegReaderCursor(pFts3, iLangVal, 0, FTS3_SEGCURSOR_ALL,
139363 if( rc==SQLITE_OK ){
139364 rc = sqlite3Fts3SegReaderStart(pFts3, &pCsr->csr, &pCsr->filter);
139367 if( rc==SQLITE_OK ) rc = fts3auxNextMethod(pCursor);
139368 return rc;
139462 int rc; /* Return code */
139464 rc = sqlite3_create_module(db, "fts4aux", &fts3aux_module, 0);
139465 return rc;
139610 int rc;
139612 rc = pModule->xOpen(pTokenizer, z, n, &pCsr);
139613 assert( rc==SQLITE_OK || pCsr==0 );
139614 if( rc==SQLITE_OK ){
139617 rc = pModule->xLanguageid(pCsr, iLangid);
139618 if( rc!=SQLITE_OK ){
139625 return rc;
139655 int rc;
139667 rc = sqlite3Fts3OpenTokenizer(pTokenizer, pParse->iLangid, z, i, &pCursor);
139668 if( rc==SQLITE_OK ){
139673 rc = pModule->xNext(pCursor, &zToken, &nToken, &iStart, &iEnd, &iPosition);
139674 if( rc==SQLITE_OK ){
139678 rc = SQLITE_NOMEM;
139709 }else if( i && rc==SQLITE_DONE ){
139710 rc = SQLITE_OK;
139717 return rc;
139752 int rc;
139776 ** The second pass, in the block that begins "if( rc==SQLITE_DONE )" below,
139780 rc = sqlite3Fts3OpenTokenizer(
139782 if( rc==SQLITE_OK ){
139784 for(ii=0; rc==SQLITE_OK; ii++){
139787 rc = pModule->xNext(pCursor, &zByte, &nByte, &iBegin, &iEnd, &iPos);
139788 if( rc==SQLITE_OK ){
139815 if( rc==SQLITE_DONE ){
139839 rc = SQLITE_OK;
139843 return rc;
139883 int rc;
139969 rc = fts3ExprParse(pParse, zInput+1, nInput-1, ppExpr, &nConsumed);
139970 if( rc==SQLITE_OK && !*ppExpr ){ rc = SQLITE_DONE; }
139972 return rc;
140005 rc = getNextToken(pParse, iCol, &z[iColLen], n-iColLen, ppExpr, pnConsumed);
140007 return rc;
140092 int rc = SQLITE_OK;
140095 while( rc==SQLITE_OK ){
140099 rc = getNextNode(pParse, zIn, nIn, &p, &nByte);
140100 assert( nByte>0 || (rc!=SQLITE_OK && p==0) );
140101 if( rc==SQLITE_OK ){
140112 rc = SQLITE_NOMEM;
140135 rc = SQLITE_ERROR;
140146 rc = SQLITE_NOMEM;
140168 rc = SQLITE_ERROR;
140189 assert( rc!=SQLITE_OK || (nByte>0 && nByte<=nIn) );
140194 if( rc==SQLITE_DONE && pRet && isRequirePhrase ){
140195 rc = SQLITE_ERROR;
140198 if( rc==SQLITE_DONE ){
140199 rc = SQLITE_OK;
140202 rc = SQLITE_ERROR;
140217 if( rc!=SQLITE_OK ){
140223 return rc;
140231 int rc = SQLITE_OK;
140234 rc = SQLITE_TOOBIG;
140236 rc = fts3ExprCheckDepth(p->pLeft, nMaxDepth-1);
140237 if( rc==SQLITE_OK ){
140238 rc = fts3ExprCheckDepth(p->pRight, nMaxDepth-1);
140242 return rc;
140257 int rc = SQLITE_OK; /* Return code */
140263 rc = SQLITE_ERROR;
140266 if( rc==SQLITE_OK && (eType==FTSQUERY_AND || eType==FTSQUERY_OR) ){
140270 rc = SQLITE_NOMEM;
140275 if( rc==SQLITE_OK ){
140297 rc = fts3ExprBalance(&p, nMaxDepth-1);
140298 if( rc!=SQLITE_OK ) break;
140319 rc = SQLITE_TOOBIG;
140345 if( rc==SQLITE_OK ){
140385 if( rc!=SQLITE_OK ){
140390 return rc;
140415 int rc;
140432 rc = fts3ExprParse(&sParse, z, n, ppExpr, &nParsed);
140433 assert( rc==SQLITE_OK || *ppExpr==0 );
140436 if( rc==SQLITE_OK && sParse.nNest ){
140437 rc = SQLITE_ERROR;
140440 return rc;
140478 int rc = fts3ExprParseUnbalanced(
140484 if( rc==SQLITE_OK && *ppExpr ){
140485 rc = fts3ExprBalance(ppExpr, SQLITE_FTS3_MAX_EXPR_DEPTH);
140486 if( rc==SQLITE_OK ){
140487 rc = fts3ExprCheckDepth(*ppExpr, SQLITE_FTS3_MAX_EXPR_DEPTH);
140491 if( rc!=SQLITE_OK ){
140494 if( rc==SQLITE_TOOBIG ){
140499 rc = SQLITE_ERROR;
140500 }else if( rc==SQLITE_ERROR ){
140505 return rc;
140563 int rc;
140568 rc = sqlite3_prepare_v2(db, zSql, -1, &pStmt, 0);
140569 if( rc!=SQLITE_OK ){
140570 return rc;
140657 int rc;
140674 rc = queryTestTokenizer(db,
140676 if( rc==SQLITE_NOMEM ){
140684 rc = pModule->xCreate(0, 0, &pTokenizer);
140685 assert( rc==SQLITE_NOMEM || rc==SQLITE_OK );
140686 if( rc==SQLITE_NOMEM ){
140706 rc = sqlite3Fts3ExprParse(
140709 assert( rc==SQLITE_OK || pExpr==0 );
140712 rc = fts3ExprParseUnbalanced(
140717 if( rc!=SQLITE_OK && rc!=SQLITE_NOMEM ){
140720 }else if( rc==SQLITE_NOMEM || !(zBuf = exprToString(pExpr, 0)) ){
140731 rc = pModule->xDestroy(pTokenizer);
140741 int rc = sqlite3_create_function(
140744 if( rc==SQLITE_OK ){
140745 rc = sqlite3_create_function(db, "fts3_exprtest_rebalance",
140749 return rc;
141956 int rc;
141978 rc = SQLITE_ERROR;
141997 rc = m->xCreate(iArg, aArg, ppTok);
141998 assert( rc!=SQLITE_OK || *ppTok );
141999 if( rc!=SQLITE_OK ){
142008 return rc;
142139 int rc;
142143 rc = sqlite3_prepare_v2(db, zSql, -1, &pStmt, 0);
142144 if( rc!=SQLITE_OK ){
142145 return rc;
142161 int rc;
142166 rc = sqlite3_prepare_v2(db, zSql, -1, &pStmt, 0);
142167 if( rc!=SQLITE_OK ){
142168 return rc;
142206 int rc;
142216 rc = queryTokenizer(db, "simple", &p2);
142217 assert( rc==SQLITE_OK );
142219 rc = queryTokenizer(db, "nosuchtokenizer", &p2);
142220 assert( rc==SQLITE_ERROR );
142225 rc = registerTokenizer(db, "nosuchtokenizer", p1);
142226 assert( rc==SQLITE_OK );
142227 rc = queryTokenizer(db, "nosuchtokenizer", &p2);
142228 assert( rc==SQLITE_OK );
142258 int rc = SQLITE_OK;
142269 rc = SQLITE_NOMEM;
142273 if( SQLITE_OK==rc ){
142274 rc = sqlite3_create_function(db, zName, 1, any, p, scalarFunc, 0, 0);
142276 if( SQLITE_OK==rc ){
142277 rc = sqlite3_create_function(db, zName, 2, any, p, scalarFunc, 0, 0);
142280 if( SQLITE_OK==rc ){
142281 rc = sqlite3_create_function(db, zTest, -1, any, p, testFunc, 0, 0);
142283 if( SQLITE_OK==rc ){
142284 rc = sqlite3_create_function(db, zTest2, 0, any, pdb, intTestFunc, 0, 0);
142293 return rc;
142646 int rc = SQLITE_OK; /* Return code */
142660 rc = SQLITE_NOMEM;
142673 return rc;
142702 int rc;
142706 rc = sqlite3_declare_vtab(db, FTS3_TOK_SCHEMA);
142707 if( rc!=SQLITE_OK ) return rc;
142710 rc = fts3tokDequoteArray(nDequote, &argv[3], &azDequote);
142712 if( rc==SQLITE_OK ){
142719 rc = fts3tokQueryTokenizer((Fts3Hash*)pHash, zModule, &pMod, pzErr);
142722 assert( (rc==SQLITE_OK)==(pMod!=0) );
142723 if( rc==SQLITE_OK ){
142725 rc = pMod->xCreate((nDequote>1 ? nDequote-1 : 0), azArg, &pTok);
142728 if( rc==SQLITE_OK ){
142731 rc = SQLITE_NOMEM;
142735 if( rc==SQLITE_OK ){
142747 return rc;
142846 int rc; /* Return code */
142849 rc = pTab->pMod->xNext(pCsr->pCsr,
142854 if( rc!=SQLITE_OK ){
142856 if( rc==SQLITE_DONE ) rc = SQLITE_OK;
142859 return rc;
142872 int rc = SQLITE_ERROR;
142884 rc = SQLITE_NOMEM;
142888 rc = pTab->pMod->xOpen(pTab->pTok, pCsr->zInput, nByte, &pCsr->pCsr);
142889 if( rc==SQLITE_OK ){
142895 if( rc!=SQLITE_OK ) return rc;
142981 int rc; /* Return code */
142983 rc = sqlite3_create_module(db, "fts3tokenize", &fts3tok_module, (void*)pHash);
142984 return rc;
143379 int rc = SQLITE_OK;
143396 rc = SQLITE_NOMEM;
143398 rc = sqlite3_prepare_v2(p->db, zSql, -1, &pStmt, NULL);
143400 assert( rc==SQLITE_OK || pStmt==0 );
143407 for(i=0; rc==SQLITE_OK && i<nParam; i++){
143408 rc = sqlite3_bind_value(pStmt, i+1, apVal[i]);
143412 return rc;
143422 int rc; /* Return code */
143424 rc = fts3SqlStmt(pTab, SQL_SELECT_DOCSIZE, &pStmt, 0);
143425 if( rc==SQLITE_OK ){
143427 rc = sqlite3_step(pStmt);
143428 if( rc!=SQLITE_ROW || sqlite3_column_type(pStmt, 0)!=SQLITE_BLOB ){
143429 rc = sqlite3_reset(pStmt);
143430 if( rc==SQLITE_OK ) rc = FTS_CORRUPT_VTAB;
143433 rc = SQLITE_OK;
143438 return rc;
143446 int rc;
143447 rc = fts3SqlStmt(pTab, SQL_SELECT_STAT, &pStmt, 0);
143448 if( rc==SQLITE_OK ){
143453 rc = sqlite3_reset(pStmt);
143454 if( rc==SQLITE_OK ) rc = FTS_CORRUPT_VTAB;
143459 return rc;
143485 int rc;
143487 rc = fts3SqlStmt(p, eStmt, &pStmt, apVal);
143488 if( rc==SQLITE_OK ){
143490 rc = sqlite3_reset(pStmt);
143492 *pRC = rc;
143511 int rc = SQLITE_OK;
143515 rc = fts3SqlStmt(p, SQL_DELETE_SEGDIR_LEVEL, &pStmt, 0);
143516 if( rc==SQLITE_OK ){
143519 rc = sqlite3_reset(pStmt);
143523 return rc;
143588 int rc;
143597 rc = fts3SqlStmt(p, SQL_SELECT_LEVEL_RANGE, &pStmt, 0);
143598 if( rc==SQLITE_OK ){
143606 rc = fts3SqlStmt(p, SQL_SELECT_LEVEL, &pStmt, 0);
143607 if( rc==SQLITE_OK ){
143612 return rc;
143680 int rc = SQLITE_OK;
143691 if( SQLITE_OK!=(rc = fts3PendingListAppendVarint(&p, iDelta)) ){
143699 if( SQLITE_OK!=(rc = fts3PendingListAppendVarint(&p, 1))
143700 || SQLITE_OK!=(rc = fts3PendingListAppendVarint(&p, iCol))
143709 rc = fts3PendingListAppendVarint(&p, 2+iPos-p->iLastPos);
143710 if( rc==SQLITE_OK ){
143716 *pRc = rc;
143743 int rc = SQLITE_OK;
143749 if( fts3PendingListAppend(&pList, p->iPrevDocid, iCol, iPos, &rc) ){
143756 rc = SQLITE_NOMEM;
143759 if( rc==SQLITE_OK ){
143762 return rc;
143779 int rc;
143804 rc = sqlite3Fts3OpenTokenizer(pTokenizer, iLangid, zText, -1, &pCsr);
143805 if( rc!=SQLITE_OK ){
143806 return rc;
143810 while( SQLITE_OK==rc
143811 && SQLITE_OK==(rc = xNext(pCsr, &zToken, &nToken, &iStart, &iEnd, &iPos))
143820 rc = SQLITE_ERROR;
143825 rc = fts3PendingTermsAddOne(
143831 for(i=1; rc==SQLITE_OK && i<p->nIndex; i++){
143834 rc = fts3PendingTermsAddOne(
143842 return (rc==SQLITE_DONE ? SQLITE_OK : rc);
143867 int rc = sqlite3Fts3PendingTermsFlush(p);
143868 if( rc!=SQLITE_OK ) return rc;
143911 int rc = fts3PendingTermsAdd(p, iLangid, zText, iCol, &aSz[iCol]);
143912 if( rc!=SQLITE_OK ){
143913 return rc;
143940 int rc; /* Return code */
143963 rc = fts3SqlStmt(p, SQL_CONTENT_INSERT, &pContentInsert, &apVal[1]);
143964 if( rc==SQLITE_OK && p->zLanguageid ){
143965 rc = sqlite3_bind_int(
143970 if( rc!=SQLITE_OK ) return rc;
143989 rc
143990 if( rc!=SQLITE_OK ) return rc;
143997 rc = sqlite3_reset(pContentInsert);
144000 return rc;
144010 int rc = SQLITE_OK; /* Return code */
144018 if( bContent ) fts3SqlExec(&rc, p, SQL_DELETE_ALL_CONTENT, 0);
144019 fts3SqlExec(&rc, p, SQL_DELETE_ALL_SEGMENTS, 0);
144020 fts3SqlExec(&rc, p, SQL_DELETE_ALL_SEGDIR, 0);
144022 fts3SqlExec(&rc, p, SQL_DELETE_ALL_DOCSIZE, 0);
144025 fts3SqlExec(&rc, p, SQL_DELETE_ALL_STAT, 0);
144027 return rc;
144051 int rc;
144056 rc = fts3SqlStmt(p, SQL_SELECT_CONTENT_BY_ROWID, &pSelect, &pRowid);
144057 if( rc==SQLITE_OK ){
144061 rc = fts3PendingTermsDocid(p, iLangid, sqlite3_column_int64(pSelect, 0));
144062 for(i=1; rc==SQLITE_OK && i<=p->nColumn; i++){
144066 rc = fts3PendingTermsAdd(p, iLangid, zText, -1, &aSz[iCol]);
144070 if( rc!=SQLITE_OK ){
144072 *pRC = rc;
144077 rc = sqlite3_reset(pSelect);
144081 *pRC = rc;
144112 int rc; /* Return Code */
144120 rc = fts3SqlStmt(p, SQL_NEXT_SEGMENT_INDEX, &pNextIdx, 0);
144121 if( rc==SQLITE_OK ){
144128 rc = sqlite3_reset(pNextIdx);
144131 if( rc==SQLITE_OK ){
144139 rc = fts3SegmentMerge(p, iLangid, iIndex, iLevel);
144146 return rc;
144183 int rc; /* Return code */
144189 rc = sqlite3_blob_reopen(p->pSegments, iBlockid);
144195 rc = sqlite3_blob_open(
144200 if( rc==SQLITE_OK ){
144206 rc = SQLITE_NOMEM;
144212 rc = sqlite3_blob_read(p->pSegments, aByte, nByte, 0);
144214 if( rc!=SQLITE_OK ){
144223 return rc;
144237 int rc; /* Return code */
144240 rc = sqlite3_blob_read(
144247 if( rc==SQLITE_OK ){
144256 return rc;
144260 int rc = SQLITE_OK;
144264 while( pReader->pBlob && rc==SQLITE_OK
144267 rc = fts3SegReaderIncrRead(pReader);
144269 return rc;
144294 int rc; /* Return code of various sub-routines */
144332 rc = sqlite3Fts3ReadBlock(
144336 if( rc!=SQLITE_OK ) return rc;
144347 rc = fts3SegReaderRequire(pReader, pNext, FTS3_VARINT_MAX*2);
144348 if( rc!=SQLITE_OK ) return rc;
144370 rc = fts3SegReaderRequire(pReader, pNext, nSuffix+FTS3_VARINT_MAX);
144371 if( rc!=SQLITE_OK ) return rc;
144397 int rc = SQLITE_OK;
144409 rc = fts3SegReaderRequire(pReader, pReader->aDoclist, FTS3_VARINT_MAX);
144410 if( rc==SQLITE_OK ){
144415 return rc;
144434 int rc = SQLITE_OK;
144476 rc = fts3SegReaderIncrRead(pReader);
144477 if( rc!=SQLITE_OK ) return rc;
144500 rc = fts3SegReaderRequire(pReader, p, FTS3_VARINT_MAX);
144501 if( rc==SQLITE_OK ){
144525 int rc = SQLITE_OK;
144531 for(ii=0; rc==SQLITE_OK && ii<pMsr->nSegment; ii++){
144539 rc = sqlite3Fts3ReadBlock(p, jj, 0, &nBlob, 0);
144540 if( rc!=SQLITE_OK ) break;
144548 return rc;
144665 int rc = SQLITE_OK; /* Return Code */
144683 rc = SQLITE_NOMEM;
144721 rc = SQLITE_NOMEM;
144734 return rc;
144750 int rc;
144754 rc = memcmp(pLhs->zTerm, pRhs->zTerm, pLhs->nTerm);
144756 rc = memcmp(pLhs->zTerm, pRhs->zTerm, pRhs->nTerm);
144758 if( rc==0 ){
144759 rc = rc2;
144762 rc = (pLhs->aNode==0) - (pRhs->aNode==0);
144764 if( rc==0 ){
144765 rc = pRhs->iIdx - pLhs->iIdx;
144767 assert( rc!=0 );
144768 return rc;
144783 int rc = (pLhs->pOffsetList==0)-(pRhs->pOffsetList==0);
144784 if( rc==0 ){
144786 rc = pRhs->iIdx - pLhs->iIdx;
144788 rc = (pLhs->iDocid > pRhs->iDocid) ? 1 : -1;
144792 return rc;
144795 int rc = (pLhs->pOffsetList==0)-(pRhs->pOffsetList==0);
144796 if( rc==0 ){
144798 rc = pRhs->iIdx - pLhs->iIdx;
144800 rc = (pLhs->iDocid < pRhs->iDocid) ? 1 : -1;
144804 return rc;
144880 int rc = fts3SqlStmt(p, SQL_INSERT_SEGMENTS, &pStmt, 0);
144881 if( rc==SQLITE_OK ){
144885 rc = sqlite3_reset(pStmt);
144887 return rc;
144896 int rc;
144900 rc = fts3SqlStmt(p, SQL_SELECT_MXLEVEL, &pStmt, 0);
144901 if( rc==SQLITE_OK ){
144905 rc = sqlite3_reset(pStmt);
144908 return rc;
144926 int rc = fts3SqlStmt(p, SQL_INSERT_SEGDIR, &pStmt, 0);
144927 if( rc==SQLITE_OK ){
144941 rc = sqlite3_reset(pStmt);
144943 return rc;
144978 int rc;
145059 rc = fts3NodeAddTerm(p, &pParent, isCopyTerm, zTerm, nTerm);
145071 rc = fts3NodeAddTerm(p, &pNew, isCopyTerm, zTerm, nTerm);
145075 return rc;
145117 int rc = SQLITE_OK;
145129 for(pIter=pTree->pLeftmost; pIter && rc==SQLITE_OK; pIter=pIter->pRight){
145133 rc = fts3WriteSegment(p, iNextFree, &pIter->aData[nStart], nWrite);
145137 if( rc==SQLITE_OK ){
145139 rc = fts3NodeWrite(
145145 return rc;
145192 int rc;
145207 rc = fts3SqlStmt(p, SQL_NEXT_SEGMENTS_ID, &pStmt, 0);
145208 if( rc!=SQLITE_OK ) return rc;
145213 rc = sqlite3_reset(pStmt);
145214 if( rc!=SQLITE_OK ) return rc;
145229 int rc;
145232 rc = fts3WriteSegment(p, pWriter->iFree++, pWriter->aData, nData);
145233 if( rc!=SQLITE_OK ) return rc;
145249 rc = fts3NodeAddTerm(p, &pWriter->pTree, isCopyTerm, zTerm, nPrefix+1);
145250 if( rc!=SQLITE_OK ) return rc;
145324 int rc; /* Return code */
145332 rc = fts3WriteSegment(p, pWriter->iFree++, pWriter->aData, pWriter->nData);
145333 if( rc==SQLITE_OK ){
145334 rc = fts3NodeWrite(p, pWriter->pTree, 1,
145337 if( rc==SQLITE_OK ){
145338 rc = fts3WriteSegdir(p, iLevel, iIdx,
145343 rc = fts3WriteSegdir(p, iLevel, iIdx,
145347 return rc;
145375 int rc;
145379 rc = SQLITE_OK;
145381 rc = fts3SqlStmt(p, SQL_IS_EMPTY, &pStmt, &pRowid);
145382 if( rc==SQLITE_OK ){
145386 rc = sqlite3_reset(pStmt);
145389 return rc;
145407 int rc;
145416 rc = fts3SqlStmt(p, SQL_SELECT_SEGDIR_MAX_LEVEL, &pStmt, 0);
145417 if( rc!=SQLITE_OK ) return rc;
145445 int rc = fts3SqlStmt(p, SQL_SELECT_SEGDIR_MAX_LEVEL, &pStmt, 0);
145446 if( rc!=SQLITE_OK ) return rc;
145468 int rc = SQLITE_OK; /* Return code */
145471 rc = fts3SqlStmt(p, SQL_DELETE_SEGMENTS_RANGE, &pDelete, 0);
145472 if( rc==SQLITE_OK ){
145476 rc = sqlite3_reset(pDelete);
145479 return rc;
145504 int rc = SQLITE_OK; /* Return Code */
145508 for(i=0; rc==SQLITE_OK && i<nReader; i++){
145509 rc = fts3DeleteSegment(p, apSegment[i]);
145511 if( rc!=SQLITE_OK ){
145512 return rc;
145517 rc = fts3SqlStmt(p, SQL_DELETE_SEGDIR_RANGE, &pDelete, 0);
145518 if( rc==SQLITE_OK ){
145525 rc = fts3SqlStmt(p, SQL_DELETE_SEGDIR_LEVEL, &pDelete, 0);
145526 if( rc==SQLITE_OK ){
145533 if( rc==SQLITE_OK ){
145535 rc = sqlite3_reset(pDelete);
145538 return rc;
145641 int rc;
145647 rc = fts3SegReaderNextDocid(p, apSegment[0], &pList, &nList);
145649 while( rc==SQLITE_OK
145654 rc = fts3SegReaderNextDocid(p, apSegment[j], 0, 0);
145657 if( rc!=SQLITE_OK ) return rc;
145661 rc = fts3MsrBufferData(pMsr, pList, nList+1);
145662 if( rc!=SQLITE_OK ) return rc;
145702 int rc = fts3SegReaderNext(p, pSeg, 0);
145703 if( rc!=SQLITE_OK ) return rc;
145732 int rc;
145742 rc = fts3SegReaderStart(p, pCsr, zTerm, nTerm);
145743 if( rc!=SQLITE_OK ) return rc;
145756 rc = fts3SegReaderFirstDocid(p, pCsr->apSegment[i]);
145757 if( rc!=SQLITE_OK ) return rc;
145803 int rc = SQLITE_OK;
145833 rc = fts3SegReaderNext(p, pSeg, 0);
145835 if( rc!=SQLITE_OK ) return rc;
145841 assert( rc==SQLITE_OK );
145880 rc = fts3MsrBufferData(pCsr, apSegment[0]->aDoclist, pCsr->nDoclist);
145885 if( rc==SQLITE_OK ) rc = SQLITE_ROW;
145967 rc = SQLITE_ROW;
145971 }while( rc==SQLITE_OK );
145973 return rc;
146042 int rc = SQLITE_OK;
146045 rc = fts3SqlStmt(p, SQL_SELECT_LEVEL_RANGE2, &pRange, 0);
146047 if( rc==SQLITE_OK ){
146073 rc = sqlite3_reset(pRange);
146080 if( rc==SQLITE_OK ){
146081 rc = fts3SqlStmt(p, SQL_UPDATE_LEVEL_IDX, &pUpdate1, 0);
146083 if( rc==SQLITE_OK ){
146084 rc = fts3SqlStmt(p, SQL_UPDATE_LEVEL, &pUpdate2, 0);
146087 if( rc==SQLITE_OK ){
146104 rc = sqlite3_reset(pUpdate1);
146105 if( rc!=SQLITE_OK ){
146111 if( rc==SQLITE_OK ){
146112 rc = sqlite3_reset(pRange);
146116 if( rc==SQLITE_OK ){
146119 rc = sqlite3_reset(pUpdate2);
146125 return rc;
146145 int rc; /* Return code */
146161 rc = sqlite3Fts3SegReaderCursor(p, iLangid, iIndex, iLevel, 0, 0, 1, 0, &csr);
146162 if( rc!=SQLITE_OK || csr.nSegment==0 ) goto finished;
146165 rc = fts3SegmentMaxLevel(p, iLangid, iIndex, &iMaxLevel);
146166 if( rc!=SQLITE_OK ) goto finished;
146175 rc = SQLITE_DONE;
146188 rc = fts3AllocateSegdirIdx(p, iLangid, iIndex, iLevel+1, &iIdx);
146191 if( rc!=SQLITE_OK ) goto finished;
146201 rc = sqlite3Fts3SegReaderStart(p, &csr, &filter);
146202 while( SQLITE_OK==rc ){
146203 rc = sqlite3Fts3SegReaderStep(p, &csr);
146204 if( rc!=SQLITE_ROW ) break;
146205 rc = fts3SegWriterAdd(p, &pWriter, 1,
146208 if( rc!=SQLITE_OK ) goto finished;
146212 rc = fts3DeleteSegdir(
146215 if( rc!=SQLITE_OK ) goto finished;
146218 rc = fts3SegWriterFlush(p, pWriter, iNewLevel, iIdx);
146219 if( rc==SQLITE_OK ){
146221 rc = fts3PromoteSegments(p, iNewLevel, pWriter->nLeafData);
146229 return rc;
146237 int rc = SQLITE_OK;
146240 for(i=0; rc==SQLITE_OK && i<p->nIndex; i++){
146241 rc = fts3SegmentMerge(p, p->iPrevLangid, i, FTS3_SEGCURSOR_PENDING);
146242 if( rc==SQLITE_DONE ) rc = SQLITE_OK;
146249 if( rc==SQLITE_OK && p->bHasStat
146253 rc = fts3SqlStmt(p, SQL_SELECT_STAT, &pStmt, 0);
146254 if( rc==SQLITE_OK ){
146256 rc = sqlite3_step(pStmt);
146257 if( rc==SQLITE_ROW ){
146260 }else if( rc==SQLITE_DONE ){
146263 rc = sqlite3_reset(pStmt);
146266 return rc;
146317 int rc; /* Result code from subfunctions */
146326 rc = fts3SqlStmt(p, SQL_REPLACE_DOCSIZE, &pStmt, 0);
146327 if( rc ){
146329 *pRC = rc;
146365 int rc; /* Result code from subfunctions */
146376 rc = fts3SqlStmt(p, SQL_SELECT_STAT, &pStmt, 0);
146377 if( rc ){
146379 *pRC = rc;
146390 rc = sqlite3_reset(pStmt);
146391 if( rc!=SQLITE_OK ){
146393 *pRC = rc;
146411 rc = fts3SqlStmt(p, SQL_REPLACE_STAT, &pStmt, 0);
146412 if( rc ){
146414 *pRC = rc;
146430 int rc;
146433 rc = fts3SqlStmt(p, SQL_SELECT_ALL_LANGID, &pAllLangid, 0);
146434 if( rc==SQLITE_OK ){
146441 for(i=0; rc==SQLITE_OK && i<p->nIndex; i++){
146442 rc = fts3SegmentMerge(p, iLangid, i, FTS3_SEGCURSOR_ALL);
146443 if( rc==SQLITE_DONE ){
146445 rc = SQLITE_OK;
146450 if( rc==SQLITE_OK ) rc = rc2;
146456 return (rc==SQLITE_OK && bReturnDone && bSeenDone) ? SQLITE_DONE : rc;
146470 int rc; /* Return Code */
146472 rc = fts3DeleteAll(p, 0);
146473 if( rc==SQLITE_OK ){
146483 rc = SQLITE_NOMEM;
146485 rc = sqlite3_prepare_v2(p->db, zSql, -1, &pStmt, 0);
146489 if( rc==SQLITE_OK ){
146493 rc = SQLITE_NOMEM;
146501 while( rc==SQLITE_OK && SQLITE_ROW==sqlite3_step(pStmt) ){
146504 rc
146506 for(iCol=0; rc==SQLITE_OK && iCol<p->nColumn; iCol++){
146509 rc = fts3PendingTermsAdd(p, iLangid, z, iCol, &aSz[iCol]);
146514 fts3InsertDocsize(&rc, p, aSz);
146516 if( rc!=SQLITE_OK ){
146527 fts3UpdateDocTotals(&rc, p, aSzIns, aSzDel, nEntry);
146533 if( rc==SQLITE_OK ){
146534 rc = rc2;
146539 return rc;
146555 int rc; /* Return Code */
146565 rc = SQLITE_NOMEM;
146568 rc = fts3SqlStmt(p, SQL_SELECT_LEVEL, &pStmt, 0);
146570 if( rc==SQLITE_OK ){
146575 for(i=0; rc==SQLITE_OK && sqlite3_step(pStmt)==SQLITE_ROW && i<nSeg; i++){
146576 rc = sqlite3Fts3SegReaderNew(i, 0,
146587 if( rc==SQLITE_OK ) rc = rc2;
146590 return rc;
146692 int rc = SQLITE_OK; /* Return code */
146705 blobGrowBuffer(&p->term, nPrefix+nSuffix, &rc);
146706 if( rc==SQLITE_OK ){
146720 return rc;
146776 int rc = SQLITE_OK;
146797 blobGrowBuffer(pBlk, p->nNodeSize, &rc);
146798 if( rc==SQLITE_OK ){
146803 blobGrowBuffer(pBlk, pBlk->n + nSpace, &rc);
146804 blobGrowBuffer(&pNode->key, nTerm, &rc);
146806 if( rc==SQLITE_OK ){
146821 rc = fts3WriteSegment(p, pNode->iBlock, pNode->block.a, pNode->block.n);
146832 if( rc!=SQLITE_OK || iNextPtr==0 ) return rc;
146872 int rc = SQLITE_OK; /* Return code */
146882 blobGrowBuffer(pPrev, nTerm, &rc);
146883 if( rc!=SQLITE_OK ) return rc;
146923 int rc = SQLITE_OK; /* Return code */
146941 rc = fts3WriteSegment(p, pLeaf->iBlock, pLeaf->block.a, pLeaf->block.n);
146956 if( rc==SQLITE_OK ){
146957 rc = fts3IncrmergePush(p, pWriter, zTerm, nPrefix+1);
146972 blobGrowBuffer(&pLeaf->block, pLeaf->block.n + nSpace, &rc);
146973 if( rc==SQLITE_OK ){
146978 rc = fts3AppendToNode(
146983 return rc;
147007 int rc = *pRc; /* Error code */
147042 blobGrowBuffer(pBlock, 1 + FTS3_VARINT_MAX, &rc);
147043 if( rc==SQLITE_OK ){
147056 if( pNode->block.n>0 && rc==SQLITE_OK ){
147057 rc = fts3WriteSegment(p, pNode->iBlock, pNode->block.a, pNode->block.n);
147064 if( rc==SQLITE_OK ){
147065 rc = fts3WriteSegdir(p,
147078 *pRc = rc;
147118 int rc; /* Return code */
147120 rc = fts3SqlStmt(p, SQL_SEGMENT_IS_APPENDABLE, &pCheck, 0);
147121 if( rc==SQLITE_OK ){
147124 rc = sqlite3_reset(pCheck);
147128 return rc;
147154 int rc; /* Return code */
147157 rc = fts3SqlStmt(p, SQL_SELECT_SEGDIR, &pSelect, 0);
147158 if( rc==SQLITE_OK ){
147185 rc = fts3IsAppendable(p, iEnd, &bAppendable);
147188 if( rc==SQLITE_OK && bAppendable ){
147192 rc = sqlite3Fts3ReadBlock(p, iLeafEnd, &aLeaf, &nLeaf, 0);
147193 if( rc==SQLITE_OK ){
147195 for(rc = nodeReaderInit(&reader, aLeaf, nLeaf);
147196 rc==SQLITE_OK && reader.aNode;
147197 rc = nodeReaderNext(&reader)
147209 if( rc==SQLITE_OK && bAppendable ){
147228 blobGrowBuffer(&pNode->block, MAX(nRoot, p->nNodeSize), &rc);
147229 if( rc==SQLITE_OK ){
147234 for(i=nHeight; i>=0 && rc==SQLITE_OK; i--){
147238 rc = nodeReaderInit(&reader, pNode->block.a, pNode->block.n);
147239 while( reader.aNode && rc==SQLITE_OK ) rc = nodeReaderNext(&reader);
147240 blobGrowBuffer(&pNode->key, reader.term.n, &rc);
147241 if( rc==SQLITE_OK ){
147249 rc = sqlite3Fts3ReadBlock(p, reader.iChild, &aBlock, &nBlock, 0);
147250 blobGrowBuffer(&pNode->block, MAX(nBlock, p->nNodeSize), &rc);
147251 if( rc==SQLITE_OK ){
147263 if( rc==SQLITE_OK ) rc = rc2;
147266 return rc;
147283 int rc;
147286 rc = fts3SqlStmt(p, SQL_NEXT_SEGMENT_INDEX, &pOutputIdx, 0);
147287 if( rc==SQLITE_OK ){
147291 rc = sqlite3_reset(pOutputIdx);
147294 return rc;
147330 int rc; /* Return Code */
147337 rc = fts3SqlStmt(p, SQL_MAX_LEAF_NODE_ESTIMATE, &pLeafEst, 0);
147338 if( rc==SQLITE_OK ){
147344 rc = sqlite3_reset(pLeafEst);
147346 if( rc!=SQLITE_OK ) return rc;
147349 rc = fts3SqlStmt(p, SQL_NEXT_SEGMENTS_ID, &pFirstBlock, 0);
147350 if( rc==SQLITE_OK ){
147356 rc = sqlite3_reset(pFirstBlock);
147358 if( rc!=SQLITE_OK ) return rc;
147363 rc = fts3WriteSegment(p, pWriter->iEnd, 0, 0);
147364 if( rc!=SQLITE_OK ) return rc;
147393 int rc; /* Return code */
147396 rc = fts3SqlStmt(p, SQL_DELETE_SEGDIR_ENTRY, &pDelete, 0);
147397 if( rc==SQLITE_OK ){
147401 rc = sqlite3_reset(pDelete);
147404 return rc;
147416 int rc; /* Return code */
147424 rc = fts3SqlStmt(p, SQL_SELECT_INDEXES, &pSelect, 0);
147425 if( rc==SQLITE_OK ){
147434 rc = SQLITE_NOMEM;
147442 if( rc==SQLITE_OK ) rc = rc2;
147445 if( rc==SQLITE_OK ){
147446 rc = fts3SqlStmt(p, SQL_SHIFT_SEGDIR_ENTRY, &pUpdate, 0);
147448 if( rc==SQLITE_OK ){
147454 for(i=0; rc==SQLITE_OK && i<nIdx; i++){
147459 rc = sqlite3_reset(pUpdate);
147465 return rc;
147497 int rc = SQLITE_OK; /* Return code */
147501 blobGrowBuffer(pNew, nNode, &rc);
147502 if( rc!=SQLITE_OK ) return rc;
147506 for(rc = nodeReaderInit(&reader, aNode, nNode);
147507 rc==SQLITE_OK && reader.aNode;
147508 rc = nodeReaderNext(&reader)
147516 rc = fts3AppendToNode(
147520 if( rc!=SQLITE_OK ) break;
147530 return rc;
147549 int rc = SQLITE_OK; /* Return code */
147557 rc = fts3SqlStmt(p, SQL_SELECT_SEGDIR, &pFetch, 0);
147558 if( rc==SQLITE_OK ){
147566 rc = fts3TruncateNode(aRoot, nRoot, &root, zTerm, nTerm, &iBlock);
147569 if( rc==SQLITE_OK ) rc = rc2;
147572 while( rc==SQLITE_OK && iBlock ){
147577 rc = sqlite3Fts3ReadBlock(p, iBlock, &aBlock, &nBlock, 0);
147578 if( rc==SQLITE_OK ){
147579 rc = fts3TruncateNode(aBlock, nBlock, &block, zTerm, nTerm, &iBlock);
147581 if( rc==SQLITE_OK ){
147582 rc = fts3WriteSegment(p, iNewStart, block.a, block.n);
147588 if( rc==SQLITE_OK && iNewStart ){
147590 rc = fts3SqlStmt(p, SQL_DELETE_SEGMENTS_RANGE, &pDel, 0);
147591 if( rc==SQLITE_OK ){
147595 rc = sqlite3_reset(pDel);
147599 if( rc==SQLITE_OK ){
147601 rc = fts3SqlStmt(p, SQL_CHOMP_SEGDIR, &pChomp, 0);
147602 if( rc==SQLITE_OK ){
147608 rc = sqlite3_reset(pChomp);
147614 return rc;
147635 int rc = SQLITE_OK;
147637 for(i=pCsr->nSegment-1; i>=0 && rc==SQLITE_OK; i--){
147651 rc = fts3DeleteSegment(p, pSeg);
147652 if( rc==SQLITE_OK ){
147653 rc = fts3RemoveSegdirEntry(p, iAbsLevel, pSeg->iIdx);
147662 rc = fts3TruncateSegment(p, iAbsLevel, pSeg->iIdx, zTerm, nTerm);
147667 if( rc==SQLITE_OK && nRem!=pCsr->nSegment ){
147668 rc = fts3RepackSegdirLevel(p, iAbsLevel);
147672 return rc;
147680 int rc; /* Return code */
147682 rc = fts3SqlStmt(p, SQL_REPLACE_STAT, &pReplace, 0);
147683 if( rc==SQLITE_OK ){
147687 rc = sqlite3_reset(pReplace);
147690 return rc;
147703 int rc;
147706 rc = fts3SqlStmt(p, SQL_SELECT_STAT, &pSelect, 0);
147707 if( rc==SQLITE_OK ){
147714 blobGrowBuffer(pHint, nHint, &rc);
147715 if( rc==SQLITE_OK ){
147722 if( rc==SQLITE_OK ) rc = rc2;
147725 return rc;
147785 int rc; /* Return code */
147802 rc = fts3IncrmergeHintLoad(p, &hint);
147803 while( rc==SQLITE_OK && nRem>0 ){
147815 rc = fts3SqlStmt(p, SQL_FIND_MERGE_LEVEL, &pFindLevel, 0);
147823 rc = sqlite3_reset(pFindLevel);
147830 if( rc==SQLITE_OK && hint.n ){
147835 rc = fts3IncrmergeHintPop(&hint, &iHintAbsLevel, &nHintSeg);
147862 if( rc==SQLITE_OK ){
147863 rc = fts3IncrmergeOutputIdx(p, iAbsLevel, &iIdx);
147867 rc = fts3SegmentIsMaxLevel(p, iAbsLevel+1, &bIgnore);
147874 if( rc==SQLITE_OK ){
147875 rc = fts3IncrmergeCsr(p, iAbsLevel, nSeg, pCsr);
147877 if( SQLITE_OK==rc && pCsr->nSegment==nSeg
147878 && SQLITE_OK==(rc = sqlite3Fts3SegReaderStart(p, pCsr, pFilter))
147879 && SQLITE_ROW==(rc = sqlite3Fts3SegReaderStep(p, pCsr))
147884 rc = fts3IncrmergeLoad(p, iAbsLevel, iIdx-1, zKey, nKey, pWriter);
147886 rc = fts3IncrmergeWriter(p, iAbsLevel, iIdx, pCsr, pWriter);
147889 if( rc==SQLITE_OK && pWriter->nLeafEst ){
147892 rc = fts3IncrmergeAppend(p, pWriter, pCsr);
147893 if( rc==SQLITE_OK ) rc = sqlite3Fts3SegReaderStep(p, pCsr);
147894 if( pWriter->nWork>=nRem && rc==SQLITE_ROW ) rc = SQLITE_OK;
147895 }while( rc==SQLITE_ROW );
147898 if( rc==SQLITE_OK ){
147900 rc = fts3IncrmergeChomp(p, iAbsLevel, pCsr, &nSeg);
147903 fts3IncrmergeHintPush(&hint, iAbsLevel, nSeg, &rc);
147911 fts3IncrmergeRelease(p, pWriter, &rc);
147921 if( bDirtyHint && rc==SQLITE_OK ){
147922 rc = fts3IncrmergeHintStore(p, &hint);
147927 return rc;
147956 int rc;
147972 rc = SQLITE_ERROR;
147974 rc = SQLITE_OK;
147977 sqlite3Fts3CreateStatTable(&rc, p);
147979 if( rc==SQLITE_OK ){
147980 rc = sqlite3Fts3Incrmerge(p, nMerge, nMin);
147984 return rc;
147999 int rc = SQLITE_OK;
148007 sqlite3Fts3CreateStatTable(&rc, p);
148008 if( rc ) return rc;
148010 rc = fts3SqlStmt(p, SQL_REPLACE_STAT, &pStmt, 0);
148011 if( rc ) return rc;
148015 rc = sqlite3_reset(pStmt);
148016 return rc;
148061 int rc;
148071 rc = sqlite3Fts3SegReaderCursor(
148074 if( rc==SQLITE_OK ){
148075 rc = sqlite3Fts3SegReaderStart(p, &csr, &filter);
148078 if( rc==SQLITE_OK ){
148079 while( SQLITE_ROW==(rc = sqlite3Fts3SegReaderStep(p, &csr)) ){
148114 *pRc = rc;
148128 int rc = SQLITE_OK; /* Return code */
148134 rc = fts3SqlStmt(p, SQL_SELECT_ALL_LANGID, &pAllLangid, 0);
148135 if( rc==SQLITE_OK ){
148139 while( rc==SQLITE_OK && sqlite3_step(pAllLangid)==SQLITE_ROW ){
148143 cksum1 = cksum1 ^ fts3ChecksumIndex(p, iLangid, i, &rc);
148147 if( rc==SQLITE_OK ) rc = rc2;
148151 if( rc==SQLITE_OK ){
148158 rc = SQLITE_NOMEM;
148160 rc = sqlite3_prepare_v2(p->db, zSql, -1, &pStmt, 0);
148164 while( rc==SQLITE_OK && SQLITE_ROW==sqlite3_step(pStmt) ){
148169 for(iCol=0; rc==SQLITE_OK && iCol<p->nColumn; iCol++){
148175 rc = sqlite3Fts3OpenTokenizer(p->pTokenizer, iLang, zText, nText,&pT);
148176 while( rc==SQLITE_OK ){
148182 rc = pModule->xNext(pT, &zToken, &nToken, &iDum1, &iDum2, &iPos);
148183 if( rc==SQLITE_OK ){
148198 if( rc==SQLITE_DONE ) rc = SQLITE_OK;
148207 return rc;
148244 int rc;
148246 rc = fts3IntegrityCheck(p, &bOk);
148247 if( rc==SQLITE_OK && bOk==0 ) rc = FTS_CORRUPT_VTAB;
148248 return rc;
148260 int rc; /* Return Code */
148267 rc = fts3DoOptimize(p, 0);
148269 rc = fts3DoRebuild(p);
148271 rc = fts3DoIntegrityCheck(p);
148273 rc = fts3DoIncrmerge(p, &zVal[6]);
148275 rc = fts3DoAutoincrmerge(p, &zVal[10]);
148279 rc = SQLITE_OK;
148282 rc = SQLITE_OK;
148285 rc = SQLITE_OK;
148288 rc = SQLITE_ERROR;
148291 return rc;
148331 int rc = SQLITE_OK; /* Return code */
148344 for(i=0; i<p->nColumn && rc==SQLITE_OK; i++){
148349 rc = sqlite3Fts3OpenTokenizer(pT, pCsr->iLangid, zText, -1, &pTC);
148350 while( rc==SQLITE_OK ){
148356 rc = pModule->xNext(pTC, &zToken, &nToken, &iDum1, &iDum2, &iPos);
148357 for(pDef=pCsr->pDeferred; pDef && rc==SQLITE_OK; pDef=pDef->pNext){
148364 fts3PendingListAppend(&pDef->pList, iDocid, i, iPos, &rc);
148369 if( rc==SQLITE_DONE ) rc
148373 for(pDef=pCsr->pDeferred; pDef && rc==SQLITE_OK; pDef=pDef->pNext){
148375 rc = fts3PendingListAppendVarint(&pDef->pList, 0);
148380 return rc;
148447 int rc = SQLITE_OK; /* Return code */
148450 fts3DeleteTerms(&rc, p, pRowid, aSzDel, &bFound);
148451 if( bFound && rc==SQLITE_OK ){
148453 rc = fts3IsEmpty(p, pRowid, &isEmpty);
148454 if( rc==SQLITE_OK ){
148459 rc = fts3DeleteAll(p, 1);
148465 fts3SqlExec(&rc, p, SQL_DELETE_CONTENT, &pRowid);
148468 fts3SqlExec(&rc, p, SQL_DELETE_DOCSIZE, &pRowid);
148474 return rc;
148497 int rc = SQLITE_OK; /* Return Code */
148522 rc = fts3SpecialInsert(p, apVal[p->nColumn+2]);
148527 rc = SQLITE_CONSTRAINT;
148534 rc = SQLITE_NOMEM;
148540 rc = fts3Writelock(p);
148541 if( rc!=SQLITE_OK ) goto update_out;
148581 rc = fts3DeleteByRowid(p, pNewRowid, &nChng, aSzDel);
148583 rc = fts3InsertData(p, apVal, pRowid);
148588 if( rc!=SQLITE_OK ){
148595 rc = fts3DeleteByRowid(p, apVal[0], &nChng, aSzDel);
148600 if( nArg>1 && rc==SQLITE_OK ){
148603 rc = fts3InsertData(p, apVal, pRowid);
148604 if( rc==SQLITE_CONSTRAINT && p->zContentTbl==0 ){
148605 rc = FTS_CORRUPT_VTAB;
148608 if( rc==SQLITE_OK && (!isRemove || *pRowid!=p->iPrevDocid ) ){
148609 rc = fts3PendingTermsDocid(p, iLangid, *pRowid);
148611 if( rc==SQLITE_OK ){
148613 rc = fts3InsertTerms(p, iLangid, apVal, aSzIns);
148616 fts3InsertDocsize(&rc, p, aSzIns);
148622 fts3UpdateDocTotals(&rc, p, aSzIns, aSzDel, nChng);
148628 return rc;
148637 int rc;
148638 rc = sqlite3_exec(p->db, "SAVEPOINT fts3", 0, 0, 0);
148639 if( rc==SQLITE_OK ){
148640 rc = fts3DoOptimize(p, 1);
148641 if( rc==SQLITE_OK || rc==SQLITE_DONE ){
148643 if( rc2!=SQLITE_OK ) rc = rc2;
148650 return rc;
148800 int rc; /* Return code */
148805 rc = fts3ExprIterate2(pExpr->pLeft, piPhrase, x, pCtx);
148806 if( rc==SQLITE_OK && eType!=FTSQUERY_NOT ){
148807 rc = fts3ExprIterate2(pExpr->pRight, piPhrase, x, pCtx);
148810 rc = x(pExpr, *piPhrase, pCtx);
148813 return rc;
148841 int rc = SQLITE_OK;
148850 return rc;
148868 int rc; /* Return Code */
148871 rc = fts3ExprIterate(pCsr->pExpr, fts3ExprLoadDoclistsCb, (void *)&sCtx);
148874 return rc;
149019 int rc;
149022 rc = sqlite3Fts3EvalPhrasePoslist(p->pCsr, pExpr, p->iCol, &pCsr);
149023 assert( rc==SQLITE_OK || pCsr==0 );
149034 assert( rc!=SQLITE_OK || (
149039 return rc;
149066 int rc; /* Return Code */
149078 rc = fts3ExprLoadDoclists(pCsr, &nList, 0);
149079 if( rc!=SQLITE_OK ){
149080 return rc;
149101 rc = fts3ExprIterate(pCsr->pExpr, fts3SnippetFindPositions, (void *)&sIter);
149102 if( rc==SQLITE_OK ){
149133 return rc;
149225 int rc; /* Return Code */
149233 rc = sqlite3Fts3OpenTokenizer(pTab->pTokenizer, iLangid, zDoc, nDoc, &pC);
149234 if( rc!=SQLITE_OK ){
149235 return rc;
149237 while( rc==SQLITE_OK && iCurrent<(nSnippet+nDesired) ){
149239 rc = pMod->xNext(pC, &ZDUMMY, &DUMMY1, &DUMMY2, &DUMMY3, &iCurrent);
149242 if( rc!=SQLITE_OK && rc!=SQLITE_DONE ){ return rc; }
149244 nShift = (rc==SQLITE_DONE)+iCurrent-nSnippet;
149271 int rc; /* Return code */
149294 rc = sqlite3Fts3OpenTokenizer(pTab->pTokenizer, pCsr->iLangid, zDoc,nDoc,&pC);
149295 if( rc!=SQLITE_OK ){
149296 return rc;
149299 while( rc==SQLITE_OK ){
149317 rc = pMod->xNext(pC, &ZDUMMY, &DUMMY1, &iBegin, &iFin, &iCurrent);
149318 if( rc!=SQLITE_OK ){
149319 if( rc==SQLITE_DONE ){
149324 rc = fts3StringAppend(pOut, &zDoc[iEnd], -1);
149332 rc = fts3SnippetShift(
149341 if( rc==SQLITE_OK ){
149343 rc = fts3StringAppend(pOut, zEllipsis, -1);
149345 rc = fts3StringAppend(pOut, zDoc, iBegin);
149348 if( rc!=SQLITE_OK || iCurrent<iPos ) continue;
149353 rc = fts3StringAppend(pOut, zEllipsis, -1);
149361 if( iCurrent>iPos ) rc = fts3StringAppend(pOut, &zDoc[iEnd], iBegin-iEnd);
149362 if( rc==SQLITE_OK && isHighlight ) rc = fts3StringAppend(pOut, zOpen, -1);
149363 if( rc==SQLITE_OK ) rc = fts3StringAppend(pOut, &zDoc[iBegin], iFin-iBegin);
149364 if( rc==SQLITE_OK && isHighlight ) rc = fts3StringAppend(pOut, zClose, -1);
149370 return rc;
149450 int rc = SQLITE_OK;
149455 for(i=0; i<p->nCol && rc==SQLITE_OK; i++){
149457 rc = sqlite3Fts3EvalPhrasePoslist(p->pCursor, pExpr, i, &pCsr);
149465 return rc;
149479 int rc = SQLITE_OK;
149510 return rc;
149573 int rc = sqlite3Fts3SelectDoctotal(pTab, ppStmt);
149574 if( rc!=SQLITE_OK ) return rc;
149626 int rc = 0;
149631 rc = 1;
149637 return rc;
149676 int rc;
149678 rc = sqlite3Fts3EvalPhrasePoslist(pCsr, pIt->pExpr, iCol, &pIt->pRead);
149679 if( rc!=SQLITE_OK ) return rc;
149741 int rc = SQLITE_OK;
149746 for(i=0; rc==SQLITE_OK && zArg[i]; i++){
149760 rc = fts3MatchinfoSelectDoctotal(pTab, &pSelect, &nDoc, 0);
149770 rc = fts3MatchinfoSelectDoctotal(pTab, &pSelect, &nDoc, &a);
149771 if( rc==SQLITE_OK ){
149786 rc = sqlite3Fts3SelectDocsize(pTab, pCsr->iPrevId, &pSelectDocsize);
149787 if( rc==SQLITE_OK ){
149801 rc = fts3ExprLoadDoclists(pCsr, 0, 0);
149802 if( rc==SQLITE_OK ){
149803 rc = fts3MatchinfoLcs(pCsr, pInfo);
149815 rc = fts3ExprLoadDoclists(pCsr, 0, 0);
149816 if( rc!=SQLITE_OK ) break;
149819 rc = fts3MatchinfoSelectDoctotal(pTab, &pSelect, &pInfo->nDoc, 0);
149820 if( rc!=SQLITE_OK ) break;
149822 rc
149823 if( rc!=SQLITE_OK ) break;
149834 return rc;
149848 int rc = SQLITE_OK;
149900 rc = fts3MatchinfoValues(pCsr, bGlobal, &sInfo, zArg);
149904 return rc;
149920 int rc = SQLITE_OK;
149970 rc = fts3BestSnippet(nFToken, pCsr, iRead, mCovered, &mSeen, &sF, &iS);
149971 if( rc!=SQLITE_OK ){
149992 for(i=0; i<nSnippet && rc==SQLITE_OK; i++){
149993 rc = fts3SnippetText(pCsr, &aSnippet[i],
150000 if( rc!=SQLITE_OK ){
150001 sqlite3_result_error_code(pCtx, rc);
150035 int rc;
150038 rc = sqlite3Fts3EvalPhrasePoslist(p->pCsr, pExpr, p->iCol, &pList);
150052 return rc;
150064 int rc; /* Return Code */
150079 rc = fts3ExprLoadDoclists(pCsr, 0, &nToken);
150080 if( rc!=SQLITE_OK ) goto offsets_out;
150085 rc = SQLITE_NOMEM;
150124 rc = SQLITE_NOMEM;
150129 rc = sqlite3Fts3OpenTokenizer(pTab->pTokenizer, pCsr->iLangid,
150132 if( rc!=SQLITE_OK ) goto offsets_out;
150134 rc = pMod->xNext(pC, &ZDUMMY, &NDUMMY, &iStart, &iEnd, &iCurrent);
150135 while( rc==SQLITE_OK ){
150150 rc = SQLITE_DONE;
150158 while( rc==SQLITE_OK && iCurrent<iMinPos ){
150159 rc = pMod->xNext(pC, &ZDUMMY, &NDUMMY, &iStart, &iEnd, &iCurrent);
150161 if( rc==SQLITE_OK ){
150166 rc = fts3StringAppend(&res, aBuffer, -1);
150167 }else if( rc==SQLITE_DONE && pTab->zContentTbl==0 ){
150168 rc = FTS_CORRUPT_VTAB;
150172 if( rc==SQLITE_DONE ){
150173 rc = SQLITE_OK;
150177 if( rc!=SQLITE_OK ) goto offsets_out;
150182 assert( rc!=SQLITE_DONE );
150184 if( rc!=SQLITE_OK ){
150185 sqlite3_result_error_code(pCtx, rc);
150202 int rc;
150226 rc = fts3GetMatchinfo(pCsr, zFormat);
150229 if( rc!=SQLITE_OK ){
150230 sqlite3_result_error_code(pContext, rc);
150463 int rc = SQLITE_OK;
150470 for(i=0; rc==SQLITE_OK && i<nArg; i++){
150481 rc = unicodeAddExceptions(pNew, 1, &z[11], n-11);
150484 rc = unicodeAddExceptions(pNew, 0, &z[11], n-11);
150488 rc = SQLITE_ERROR;
150492 if( rc!=SQLITE_OK ){
150497 return rc;
151513 int rc;
151532 rc = sqlite3_step(pRtree->pReadNode);
151533 if( rc==SQLITE_ROW ){
151551 rc = sqlite3_reset(pRtree->pReadNode);
151552 if( rc==SQLITE_OK ) rc = rc2;
151563 rc = SQLITE_CORRUPT_VTAB;
151571 if( pNode && rc==SQLITE_OK ){
151573 rc = SQLITE_CORRUPT_VTAB;
151577 if( rc==SQLITE_OK ){
151581 rc = SQLITE_CORRUPT_VTAB;
151589 return rc;
151653 int rc = SQLITE_OK;
151664 rc = sqlite3_reset(p);
151665 if( pNode->iNode==0 && rc==SQLITE_OK ){
151670 return rc;
151678 int rc = SQLITE_OK;
151687 rc = nodeRelease(pRtree, pNode->pParent);
151689 if( rc==SQLITE_OK ){
151690 rc = nodeWrite(pRtree, pNode);
151696 rc;
151821 int rc;
151831 rc = SQLITE_NOMEM;
151833 rc = sqlite3_exec(pRtree->db, zCreate, 0, 0, 0);
151836 if( rc==SQLITE_OK ){
151840 return rc;
151847 int rc = SQLITE_NOMEM;
151854 rc = SQLITE_OK;
151858 return rc;
151959 int rc; /* Callback return code */
151973 rc = pConstraint->u.xGeom((sqlite3_rtree_geometry*)pInfo,
151982 rc = pConstraint->u.xQueryFunc(pInfo);
151988 return rc;
152320 int rc = SQLITE_OK;
152329 pNode = rtreeNodeOfFirstSearchPoint(pCur, &rc);
152330 if( rc ) return rc;
152340 rc = rtreeCallbackConstraint(pConstraint, eInt, pCellData, p,
152342 if( rc ) return rc;
152387 int rc = SQLITE_OK;
152392 rc = rtreeStepToLeaf(pCsr);
152393 return rc;
152402 int rc = SQLITE_OK;
152403 RtreeNode *pNode = rtreeNodeOfFirstSearchPoint(pCsr, &rc);
152404 if( rc==SQLITE_OK && p ){
152407 return rc;
152418 int rc = SQLITE_OK;
152419 RtreeNode *pNode = rtreeNodeOfFirstSearchPoint(pCsr, &rc);
152421 if( rc ) return rc;
152426 if( rc ) return rc;
152454 int rc;
152460 rc = nodeAcquire(pRtree, iNode, 0, ppLeaf);
152463 rc = sqlite3_reset(pRtree->pReadRowid);
152465 return rc;
152529 int rc = SQLITE_OK;
152547 rc = findLeafNode(pRtree, iRowid, &pLeaf, &iNode);
152548 if( rc==SQLITE_OK && pLeaf!=0 ){
152554 rc = nodeRowidIndex(pRtree, pLeaf, iRowid, &iCell);
152564 rc = nodeAcquire(pRtree, 1, 0, &pRoot);
152565 if( rc==SQLITE_OK && argc>0 ){
152569 rc = SQLITE_NOMEM;
152584 rc = deserializeGeometry(argv[ii], p);
152585 if( rc!=SQLITE_OK ){
152601 if( rc==SQLITE_OK ){
152612 rc = rtreeStepToLeaf(pCsr);
152618 return rc;
152670 int rc = SQLITE_OK;
152734 return rc;
152849 int rc;
152852 rc = nodeAcquire(pRtree, 1, 0, &pNode);
152854 for(ii=0; rc==SQLITE_OK && ii<(pRtree->iDepth-iHeight); ii++){
152889 rc = nodeAcquire(pRtree, iBest, pNode, &pChild);
152895 return rc;
153220 int rc = SQLITE_OK;
153236 rc = SQLITE_NOMEM;
153261 rc = SQLITE_NOMEM;
153268 rc = splitNodeStartree(pRtree, aCell, nCell, pLeft, pRight,
153270 if( rc!=SQLITE_OK ){
153279 if( SQLITE_OK!=(rc = nodeWrite(pRtree, pRight))
153280 || (0==pLeft->iNode && SQLITE_OK!=(rc = nodeWrite(pRtree, pLeft)))
153289 rc = rtreeInsertCell(pRtree, pLeft->pParent, &leftbbox, iHeight+1);
153290 if( rc!=SQLITE_OK ){
153296 rc = nodeParentIndex(pRtree, pLeft, &iCell);
153297 if( rc==SQLITE_OK ){
153299 rc = AdjustTree(pRtree, pParent, &leftbbox);
153301 if( rc!=SQLITE_OK ){
153305 if( (rc = rtreeInsertCell(pRtree, pRight->pParent, &rightbbox, iHeight+1)) ){
153311 rc = updateMapping(pRtree, iRowid, pRight, iHeight);
153315 if( rc!=SQLITE_OK ){
153322 rc = updateMapping(pRtree, iRowid, pLeft, iHeight);
153323 if( rc!=SQLITE_OK ){
153328 rc = updateMapping(pRtree, pCell->iRowid, pLeft, iHeight);
153331 if( rc==SQLITE_OK ){
153332 rc = nodeRelease(pRtree, pRight);
153335 if( rc==SQLITE_OK ){
153336 rc = nodeRelease(pRtree, pLeft);
153344 return rc;
153359 int rc = SQLITE_OK;
153361 while( rc==SQLITE_OK && pChild->iNode!=1 && pChild->pParent==0 ){
153364 rc = sqlite3_step(pRtree->pReadParent);
153365 if( rc==SQLITE_ROW ){
153380 rc = sqlite3_reset(pRtree->pReadParent);
153381 if( rc==SQLITE_OK ) rc = rc2;
153382 if( rc==SQLITE_OK && !pChild->pParent ) rc = SQLITE_CORRUPT_VTAB;
153385 return rc;
153391 int rc;
153399 rc = nodeParentIndex(pRtree, pNode, &iCell);
153400 if( rc==SQLITE_OK ){
153403 rc = deleteCell(pRtree, pParent, iCell, iHeight+1);
153406 if( rc==SQLITE_OK ){
153407 rc = rc2;
153409 if( rc!=SQLITE_OK ){
153410 return rc;
153416 if( SQLITE_OK!=(rc = sqlite3_reset(pRtree->pDeleteNode)) ){
153417 return rc;
153423 if( SQLITE_OK!=(rc = sqlite3_reset(pRtree->pDeleteParent)) ){
153424 return rc;
153441 int rc = SQLITE_OK;
153453 rc = nodeParentIndex(pRtree, pNode, &ii);
153454 if( rc==SQLITE_OK ){
153456 rc = fixBoundingBox(pRtree, pParent);
153459 return rc;
153468 int rc;
153470 if( SQLITE_OK!=(rc = fixLeafParent(pRtree, pNode)) ){
153471 return rc;
153488 rc = removeNode(pRtree, pNode, iHeight);
153490 rc = fixBoundingBox(pRtree, pNode);
153494 return rc;
153511 int rc = SQLITE_OK;
153563 for(ii=0; rc==SQLITE_OK && ii<(nCell-(RTREE_MINCELLS(pRtree)+1)); ii++){
153568 rc = rowidWrite(pRtree, p->iRowid, pNode->iNode);
153570 rc = parentWrite(pRtree, p->iRowid, pNode->iNode);
153574 if( rc==SQLITE_OK ){
153575 rc = fixBoundingBox(pRtree, pNode);
153577 for(; rc==SQLITE_OK && ii<nCell; ii++){
153583 rc = ChooseLeaf(pRtree, p, iHeight, &pInsert);
153584 if( rc==SQLITE_OK ){
153586 rc = rtreeInsertCell(pRtree, pInsert, p, iHeight);
153588 if( rc==SQLITE_OK ){
153589 rc = rc2;
153595 return rc;
153608 int rc = SQLITE_OK;
153619 rc = SplitNode(pRtree, pNode, pCell, iHeight);
153622 rc = Reinsert(pRtree, pNode, pCell, iHeight);
153625 rc = AdjustTree(pRtree, pNode, pCell);
153626 if( rc==SQLITE_OK ){
153628 rc = rowidWrite(pRtree, pCell->iRowid, pNode->iNode);
153630 rc = parentWrite(pRtree, pCell->iRowid, pNode->iNode);
153634 return rc;
153639 int rc = SQLITE_OK;
153642 for(ii=0; rc==SQLITE_OK && ii<nCell; ii++){
153650 rc = ChooseLeaf(pRtree, &cell, (int)pNode->iNode, &pInsert);
153651 if( rc==SQLITE_OK ){
153653 rc = rtreeInsertCell(pRtree, pInsert, &cell, (int)pNode->iNode);
153655 if( rc==SQLITE_OK ){
153656 rc = rc2;
153660 return rc;
153667 int rc;
153671 rc = sqlite3_reset(pRtree->pWriteRowid);
153673 return rc;
153680 int rc; /* Return code */
153687 rc = nodeAcquire(pRtree, 1, 0, &pRoot);
153692 if( rc==SQLITE_OK ){
153693 rc = findLeafNode(pRtree, iDelete, &pLeaf, 0);
153697 if( rc==SQLITE_OK ){
153699 rc = nodeRowidIndex(pRtree, pLeaf, iDelete, &iCell);
153700 if( rc==SQLITE_OK ){
153701 rc = deleteCell(pRtree, pLeaf, iCell, 0);
153704 if( rc==SQLITE_OK ){
153705 rc = rc2;
153710 if( rc==SQLITE_OK ){
153713 rc = sqlite3_reset(pRtree->pDeleteRowid);
153724 if( rc==SQLITE_OK && pRtree->iDepth>0 && NCELL(pRoot)==1 ){
153728 rc = nodeAcquire(pRtree, iChild, pRoot, &pChild);
153729 if( rc==SQLITE_OK ){
153730 rc = removeNode(pRtree, pChild, pRtree->iDepth-1);
153733 if( rc==SQLITE_OK ) rc = rc2;
153734 if( rc==SQLITE_OK ){
153743 if( rc==SQLITE_OK ){
153744 rc = reinsertNodeContent(pRtree, pLeaf);
153751 if( rc==SQLITE_OK ){
153752 rc = nodeRelease(pRtree, pRoot);
153757 return rc;
153800 int rc = SQLITE_OK;
153839 rc = SQLITE_CONSTRAINT;
153850 rc = SQLITE_CONSTRAINT;
153866 rc = sqlite3_reset(pRtree->pReadRowid);
153869 rc = rtreeDeleteRowid(pRtree, cell.iRowid);
153871 rc = SQLITE_CONSTRAINT;
153885 rc
153892 if( rc==SQLITE_OK && nData>1 ){
153898 rc = newRowid(pRtree, &cell.iRowid);
153902 if( rc==SQLITE_OK ){
153903 rc = ChooseLeaf(pRtree, &cell, 0, &pLeaf);
153905 if( rc==SQLITE_OK ){
153908 rc = rtreeInsertCell(pRtree, pLeaf, &cell, 0);
153910 if( rc==SQLITE_OK ){
153911 rc = rc2;
153918 return rc;
153926 int rc = SQLITE_NOMEM;
153936 rc = sqlite3_exec(pRtree->db, zSql, 0, 0, 0);
153939 return rc;
153951 int rc;
153956 rc = SQLITE_NOMEM;
153958 rc = sqlite3_prepare_v2(db, zSql, -1, &p, 0);
153959 if( rc==SQLITE_OK ){
153961 rc = sqlite3_finalize(p);
153962 }else if( rc!=SQLITE_NOMEM ){
153963 rc = SQLITE_OK;
153966 if( rc==SQLITE_OK ){
153976 return rc;
154012 int rc = SQLITE_OK;
154048 rc = sqlite3_exec(db, zCreate, 0, 0, 0);
154050 if( rc!=SQLITE_OK ){
154051 return rc;
154065 rc = rtreeQueryStat1(db, pRtree);
154066 for(i=0; i<N_STATEMENT && rc==SQLITE_OK; i++){
154069 rc = sqlite3_prepare_v2(db, zSql, -1, appStmt[i], 0);
154071 rc = SQLITE_NOMEM;
154076 return rc;
154087 int rc = SQLITE_NOMEM;
154090 rc = sqlite3_prepare_v2(db, zSql, -1, &pStmt, 0);
154091 if( rc==SQLITE_OK ){
154095 rc = sqlite3_finalize(pStmt);
154098 return rc;
154122 int rc;
154127 rc = getIntFromStmt(db, zSql, &iPageSize);
154128 if( rc==SQLITE_OK ){
154141 rc = getIntFromStmt(db, zSql, &pRtree->iNodeSize);
154142 if( rc!=SQLITE_OK ){
154148 return rc;
154168 int rc = SQLITE_OK;
154208 rc = getNodeSize(db, pRtree, isCreate, pzErr);
154214 if( rc==SQLITE_OK ){
154215 if( (rc = rtreeSqlInit(pRtree, db, argv[1], argv[2], isCreate)) ){
154232 rc = SQLITE_NOMEM;
154233 }else if( SQLITE_OK!=(rc = sqlite3_declare_vtab(db, zSql)) ){
154240 if( rc==SQLITE_OK ){
154247 return rc;
154340 int rc;
154342 rc = sqlite3_create_function(db, "rtreenode", 2, utf8, 0, rtreenode, 0, 0);
154343 if( rc==SQLITE_OK ){
154344 rc = sqlite3_create_function(db, "rtreedepth", 1, utf8, 0,rtreedepth, 0, 0);
154346 if( rc==SQLITE_OK ){
154352 rc = sqlite3_create_module_v2(db, "rtree", &rtreeModule, c, 0);
154354 if( rc==SQLITE_OK ){
154356 rc = sqlite3_create_module_v2(db, "rtree_i32", &rtreeModule, c, 0);
154359 return rc;
154899 int rc; /* Return code from sqlite3_create_collation_x() */
154916 rc = sqlite3_create_collation_v2(db, zName, SQLITE_UTF16, (void *)pUCollator,
154919 if( rc!=SQLITE_OK ){
154954 int rc = SQLITE_OK;
154957 for(i=0; rc==SQLITE_OK && i<(int)(sizeof(scalars)/sizeof(scalars[0])); i++){
154959 rc = sqlite3_create_function(
154964 return rc;
155388 int rc = SQLITE_OK;
155400 rc = sqlite3_declare_vtab(db, VTAB_SCHEMA);
155401 if( rc==SQLITE_OK ){
155403 if( pTab==0 ) rc = SQLITE_NOMEM;
155406 assert( rc==SQLITE_OK || pTab==0 );
155407 if( rc==SQLITE_OK ){
155414 return rc;
155459 int rc;
155463 rc = SQLITE_NOMEM;
155476 rc = SQLITE_NOMEM;
155478 rc = sqlite3_prepare_v2(pTab->db, zSql, -1, &pCsr->pStmt, 0);
155481 if( rc!=SQLITE_OK ){
155488 return rc;
155621 int rc;
155624 rc = sqlite3PagerGet(sqlite3BtreePager(pBt), iPrev, &pPg);
155625 if( rc!=SQLITE_OK ){
155627 return rc;
155670 int rc;
155683 rc = sqlite3_step(pCsr->pStmt);
155684 if( rc==SQLITE_ROW ){
155692 rc = sqlite3PagerGet(pPager, iRoot, &pCsr->aPage[0].pPg);
155697 if( z==0 ) rc = SQLITE_NOMEM;
155752 rc = sqlite3PagerGet(pPager, p[1].iPgno, &p[1].pPg);
155756 if( z==0 ) rc = SQLITE_NOMEM;
155763 if( rc==SQLITE_OK ){
155769 rc = statDecodePage(pBt, p);
155770 if( rc==SQLITE_OK ){
155790 if( z==0 ) rc = SQLITE_NOMEM;
155799 return rc;