@ -10022,7 +10022,7 @@ SQLITE_PRIVATE void sqlite3PCacheSetDefault(void);
* * shared locks begins at SHARED_FIRST .
* *
* * The same locking strategy and
* * byte ranges are used for Unix . This leaves open the possiblity of having
* * byte ranges are used for Unix . This leaves open the possibi lity of having
* * clients on win95 , winNT , and unix all talking to the same shared file
* * and all locking correctly . To do so would require that samba ( or whatever
* * tool is being used for file sharing ) implements locks correctly between
@ -11971,7 +11971,7 @@ struct TriggerStep {
u8 op ; /* One of TK_DELETE, TK_UPDATE, TK_INSERT, TK_SELECT */
u8 orconf ; /* OE_Rollback etc. */
Trigger * pTrig ; /* The trigger that this step is a part of */
Select * pSelect ; /* SELECT statment or RHS of INSERT INTO .. SELECT ... */
Select * pSelect ; /* SELECT state ment or RHS of INSERT INTO .. SELECT ... */
Token target ; /* Target table for DELETE, UPDATE, INSERT */
Expr * pWhere ; /* The WHERE clause for DELETE or UPDATE steps */
ExprList * pExprList ; /* SET clause for UPDATE. */
@ -13019,7 +13019,7 @@ SQLITE_PRIVATE int sqlite3MemdebugNoType(void*,u8);
* *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* *
* * This file contains definitions of global variables and contants .
* * This file contains definitions of global variables and cons tants .
*/
/* An array to map all upper-case characters into their corresponding
@ -13908,7 +13908,7 @@ struct Mem {
# endif
/*
* * Each auxill iary data pointer stored by a user defined function
* * Each auxiliary data pointer stored by a user defined function
* * implementation calling sqlite3_set_auxdata ( ) is stored in an instance
* * of this structure . All such structures associated with a single VM
* * are stored in a linked list headed at Vdbe . pAuxData . All are destroyed
@ -17632,7 +17632,7 @@ SQLITE_PRIVATE const sqlite3_mem_methods *sqlite3MemGetMemsys3(void){
* * 1. All memory allocations sizes are rounded up to a power of 2.
* *
* * 2. If two adjacent free blocks are the halves of a larger block ,
* * then the two blocks are coalesed into the single larger block .
* * then the two blocks are coalesc ed into the single larger block .
* *
* * 3. New memory is allocated from the first available free block .
* *
@ -18570,7 +18570,7 @@ SQLITE_PRIVATE sqlite3_mutex_methods const *sqlite3DefaultMutex(void){
/*
* * The sqlite3_mutex . id , sqlite3_mutex . nRef , and sqlite3_mutex . owner fields
* * are necessary under two condid tions : ( 1 ) Debug builds and ( 2 ) using
* * are necessary under two conditions : ( 1 ) Debug builds and ( 2 ) using
* * home - grown mutexes . Encapsulate these conditions into a single # define .
*/
# if defined(SQLITE_DEBUG) || defined(SQLITE_HOMEGROWN_RECURSIVE_MUTEX)
@ -21904,7 +21904,7 @@ SQLITE_PRIVATE void sqlite3ErrorMsg(Parse *pParse, const char *zFormat, ...){
* * occur .
* *
* * 2002 - Feb - 14 : This routine is extended to remove MS - Access style
* * brackets from around identifers . For example : " [a-b-c] " becomes
* * brackets from around identifi ers . For example : " [a-b-c] " becomes
* * " a-b-c " .
*/
SQLITE_PRIVATE int sqlite3Dequote ( char * z ) {
@ -22146,7 +22146,7 @@ do_atof_calc:
/* store the result */
* pResult = result ;
/* return true if number and no extra non-whitespace chracters after */
/* return true if number and no extra non-whitespace cha racters after */
return z > = zEnd & & nDigits > 0 & & eValid & & nonNum = = 0 ;
# else
return ! sqlite3Atoi64 ( z , pResult , length , enc ) ;
@ -22837,7 +22837,7 @@ SQLITE_PRIVATE int sqlite3SafetyCheckSickOrOk(sqlite3 *db){
}
/*
* * Attempt to add , subs tract , or multiply the 64 - bit signed value iB against
* * Attempt to add , subtract , or multiply the 64 - bit signed value iB against
* * the other 64 - bit signed integer at * pA and store the result in * pA .
* * Return 0 on success . Or if the operation would have resulted in an
* * overflow , leave * pA unchanged and return 1.
@ -26863,7 +26863,7 @@ static int unixRead(
# endif
# if SQLITE_MAX_MMAP_SIZE>0
/* Deal with as much of this read request as possible by transfering
/* Deal with as much of this read request as possible by transferr ing
* * data from the memory mapping using memcpy ( ) . */
if ( offset < pFile - > mmapSize ) {
if ( offset + amt < = pFile - > mmapSize ) {
@ -26998,7 +26998,7 @@ static int unixWrite(
# endif
# if SQLITE_MAX_MMAP_SIZE>0
/* Deal with as much of this write request as possible by transfering
/* Deal with as much of this write request as possible by transferr ing
* * data from the memory mapping using memcpy ( ) . */
if ( offset < pFile - > mmapSize ) {
if ( offset + amt < = pFile - > mmapSize ) {
@ -28557,7 +28557,7 @@ static int unixUnfetch(sqlite3_file *fd, i64 iOff, void *p){
* * looks at the filesystem type and tries to guess the best locking
* * strategy from that .
* *
* * For finder - funtion F , two objects are created :
* * For finder - func tion F , two objects are created :
* *
* * ( 1 ) The real finder - function named " FImpt() " .
* *
@ -29998,7 +29998,7 @@ static int unixGetLastError(sqlite3_vfs *NotUsed, int NotUsed2, char *NotUsed3){
* * setting the environment variable SQLITE_FORCE_PROXY_LOCKING to 1 will
* * force proxy locking to be used for every database file opened , and 0
* * will force automatic proxy locking to be disabled for all database
* * files ( explicity calling the SQLITE_SET_LOCKPROXYFILE pragma or
* * files ( explicitl y calling the SQLITE_SET_LOCKPROXYFILE pragma or
* * sqlite_file_control API is not affected by SQLITE_FORCE_PROXY_LOCKING ) .
*/
@ -30529,7 +30529,7 @@ static int proxyTakeConch(unixFile *pFile){
fprintf ( stderr , " fchmod %o FAILED with %d %s \n " ,
cmode , code , strerror ( code ) ) ;
} else {
fprintf ( stderr , " fchmod %o SUCCEDED \n " , cmode ) ;
fprintf ( stderr , " fchmod %o SUCCEE DED \n " , cmode ) ;
}
} else {
int code = errno ;
@ -33761,7 +33761,7 @@ static int winRead(
pFile - > h , pBuf , amt , offset , pFile - > locktype ) ) ;
# if SQLITE_MAX_MMAP_SIZE>0
/* Deal with as much of this read request as possible by transfering
/* Deal with as much of this read request as possible by transferr ing
* * data from the memory mapping using memcpy ( ) . */
if ( offset < pFile - > mmapSize ) {
if ( offset + amt < = pFile - > mmapSize ) {
@ -33833,7 +33833,7 @@ static int winWrite(
pFile - > h , pBuf , amt , offset , pFile - > locktype ) ) ;
# if SQLITE_MAX_MMAP_SIZE>0
/* Deal with as much of this write request as possible by transfering
/* Deal with as much of this write request as possible by transferr ing
* * data from the memory mapping using memcpy ( ) . */
if ( offset < pFile - > mmapSize ) {
if ( offset + amt < = pFile - > mmapSize ) {
@ -33965,7 +33965,7 @@ static int winTruncate(sqlite3_file *id, sqlite3_int64 nByte){
# ifdef SQLITE_TEST
/*
* * Count the number of fullsyncs and normal syncs . This is used to test
* * that syncs and fullsyncs are occuring at the right times .
* * that syncs and fullsyncs are occurr ing at the right times .
*/
SQLITE_API int sqlite3_sync_count = 0 ;
SQLITE_API int sqlite3_fullsync_count = 0 ;
@ -39330,8 +39330,8 @@ SQLITE_PRIVATE int sqlite3RowSetNext(RowSet *p, i64 *pRowid){
* * Check to see if element iRowid was inserted into the rowset as
* * part of any insert batch prior to iBatch . Return 1 or 0.
* *
* * If this is the first test of a new batch and if there exist enti res
* * on pRowSet - > pEntry , then sort those enti res into the forest at
* * If this is the first test of a new batch and if there exist entri es
* * on pRowSet - > pEntry , then sort those entri es into the forest at
* * pRowSet - > pForest so that they can be tested .
*/
SQLITE_PRIVATE int sqlite3RowSetTest ( RowSet * pRowSet , u8 iBatch , sqlite3_int64 iRowid ) {
@ -39613,7 +39613,7 @@ SQLITE_PRIVATE int sqlite3WalFramesize(Wal *pWal);
* * Definition : Two databases ( or the same database at two points it time )
* * are said to be " logically equivalent " if they give the same answer to
* * all queries . Note in particular the content of freelist leaf
* * pages can be changed arbitarily without effecting the logical equivalence
* * pages can be changed arbitr arily without effecting the logical equivalence
* * of the database .
* *
* * ( 7 ) At any time , if any subset , including the empty set and the total set ,
@ -39838,7 +39838,7 @@ int sqlite3PagerTrace=1; /* True to enable tracing */
* * outstanding transactions have been abandoned , the pager is able to
* * transition back to OPEN state , discarding the contents of the
* * page - cache and any other in - memory state at the same time . Everything
* * is reloaded from disk ( and , if necessary , hot - journal rollback peformed )
* * is reloaded from disk ( and , if necessary , hot - journal rollback per formed )
* * when a read - transaction is next opened on the pager ( transitioning
* * the pager into READER state ) . At that point the system has recovered
* * from the error .
@ -41196,7 +41196,7 @@ static int writeMasterJournal(Pager *pPager, const char *zMaster){
}
pPager - > journalOff + = ( nMaster + 20 ) ;
/* If the pager is in peristent-journal mode, then the physical
/* If the pager is in pers istent-journal mode, then the physical
* * journal - file may extend past the end of the master - journal name
* * and 8 bytes of magic data just written to the file . This is
* * dangerous because the code to rollback a hot - journal file
@ -41369,7 +41369,7 @@ static void pager_unlock(Pager *pPager){
/*
* * This function is called whenever an IOERR or FULL error that requires
* * the pager to transition into the ERROR state may a hve occurred .
* * the pager to transition into the ERROR state may ha ve occurred .
* * The first argument is a pointer to the pager structure , the second
* * the error - code about to be returned by a pager API function . The
* * value returned is a copy of the second argument to this function .
@ -48080,7 +48080,7 @@ SQLITE_PRIVATE int sqlite3WalOpen(
}
/*
* * Change the size to which the WAL file is trucated on each reset .
* * Change the size to which the WAL file is trun cated on each reset .
*/
SQLITE_PRIVATE void sqlite3WalLimit ( Wal * pWal , i64 iLimit ) {
if ( pWal ) pWal - > mxWalSize = iLimit ;
@ -54531,7 +54531,7 @@ SQLITE_PRIVATE int sqlite3BtreeCloseCursor(BtCursor *pCur){
* * compiler to crash when getCellInfo ( ) is implemented as a macro .
* * But there is a measureable speed advantage to using the macro on gcc
* * ( when less compiler optimizations like - Os or - O0 are used and the
* * compiler is not doing agressive inlining . ) So we use a real function
* * compiler is not doing agg ressive inlining . ) So we use a real function
* * for MSVC and a macro for everything else . Ticket # 2457.
*/
# ifndef NDEBUG
@ -54929,7 +54929,7 @@ static int accessPayload(
/*
* * Read part of the key associated with cursor pCur . Exactly
* * " amt " bytes will be transfered into pBuf [ ] . The transfer
* * " amt " bytes will be transferr ed into pBuf [ ] . The transfer
* * begins at " offset " .
* *
* * The caller must ensure that pCur is pointing to a valid row
@ -54949,7 +54949,7 @@ SQLITE_PRIVATE int sqlite3BtreeKey(BtCursor *pCur, u32 offset, u32 amt, void *pB
/*
* * Read part of the data associated with cursor pCur . Exactly
* * " amt " bytes will be transfered into pBuf [ ] . The transfer
* * " amt " bytes will be transferr ed into pBuf [ ] . The transfer
* * begins at " offset " .
* *
* * Return SQLITE_OK on success or an error code if anything goes
@ -62945,7 +62945,7 @@ SQLITE_PRIVATE void sqlite3VdbeRewind(Vdbe *p){
* *
* * This function may be called exact once on a each virtual machine .
* * After this routine is called the VM has been " packaged " and is ready
* * to run . After this routine is called , futher calls to
* * to run . After this routine is called , fur ther calls to
* * sqlite3VdbeAddOp ( ) functions are prohibited . This routine disconnects
* * the Vdbe from the Parse object that helped generate it so that the
* * the Vdbe becomes an independent entity and the Parse object can be
@ -62997,7 +62997,7 @@ SQLITE_PRIVATE void sqlite3VdbeMakeReady(
/* Allocate space for memory registers, SQL variables, VDBE cursors and
* * an array to marshal SQL function arguments in .
*/
zCsr = ( u8 * ) & p - > aOp [ p - > nOp ] ; /* Memory aval iable for allocation */
zCsr = ( u8 * ) & p - > aOp [ p - > nOp ] ; /* Memory avail able for allocation */
zEnd = ( u8 * ) & p - > aOp [ pParse - > nOpAlloc ] ; /* First byte past end of zCsr[] */
resolveP2Values ( p , & nArg ) ;
@ -63323,7 +63323,7 @@ static int vdbeCommit(sqlite3 *db, Vdbe *p){
/* The complex case - There is a multi-file write-transaction active.
* * This requires a master journal file to ensure the transaction is
* * committed atomicly .
* * committed atomical ly .
*/
# ifndef SQLITE_OMIT_DISKIO
else {
@ -65560,7 +65560,7 @@ SQLITE_API int sqlite3_value_type(sqlite3_value* pVal){
* * The following routines are used by user - defined functions to specify
* * the function result .
* *
* * The setStrOrError ( ) funtion calls sqlite3VdbeMemSetStr ( ) to store the
* * The setStrOrError ( ) func tion calls sqlite3VdbeMemSetStr ( ) to store the
* * result as a string or blob but if the string or blob is too large , it
* * then sets the error code to SQLITE_TOOBIG
*/
@ -65981,7 +65981,7 @@ SQLITE_API void *sqlite3_aggregate_context(sqlite3_context *p, int nByte){
}
/*
* * Return the auxilary data pointer , if any , for the iArg ' th argument to
* * Return the auxili ary data pointer , if any , for the iArg ' th argument to
* * the user - function defined by pCtx .
*/
SQLITE_API void * sqlite3_get_auxdata ( sqlite3_context * pCtx , int iArg ) {
@ -65996,7 +65996,7 @@ SQLITE_API void *sqlite3_get_auxdata(sqlite3_context *pCtx, int iArg){
}
/*
* * Set the auxilary data pointer and delete function , for the iArg ' th
* * Set the auxili ary data pointer and delete function , for the iArg ' th
* * argument to the user - function defined by pCtx . Any previous value is
* * deleted by calling the delete function specified when it was set .
*/
@ -75506,7 +75506,7 @@ SQLITE_PRIVATE int sqlite3MemJournalSize(void){
/*
* * Walk an expression tree . Invoke the callback once for each node
* * of the expression , while decending . ( In other words , the callback
* * of the expression , while des cending . ( In other words , the callback
* * is invoked before visiting children . )
* *
* * The return value from the callback should be one of the WRC_ *
@ -77026,7 +77026,7 @@ SQLITE_PRIVATE int sqlite3ResolveExprNames(
/*
* * Resolve all names in all expressions of a SELECT and in all
* * decende nts of the SELECT , including compounds off of p - > pPrior ,
* * descenda nts of the SELECT , including compounds off of p - > pPrior ,
* * subqueries in expressions , and subqueries used as FROM clause
* * terms .
* *
@ -77119,7 +77119,7 @@ SQLITE_PRIVATE void sqlite3ResolveSelfReference(
* * affinity of that column is returned . Otherwise , 0x00 is returned ,
* * indicating no affinity for the expression .
* *
* * i . e . the WHERE clause expresss ions in the following statements all
* * i . e . the WHERE clause expressions in the following statements all
* * have an affinity :
* *
* * CREATE TABLE t1 ( a ) ;
@ -77835,7 +77835,7 @@ static int exprStructSize(Expr *p){
* * Note that with flags = = EXPRDUP_REDUCE , this routines works on full - size
* * ( unreduced ) Expr objects as they or originally constructed by the parser .
* * During expression analysis , extra information is computed and moved into
* * later parts of te h Expr object and that extra information might get chopped
* * later parts of the Expr object and that extra information might get chopped
* * off if the expression is reduced . Note also that it does not work to
* * make a EXPRDUP_REDUCE copy of a reduced expression . It is only legal
* * to reduce a pristine expression tree from the parser . The implementation
@ -81503,7 +81503,7 @@ static void renameParentFunc(
* * ALTER TABLE command . The first argument is the text of a CREATE TRIGGER
* * statement . The second is a table name . The table name in the CREATE
* * TRIGGER statement is replaced with the third argument and the result
* * returned . This is anala gous to renameTableFunc ( ) above , except for CREATE
* * returned . This is analo gous to renameTableFunc ( ) above , except for CREATE
* * TRIGGER , not CREATE INDEX and CREATE TABLE .
*/
static void renameTriggerFunc (
@ -83682,7 +83682,7 @@ static void initAvgEq(Index *pIdx){
/* Set nSum to the number of distinct (iCol+1) field prefixes that
* * occur in the stat4 table for this index before pFinal . Set
* * sumEq to the sum of the nEq values for column iCol for the same
* * set ( adding the value only once where there exist dupicate
* * set ( adding the value only once where there exist dupl icate
* * prefixes ) . */
for ( i = 0 ; i < ( pIdx - > nSample - 1 ) ; i + + ) {
if ( aSample [ i ] . anDLt [ iCol ] ! = aSample [ i + 1 ] . anDLt [ iCol ] ) {
@ -95333,7 +95333,7 @@ static int xferOptimization(
}
# endif
# ifndef SQLITE_OMIT_FOREIGN_KEY
/* Disallow the transfer optimization if the destination table cons tains
/* Disallow the transfer optimization if the destination table contains
* * any foreign key constraints . This is more restrictive than necessary .
* * But the main beneficiary of the transfer optimization is the VACUUM
* * command , and the VACUUM command disables foreign key constraints . So
@ -96561,7 +96561,7 @@ static int sqlite3LoadExtension(
* * entry point name " sqlite3_extension_init " was not found , then
* * construct an entry point name " sqlite3_X_init " where the X is
* * replaced by the lowercase value of every ASCII alphabetic
* * character in the filename after the last " / " upto the first " . " ,
* * character in the filename after the last " / " up to the first " . " ,
* * and eliding the first three characters if they are " lib " .
* * Examples :
* *
@ -101878,7 +101878,7 @@ static void generateWithRecursiveQuery(
int iQueue ; /* The Queue table */
int iDistinct = 0 ; /* To ensure unique results if UNION */
int eDest = SRT_Table ; /* How to write to Queue */
SelectDest destQueue ; /* SelectDest targett ing the Queue table */
SelectDest destQueue ; /* SelectDest targeting the Queue table */
int i ; /* Loop counter */
int rc ; /* Result code */
ExprList * pOrderBy ; /* The ORDER BY clause */
@ -102383,7 +102383,7 @@ multi_select_end:
/*
* * Code an output subroutine for a coroutine implementation of a
* * SELECT statment .
* * SELECT state ment .
* *
* * The data to be output is contained in pIn - > iSdst . There are
* * pIn - > nSdst columns to be output . pDest is where the output should
@ -103184,7 +103184,7 @@ static int flattenSubquery(
pSubSrc = pSub - > pSrc ;
assert ( pSubSrc ) ;
/* Prior to version 3.1.2, when LIMIT and OFFSET had to be simple constants,
* * not arbitrary expresss ions , we allowed some combining of LIMIT and OFFSET
* * not arbitrary expressions , we allowed some combining of LIMIT and OFFSET
* * because they could be computed at compile - time . But when LIMIT and OFFSET
* * became arbitrary expressions , we were forced to add restrictions ( 13 )
* * and ( 14 ) . */
@ -103570,7 +103570,7 @@ static u8 minMaxQuery(AggInfo *pAggInfo, ExprList **ppMinMax){
/*
* * The select statement passed as the first argument is an aggregate query .
* * The second argment is the associated aggregate - info object . This
* * The second argu ment is the associated aggregate - info object . This
* * function tests if the SELECT is of the form :
* *
* * SELECT count ( * ) FROM < tbl >
@ -103903,7 +103903,7 @@ static void selectPopWith(Walker *pWalker, Select *p){
* * without worrying about messing up the presistent representation
* * of the view .
* *
* * ( 3 ) Add terms to the WHERE clause to accomodate the NATURAL keyword
* * ( 3 ) Add terms to the WHERE clause to accomm odate the NATURAL keyword
* * on joins and the ON and USING clause of joins .
* *
* * ( 4 ) Scan the list of columns in the result set ( pEList ) looking
@ -104871,7 +104871,7 @@ SQLITE_PRIVATE int sqlite3Select(
*/
if ( pGroupBy ) {
KeyInfo * pKeyInfo ; /* Keying information for the group by clause */
int j1 ; /* A-vs-B comparisi on jump */
int j1 ; /* A-vs-B comparison jump */
int addrOutputRow ; /* Start of subroutine that outputs a result row */
int regOutputRow ; /* Return address register for output subroutine */
int addrSetAbort ; /* Set the abort flag and return */
@ -107168,7 +107168,7 @@ SQLITE_PRIVATE void sqlite3Update(
}
/* Populate the array of registers beginning at regNew with the new
* * row data . This array is used to check constaints , create the new
* * row data . This array is used to check constr aints , create the new
* * table and index records , and as the values for any new . * references
* * made by triggers .
* *
@ -107542,7 +107542,7 @@ static int execExecSql(sqlite3 *db, char **pzErrMsg, const char *zSql){
* * step ( 3 ) requires additional temporary disk space approximately equal
* * to the size of the original database for the rollback journal .
* * Hence , temporary disk space that is approximately 2 x the size of the
* * orginal database is required . Every page of the database is written
* * ori ginal database is required . Every page of the database is written
* * approximately 3 times : Once for step ( 2 ) and twice for step ( 3 ) .
* * Two writes per page are required in step ( 3 ) because the original
* * database content must be written into the rollback journal prior to
@ -109122,7 +109122,7 @@ static int whereLoopResize(sqlite3*, WhereLoop*, int);
* * 1. Then using those as a basis to compute the N best WherePath objects
* * of length 2. And so forth until the length of WherePaths equals the
* * number of nodes in the FROM clause . The best ( lowest cost ) WherePath
* * at the end is the choo sen query plan .
* * at the end is the chosen query plan .
*/
struct WherePath {
Bitmask maskLoop ; /* Bitmask of all WhereLoop objects in this path */
@ -110367,7 +110367,7 @@ static void exprAnalyzeOrTerm(
}
if ( ( chngToIN & getMask ( & pWInfo - > sMaskSet , pOrTerm - > leftCursor ) ) = = 0 ) {
/* This term must be of the form t1.a==t2.b where t2 is in the
* * chngToIN set but t1 is not . This term will be either precee ded
* * chngToIN set but t1 is not . This term will be either preceded
* * or follwed by an inverted copy ( t2 . b = = t1 . a ) . Skip this term
* * and use its inversion . */
testcase ( pOrTerm - > wtFlags & TERM_COPIED ) ;
@ -111396,7 +111396,7 @@ static void whereKeyStats(
* * number of rows that the index scan is expected to visit without
* * considering the range constraints . If nEq is 0 , this is the number of
* * rows in the index . Assuming no error occurs , * pnOut is adjusted ( reduced )
* * to account for the range contraints pLower and pUpper .
* * to account for the range cons traints pLower and pUpper .
* *
* * In the absence of sqlite_stat4 ANALYZE data , or if such data cannot be
* * used , each range inequality reduces the search space by a factor of 4.
@ -114067,7 +114067,7 @@ static int whereLoopAddAll(WhereLoopBuilder *pBuilder){
* * strict . With GROUP BY and DISTINCT the only requirement is that
* * equivalent rows appear immediately adjacent to one another . GROUP BY
* * and DISTINT do not require rows to appear in any particular order as long
* * as equive lent rows are grouped together . Thus for GROUP BY and DISTINCT
* * as equiva lent rows are grouped together . Thus for GROUP BY and DISTINCT
* * the pOrderBy terms can be matched in any order . With ORDER BY , the
* * pOrderBy terms must be matched in strict left - to - right order .
*/
@ -119734,7 +119734,7 @@ SQLITE_PRIVATE const char sqlite3IsEbcdicIdChar[];
* * a statement .
* *
* * ( 4 ) CREATE The keyword CREATE has been seen at the beginning of a
* * statement , possibly precee ded by EXPLAIN and / or followed by
* * statement , possibly preceded by EXPLAIN and / or followed by
* * TEMP or TEMPORARY
* *
* * ( 5 ) TRIGGER We are in the middle of a trigger definition that must be
@ -119787,7 +119787,7 @@ SQLITE_API int sqlite3_complete(const char *zSql){
} ;
# else
/* If triggers are not supported by this compile then the statement machine
* * used to detect the end of a statement is much simpli er
* * used to detect the end of a statement is much simpler
*/
static const u8 trans [ 3 ] [ 3 ] = {
/* Token: */
@ -124622,7 +124622,7 @@ struct Fts3Table {
# endif
# ifdef SQLITE_TEST
/* True to disable the incremental doclist optimization. This is controled
/* True to disable the incremental doclist optimization. This is controll ed
* * by special insert command ' test - no - incr - doclist ' . */
int bNoIncrDoclist ;
# endif
@ -124665,7 +124665,7 @@ struct Fts3Cursor {
/*
* * The Fts3Cursor . eSearch member is always set to one of the following .
* * Actualy , Fts3Cursor . eSearch can be greater than or equal to
* * Actuall y , Fts3Cursor . eSearch can be greater than or equal to
* * FTS3_FULLTEXT_SEARCH . If so , then Fts3Cursor . eSearch - 2 is the index
* * of the column to be searched . For example , in
* *
@ -132785,7 +132785,7 @@ static const char cType[] = {
* *
* * In these routine , the letters are in reverse order . So the ' y ' rule
* * is that ' y ' is a consonant unless it is followed by another
* * consone nt .
* * consona nt .
*/
static int isVowel ( const char * ) ;
static int isConsonant ( const char * z ) {
@ -132881,7 +132881,7 @@ static int doubleConsonant(const char *z){
/*
* * Return TRUE if the word ends with three letters which
* * are consonant - vowel - consone nt and where the final consonant
* * are consonant - vowel - consona nt and where the final consonant
* * is not ' w ' , ' x ' , or ' y ' .
* *
* * The word is reversed here . So we are really checking the
@ -132897,7 +132897,7 @@ static int star_oh(const char *z){
/*
* * If the word ends with zFrom and xCond ( ) is true for the stem
* * of the word that precee ds the zFrom ending , then change the
* * of the word that precede s the zFrom ending , then change the
* * ending to zTo .
* *
* * The input word * pz and zFrom are both in reverse order . zTo
@ -139692,7 +139692,7 @@ SQLITE_PRIVATE int sqlite3Fts3DeferToken(
/*
* * SQLite value pRowid contains the rowid of a row that may or may not be
* * present in the FTS3 table . If it is , delete it and adjust the contents
* * of subsidu ary data structures accordingly .
* * of subsidi ary data structures accordingly .
*/
static int fts3DeleteByRowid (
Fts3Table * p ,
@ -140399,7 +140399,7 @@ static int fts3StringAppend(
}
/* If there is insufficient space allocated at StrBuffer.z, use realloc()
* * to grow the buffer until so that it is big enough to accoma date the
* * to grow the buffer until so that it is big enough to accommo date the
* * appended data .
*/
if ( pStr - > n + nAppend + 1 > = pStr - > nAlloc ) {
@ -141300,7 +141300,7 @@ SQLITE_PRIVATE void sqlite3Fts3Offsets(
sCtx . iTerm = 0 ;
( void ) fts3ExprIterate ( pCsr - > pExpr , fts3ExprTermOffsetInit , ( void * ) & sCtx ) ;
/* Retre ive the text stored in column iCol. If an SQL NULL is stored
/* Retrie ve the text stored in column iCol. If an SQL NULL is stored
* * in column iCol , jump immediately to the next iteration of the loop .
* * If an OOM occurs while retrieving the data ( this can happen if SQLite
* * needs to transform the data from utf - 16 to utf - 8 ) , return SQLITE_NOMEM