Fossil SCM

Pull in trunk changes and the latest NGQP updates.

drh 2013-06-18 23:14 UTC sqlite-NGQP merge
Commit d3d4e1117945db539f427d800f5bd910546d18f6
+8 -11
--- src/main.c
+++ src/main.c
@@ -786,33 +786,30 @@
786786
MANIFEST_VERSION " " MANIFEST_DATE " UTC\n");
787787
if(!find_option("verbose","v",0)){
788788
return;
789789
}else{
790790
int count = 0;
791
- fossil_print("\nCompiled using \"%s\" with\nSQLite %s [%s],\nzlib %s, "
792
- "and the following optional features enabled:\n\n",
793
- COMPILER_NAME, SQLITE_VERSION, SQLITE_SOURCE_ID,
794
- ZLIB_VERSION);
791
+ fossil_print("Compiled on %s %s using %s (%d-bit)\n",
792
+ __DATE__, __TIME__, COMPILER_NAME, sizeof(void*)*8);
793
+ fossil_print("SQLite %s [%s],\n", SQLITE_VERSION, SQLITE_SOURCE_ID);
794
+ fossil_print("zlib %s\n", ZLIB_VERSION);
795795
#if defined(FOSSIL_ENABLE_SSL)
796796
++count;
797
- fossil_print("\tSSL (%s)\n", OPENSSL_VERSION_TEXT);
797
+ fossil_print("SSL (%s)\n", OPENSSL_VERSION_TEXT);
798798
#endif
799799
#if defined(FOSSIL_ENABLE_TCL)
800800
++count;
801
- fossil_print("\tTCL (Tcl %s)\n", TCL_PATCH_LEVEL);
801
+ fossil_print("TCL (Tcl %s)\n", TCL_PATCH_LEVEL);
802802
#endif
803803
#if defined(FOSSIL_ENABLE_TCL_STUBS)
804804
++count;
805
- fossil_print("\tTCL_STUBS\n");
805
+ fossil_print("TCL_STUBS\n");
806806
#endif
807807
#if defined(FOSSIL_ENABLE_JSON)
808808
++count;
809
- fossil_print("\tJSON (API %s)\n", FOSSIL_JSON_API_VERSION);
809
+ fossil_print("JSON (API %s)\n", FOSSIL_JSON_API_VERSION);
810810
#endif
811
- if( !count ){
812
- fossil_print("\tNo optional features were enabled.\n");
813
- }
814811
}
815812
}
816813
817814
818815
/*
819816
--- src/main.c
+++ src/main.c
@@ -786,33 +786,30 @@
786 MANIFEST_VERSION " " MANIFEST_DATE " UTC\n");
787 if(!find_option("verbose","v",0)){
788 return;
789 }else{
790 int count = 0;
791 fossil_print("\nCompiled using \"%s\" with\nSQLite %s [%s],\nzlib %s, "
792 "and the following optional features enabled:\n\n",
793 COMPILER_NAME, SQLITE_VERSION, SQLITE_SOURCE_ID,
794 ZLIB_VERSION);
795 #if defined(FOSSIL_ENABLE_SSL)
796 ++count;
797 fossil_print("\tSSL (%s)\n", OPENSSL_VERSION_TEXT);
798 #endif
799 #if defined(FOSSIL_ENABLE_TCL)
800 ++count;
801 fossil_print("\tTCL (Tcl %s)\n", TCL_PATCH_LEVEL);
802 #endif
803 #if defined(FOSSIL_ENABLE_TCL_STUBS)
804 ++count;
805 fossil_print("\tTCL_STUBS\n");
806 #endif
807 #if defined(FOSSIL_ENABLE_JSON)
808 ++count;
809 fossil_print("\tJSON (API %s)\n", FOSSIL_JSON_API_VERSION);
810 #endif
811 if( !count ){
812 fossil_print("\tNo optional features were enabled.\n");
813 }
814 }
815 }
816
817
818 /*
819
--- src/main.c
+++ src/main.c
@@ -786,33 +786,30 @@
786 MANIFEST_VERSION " " MANIFEST_DATE " UTC\n");
787 if(!find_option("verbose","v",0)){
788 return;
789 }else{
790 int count = 0;
791 fossil_print("Compiled on %s %s using %s (%d-bit)\n",
792 __DATE__, __TIME__, COMPILER_NAME, sizeof(void*)*8);
793 fossil_print("SQLite %s [%s],\n", SQLITE_VERSION, SQLITE_SOURCE_ID);
794 fossil_print("zlib %s\n", ZLIB_VERSION);
795 #if defined(FOSSIL_ENABLE_SSL)
796 ++count;
797 fossil_print("SSL (%s)\n", OPENSSL_VERSION_TEXT);
798 #endif
799 #if defined(FOSSIL_ENABLE_TCL)
800 ++count;
801 fossil_print("TCL (Tcl %s)\n", TCL_PATCH_LEVEL);
802 #endif
803 #if defined(FOSSIL_ENABLE_TCL_STUBS)
804 ++count;
805 fossil_print("TCL_STUBS\n");
806 #endif
807 #if defined(FOSSIL_ENABLE_JSON)
808 ++count;
809 fossil_print("JSON (API %s)\n", FOSSIL_JSON_API_VERSION);
810 #endif
 
 
 
811 }
812 }
813
814
815 /*
816
+9 -4
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -670,11 +670,11 @@
670670
** [sqlite3_libversion_number()], [sqlite3_sourceid()],
671671
** [sqlite_version()] and [sqlite_source_id()].
672672
*/
673673
#define SQLITE_VERSION "3.7.17"
674674
#define SQLITE_VERSION_NUMBER 3007017
675
-#define SQLITE_SOURCE_ID "2013-06-18 01:52:41 4c6d58d75d51e1ce829aec214617c3a89e784a2d"
675
+#define SQLITE_SOURCE_ID "2013-06-18 20:06:23 4fbb0c4d26c54aaefbe5397cde2a0b9d2ce3885f"
676676
677677
/*
678678
** CAPI3REF: Run-Time Library Version Numbers
679679
** KEYWORDS: sqlite3_version, sqlite3_sourceid
680680
**
@@ -95705,11 +95705,11 @@
9570595705
}
9570695706
9570795707
sqlite3VtabUnlockList(db);
9570895708
9570995709
pParse->db = db;
95710
- pParse->nQueryLoop = 1;
95710
+ pParse->nQueryLoop = 0; /* Logarithmic, so 0 really means 1 */
9571195711
if( nBytes>=0 && (nBytes==0 || zSql[nBytes-1]!=0) ){
9571295712
char *zSqlCopy;
9571395713
int mxLen = db->aLimit[SQLITE_LIMIT_SQL_LENGTH];
9571495714
testcase( nBytes==mxLen );
9571595715
testcase( nBytes==mxLen+1 );
@@ -95727,11 +95727,11 @@
9572795727
pParse->zTail = &zSql[nBytes];
9572895728
}
9572995729
}else{
9573095730
sqlite3RunParser(pParse, zSql, &zErrMsg);
9573195731
}
95732
- assert( 1==pParse->nQueryLoop );
95732
+ assert( 0==pParse->nQueryLoop );
9573395733
9573495734
if( db->mallocFailed ){
9573595735
pParse->rc = SQLITE_NOMEM;
9573695736
}
9573795737
if( pParse->rc==SQLITE_DONE ) pParse->rc = SQLITE_OK;
@@ -108545,10 +108545,11 @@
108545108545
108546108546
assert( pNew->u.btree.nEq<=pProbe->nColumn );
108547108547
if( pNew->u.btree.nEq < pProbe->nColumn ){
108548108548
iCol = pProbe->aiColumn[pNew->u.btree.nEq];
108549108549
nRowEst = whereCost(pProbe->aiRowEst[pNew->u.btree.nEq+1]);
108550
+ if( nRowEst==0 && pProbe->onError==OE_None ) nRowEst = 1;
108550108551
}else{
108551108552
iCol = -1;
108552108553
nRowEst = 0;
108553108554
}
108554108555
pTerm = whereScanInit(&scan, pBuilder->pWC, pSrc->iCursor, iCol,
@@ -109422,10 +109423,14 @@
109422109423
109423109424
/*
109424109425
** Given the list of WhereLoop objects on pWInfo->pLoops, this routine
109425109426
** attempts to find the lowest cost path that visits each WhereLoop
109426109427
** once. This path is then loaded into the pWInfo->a[].pWLoop fields.
109428
+**
109429
+** Assume that the total number of output rows that will need to be sorted
109430
+** will be nRowEst (in the 10*log2 representation). Or, ignore sorting
109431
+** costs if nRowEst==0.
109427109432
**
109428109433
** Return SQLITE_OK on success or SQLITE_NOMEM of a memory allocation
109429109434
** error occurs.
109430109435
*/
109431109436
static int wherePathSolver(WhereInfo *pWInfo, WhereCost nRowEst){
@@ -110027,11 +110032,11 @@
110027110032
#endif
110028110033
110029110034
wherePathSolver(pWInfo, 0);
110030110035
if( db->mallocFailed ) goto whereBeginError;
110031110036
if( pWInfo->pOrderBy ){
110032
- wherePathSolver(pWInfo, pWInfo->nRowOut);
110037
+ wherePathSolver(pWInfo, pWInfo->nRowOut+1);
110033110038
if( db->mallocFailed ) goto whereBeginError;
110034110039
}
110035110040
}
110036110041
if( pWInfo->pOrderBy==0 && (db->flags & SQLITE_ReverseOrder)!=0 ){
110037110042
pWInfo->revMask = (Bitmask)(-1);
110038110043
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -670,11 +670,11 @@
670 ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
671 ** [sqlite_version()] and [sqlite_source_id()].
672 */
673 #define SQLITE_VERSION "3.7.17"
674 #define SQLITE_VERSION_NUMBER 3007017
675 #define SQLITE_SOURCE_ID "2013-06-18 01:52:41 4c6d58d75d51e1ce829aec214617c3a89e784a2d"
676
677 /*
678 ** CAPI3REF: Run-Time Library Version Numbers
679 ** KEYWORDS: sqlite3_version, sqlite3_sourceid
680 **
@@ -95705,11 +95705,11 @@
95705 }
95706
95707 sqlite3VtabUnlockList(db);
95708
95709 pParse->db = db;
95710 pParse->nQueryLoop = 1;
95711 if( nBytes>=0 && (nBytes==0 || zSql[nBytes-1]!=0) ){
95712 char *zSqlCopy;
95713 int mxLen = db->aLimit[SQLITE_LIMIT_SQL_LENGTH];
95714 testcase( nBytes==mxLen );
95715 testcase( nBytes==mxLen+1 );
@@ -95727,11 +95727,11 @@
95727 pParse->zTail = &zSql[nBytes];
95728 }
95729 }else{
95730 sqlite3RunParser(pParse, zSql, &zErrMsg);
95731 }
95732 assert( 1==pParse->nQueryLoop );
95733
95734 if( db->mallocFailed ){
95735 pParse->rc = SQLITE_NOMEM;
95736 }
95737 if( pParse->rc==SQLITE_DONE ) pParse->rc = SQLITE_OK;
@@ -108545,10 +108545,11 @@
108545
108546 assert( pNew->u.btree.nEq<=pProbe->nColumn );
108547 if( pNew->u.btree.nEq < pProbe->nColumn ){
108548 iCol = pProbe->aiColumn[pNew->u.btree.nEq];
108549 nRowEst = whereCost(pProbe->aiRowEst[pNew->u.btree.nEq+1]);
 
108550 }else{
108551 iCol = -1;
108552 nRowEst = 0;
108553 }
108554 pTerm = whereScanInit(&scan, pBuilder->pWC, pSrc->iCursor, iCol,
@@ -109422,10 +109423,14 @@
109422
109423 /*
109424 ** Given the list of WhereLoop objects on pWInfo->pLoops, this routine
109425 ** attempts to find the lowest cost path that visits each WhereLoop
109426 ** once. This path is then loaded into the pWInfo->a[].pWLoop fields.
 
 
 
 
109427 **
109428 ** Return SQLITE_OK on success or SQLITE_NOMEM of a memory allocation
109429 ** error occurs.
109430 */
109431 static int wherePathSolver(WhereInfo *pWInfo, WhereCost nRowEst){
@@ -110027,11 +110032,11 @@
110027 #endif
110028
110029 wherePathSolver(pWInfo, 0);
110030 if( db->mallocFailed ) goto whereBeginError;
110031 if( pWInfo->pOrderBy ){
110032 wherePathSolver(pWInfo, pWInfo->nRowOut);
110033 if( db->mallocFailed ) goto whereBeginError;
110034 }
110035 }
110036 if( pWInfo->pOrderBy==0 && (db->flags & SQLITE_ReverseOrder)!=0 ){
110037 pWInfo->revMask = (Bitmask)(-1);
110038
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -670,11 +670,11 @@
670 ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
671 ** [sqlite_version()] and [sqlite_source_id()].
672 */
673 #define SQLITE_VERSION "3.7.17"
674 #define SQLITE_VERSION_NUMBER 3007017
675 #define SQLITE_SOURCE_ID "2013-06-18 20:06:23 4fbb0c4d26c54aaefbe5397cde2a0b9d2ce3885f"
676
677 /*
678 ** CAPI3REF: Run-Time Library Version Numbers
679 ** KEYWORDS: sqlite3_version, sqlite3_sourceid
680 **
@@ -95705,11 +95705,11 @@
95705 }
95706
95707 sqlite3VtabUnlockList(db);
95708
95709 pParse->db = db;
95710 pParse->nQueryLoop = 0; /* Logarithmic, so 0 really means 1 */
95711 if( nBytes>=0 && (nBytes==0 || zSql[nBytes-1]!=0) ){
95712 char *zSqlCopy;
95713 int mxLen = db->aLimit[SQLITE_LIMIT_SQL_LENGTH];
95714 testcase( nBytes==mxLen );
95715 testcase( nBytes==mxLen+1 );
@@ -95727,11 +95727,11 @@
95727 pParse->zTail = &zSql[nBytes];
95728 }
95729 }else{
95730 sqlite3RunParser(pParse, zSql, &zErrMsg);
95731 }
95732 assert( 0==pParse->nQueryLoop );
95733
95734 if( db->mallocFailed ){
95735 pParse->rc = SQLITE_NOMEM;
95736 }
95737 if( pParse->rc==SQLITE_DONE ) pParse->rc = SQLITE_OK;
@@ -108545,10 +108545,11 @@
108545
108546 assert( pNew->u.btree.nEq<=pProbe->nColumn );
108547 if( pNew->u.btree.nEq < pProbe->nColumn ){
108548 iCol = pProbe->aiColumn[pNew->u.btree.nEq];
108549 nRowEst = whereCost(pProbe->aiRowEst[pNew->u.btree.nEq+1]);
108550 if( nRowEst==0 && pProbe->onError==OE_None ) nRowEst = 1;
108551 }else{
108552 iCol = -1;
108553 nRowEst = 0;
108554 }
108555 pTerm = whereScanInit(&scan, pBuilder->pWC, pSrc->iCursor, iCol,
@@ -109422,10 +109423,14 @@
109423
109424 /*
109425 ** Given the list of WhereLoop objects on pWInfo->pLoops, this routine
109426 ** attempts to find the lowest cost path that visits each WhereLoop
109427 ** once. This path is then loaded into the pWInfo->a[].pWLoop fields.
109428 **
109429 ** Assume that the total number of output rows that will need to be sorted
109430 ** will be nRowEst (in the 10*log2 representation). Or, ignore sorting
109431 ** costs if nRowEst==0.
109432 **
109433 ** Return SQLITE_OK on success or SQLITE_NOMEM of a memory allocation
109434 ** error occurs.
109435 */
109436 static int wherePathSolver(WhereInfo *pWInfo, WhereCost nRowEst){
@@ -110027,11 +110032,11 @@
110032 #endif
110033
110034 wherePathSolver(pWInfo, 0);
110035 if( db->mallocFailed ) goto whereBeginError;
110036 if( pWInfo->pOrderBy ){
110037 wherePathSolver(pWInfo, pWInfo->nRowOut+1);
110038 if( db->mallocFailed ) goto whereBeginError;
110039 }
110040 }
110041 if( pWInfo->pOrderBy==0 && (db->flags & SQLITE_ReverseOrder)!=0 ){
110042 pWInfo->revMask = (Bitmask)(-1);
110043
+9 -4
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -670,11 +670,11 @@
670670
** [sqlite3_libversion_number()], [sqlite3_sourceid()],
671671
** [sqlite_version()] and [sqlite_source_id()].
672672
*/
673673
#define SQLITE_VERSION "3.7.17"
674674
#define SQLITE_VERSION_NUMBER 3007017
675
-#define SQLITE_SOURCE_ID "2013-06-18 01:52:41 4c6d58d75d51e1ce829aec214617c3a89e784a2d"
675
+#define SQLITE_SOURCE_ID "2013-06-18 20:06:23 4fbb0c4d26c54aaefbe5397cde2a0b9d2ce3885f"
676676
677677
/*
678678
** CAPI3REF: Run-Time Library Version Numbers
679679
** KEYWORDS: sqlite3_version, sqlite3_sourceid
680680
**
@@ -95705,11 +95705,11 @@
9570595705
}
9570695706
9570795707
sqlite3VtabUnlockList(db);
9570895708
9570995709
pParse->db = db;
95710
- pParse->nQueryLoop = 1;
95710
+ pParse->nQueryLoop = 0; /* Logarithmic, so 0 really means 1 */
9571195711
if( nBytes>=0 && (nBytes==0 || zSql[nBytes-1]!=0) ){
9571295712
char *zSqlCopy;
9571395713
int mxLen = db->aLimit[SQLITE_LIMIT_SQL_LENGTH];
9571495714
testcase( nBytes==mxLen );
9571595715
testcase( nBytes==mxLen+1 );
@@ -95727,11 +95727,11 @@
9572795727
pParse->zTail = &zSql[nBytes];
9572895728
}
9572995729
}else{
9573095730
sqlite3RunParser(pParse, zSql, &zErrMsg);
9573195731
}
95732
- assert( 1==pParse->nQueryLoop );
95732
+ assert( 0==pParse->nQueryLoop );
9573395733
9573495734
if( db->mallocFailed ){
9573595735
pParse->rc = SQLITE_NOMEM;
9573695736
}
9573795737
if( pParse->rc==SQLITE_DONE ) pParse->rc = SQLITE_OK;
@@ -108545,10 +108545,11 @@
108545108545
108546108546
assert( pNew->u.btree.nEq<=pProbe->nColumn );
108547108547
if( pNew->u.btree.nEq < pProbe->nColumn ){
108548108548
iCol = pProbe->aiColumn[pNew->u.btree.nEq];
108549108549
nRowEst = whereCost(pProbe->aiRowEst[pNew->u.btree.nEq+1]);
108550
+ if( nRowEst==0 && pProbe->onError==OE_None ) nRowEst = 1;
108550108551
}else{
108551108552
iCol = -1;
108552108553
nRowEst = 0;
108553108554
}
108554108555
pTerm = whereScanInit(&scan, pBuilder->pWC, pSrc->iCursor, iCol,
@@ -109422,10 +109423,14 @@
109422109423
109423109424
/*
109424109425
** Given the list of WhereLoop objects on pWInfo->pLoops, this routine
109425109426
** attempts to find the lowest cost path that visits each WhereLoop
109426109427
** once. This path is then loaded into the pWInfo->a[].pWLoop fields.
109428
+**
109429
+** Assume that the total number of output rows that will need to be sorted
109430
+** will be nRowEst (in the 10*log2 representation). Or, ignore sorting
109431
+** costs if nRowEst==0.
109427109432
**
109428109433
** Return SQLITE_OK on success or SQLITE_NOMEM of a memory allocation
109429109434
** error occurs.
109430109435
*/
109431109436
static int wherePathSolver(WhereInfo *pWInfo, WhereCost nRowEst){
@@ -110027,11 +110032,11 @@
110027110032
#endif
110028110033
110029110034
wherePathSolver(pWInfo, 0);
110030110035
if( db->mallocFailed ) goto whereBeginError;
110031110036
if( pWInfo->pOrderBy ){
110032
- wherePathSolver(pWInfo, pWInfo->nRowOut);
110037
+ wherePathSolver(pWInfo, pWInfo->nRowOut+1);
110033110038
if( db->mallocFailed ) goto whereBeginError;
110034110039
}
110035110040
}
110036110041
if( pWInfo->pOrderBy==0 && (db->flags & SQLITE_ReverseOrder)!=0 ){
110037110042
pWInfo->revMask = (Bitmask)(-1);
110038110043
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -670,11 +670,11 @@
670 ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
671 ** [sqlite_version()] and [sqlite_source_id()].
672 */
673 #define SQLITE_VERSION "3.7.17"
674 #define SQLITE_VERSION_NUMBER 3007017
675 #define SQLITE_SOURCE_ID "2013-06-18 01:52:41 4c6d58d75d51e1ce829aec214617c3a89e784a2d"
676
677 /*
678 ** CAPI3REF: Run-Time Library Version Numbers
679 ** KEYWORDS: sqlite3_version, sqlite3_sourceid
680 **
@@ -95705,11 +95705,11 @@
95705 }
95706
95707 sqlite3VtabUnlockList(db);
95708
95709 pParse->db = db;
95710 pParse->nQueryLoop = 1;
95711 if( nBytes>=0 && (nBytes==0 || zSql[nBytes-1]!=0) ){
95712 char *zSqlCopy;
95713 int mxLen = db->aLimit[SQLITE_LIMIT_SQL_LENGTH];
95714 testcase( nBytes==mxLen );
95715 testcase( nBytes==mxLen+1 );
@@ -95727,11 +95727,11 @@
95727 pParse->zTail = &zSql[nBytes];
95728 }
95729 }else{
95730 sqlite3RunParser(pParse, zSql, &zErrMsg);
95731 }
95732 assert( 1==pParse->nQueryLoop );
95733
95734 if( db->mallocFailed ){
95735 pParse->rc = SQLITE_NOMEM;
95736 }
95737 if( pParse->rc==SQLITE_DONE ) pParse->rc = SQLITE_OK;
@@ -108545,10 +108545,11 @@
108545
108546 assert( pNew->u.btree.nEq<=pProbe->nColumn );
108547 if( pNew->u.btree.nEq < pProbe->nColumn ){
108548 iCol = pProbe->aiColumn[pNew->u.btree.nEq];
108549 nRowEst = whereCost(pProbe->aiRowEst[pNew->u.btree.nEq+1]);
 
108550 }else{
108551 iCol = -1;
108552 nRowEst = 0;
108553 }
108554 pTerm = whereScanInit(&scan, pBuilder->pWC, pSrc->iCursor, iCol,
@@ -109422,10 +109423,14 @@
109422
109423 /*
109424 ** Given the list of WhereLoop objects on pWInfo->pLoops, this routine
109425 ** attempts to find the lowest cost path that visits each WhereLoop
109426 ** once. This path is then loaded into the pWInfo->a[].pWLoop fields.
 
 
 
 
109427 **
109428 ** Return SQLITE_OK on success or SQLITE_NOMEM of a memory allocation
109429 ** error occurs.
109430 */
109431 static int wherePathSolver(WhereInfo *pWInfo, WhereCost nRowEst){
@@ -110027,11 +110032,11 @@
110027 #endif
110028
110029 wherePathSolver(pWInfo, 0);
110030 if( db->mallocFailed ) goto whereBeginError;
110031 if( pWInfo->pOrderBy ){
110032 wherePathSolver(pWInfo, pWInfo->nRowOut);
110033 if( db->mallocFailed ) goto whereBeginError;
110034 }
110035 }
110036 if( pWInfo->pOrderBy==0 && (db->flags & SQLITE_ReverseOrder)!=0 ){
110037 pWInfo->revMask = (Bitmask)(-1);
110038
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -670,11 +670,11 @@
670 ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
671 ** [sqlite_version()] and [sqlite_source_id()].
672 */
673 #define SQLITE_VERSION "3.7.17"
674 #define SQLITE_VERSION_NUMBER 3007017
675 #define SQLITE_SOURCE_ID "2013-06-18 20:06:23 4fbb0c4d26c54aaefbe5397cde2a0b9d2ce3885f"
676
677 /*
678 ** CAPI3REF: Run-Time Library Version Numbers
679 ** KEYWORDS: sqlite3_version, sqlite3_sourceid
680 **
@@ -95705,11 +95705,11 @@
95705 }
95706
95707 sqlite3VtabUnlockList(db);
95708
95709 pParse->db = db;
95710 pParse->nQueryLoop = 0; /* Logarithmic, so 0 really means 1 */
95711 if( nBytes>=0 && (nBytes==0 || zSql[nBytes-1]!=0) ){
95712 char *zSqlCopy;
95713 int mxLen = db->aLimit[SQLITE_LIMIT_SQL_LENGTH];
95714 testcase( nBytes==mxLen );
95715 testcase( nBytes==mxLen+1 );
@@ -95727,11 +95727,11 @@
95727 pParse->zTail = &zSql[nBytes];
95728 }
95729 }else{
95730 sqlite3RunParser(pParse, zSql, &zErrMsg);
95731 }
95732 assert( 0==pParse->nQueryLoop );
95733
95734 if( db->mallocFailed ){
95735 pParse->rc = SQLITE_NOMEM;
95736 }
95737 if( pParse->rc==SQLITE_DONE ) pParse->rc = SQLITE_OK;
@@ -108545,10 +108545,11 @@
108545
108546 assert( pNew->u.btree.nEq<=pProbe->nColumn );
108547 if( pNew->u.btree.nEq < pProbe->nColumn ){
108548 iCol = pProbe->aiColumn[pNew->u.btree.nEq];
108549 nRowEst = whereCost(pProbe->aiRowEst[pNew->u.btree.nEq+1]);
108550 if( nRowEst==0 && pProbe->onError==OE_None ) nRowEst = 1;
108551 }else{
108552 iCol = -1;
108553 nRowEst = 0;
108554 }
108555 pTerm = whereScanInit(&scan, pBuilder->pWC, pSrc->iCursor, iCol,
@@ -109422,10 +109423,14 @@
109423
109424 /*
109425 ** Given the list of WhereLoop objects on pWInfo->pLoops, this routine
109426 ** attempts to find the lowest cost path that visits each WhereLoop
109427 ** once. This path is then loaded into the pWInfo->a[].pWLoop fields.
109428 **
109429 ** Assume that the total number of output rows that will need to be sorted
109430 ** will be nRowEst (in the 10*log2 representation). Or, ignore sorting
109431 ** costs if nRowEst==0.
109432 **
109433 ** Return SQLITE_OK on success or SQLITE_NOMEM of a memory allocation
109434 ** error occurs.
109435 */
109436 static int wherePathSolver(WhereInfo *pWInfo, WhereCost nRowEst){
@@ -110027,11 +110032,11 @@
110032 #endif
110033
110034 wherePathSolver(pWInfo, 0);
110035 if( db->mallocFailed ) goto whereBeginError;
110036 if( pWInfo->pOrderBy ){
110037 wherePathSolver(pWInfo, pWInfo->nRowOut+1);
110038 if( db->mallocFailed ) goto whereBeginError;
110039 }
110040 }
110041 if( pWInfo->pOrderBy==0 && (db->flags & SQLITE_ReverseOrder)!=0 ){
110042 pWInfo->revMask = (Bitmask)(-1);
110043
+1 -1
--- src/sqlite3.h
+++ src/sqlite3.h
@@ -107,11 +107,11 @@
107107
** [sqlite3_libversion_number()], [sqlite3_sourceid()],
108108
** [sqlite_version()] and [sqlite_source_id()].
109109
*/
110110
#define SQLITE_VERSION "3.7.17"
111111
#define SQLITE_VERSION_NUMBER 3007017
112
-#define SQLITE_SOURCE_ID "2013-06-18 01:52:41 4c6d58d75d51e1ce829aec214617c3a89e784a2d"
112
+#define SQLITE_SOURCE_ID "2013-06-18 20:06:23 4fbb0c4d26c54aaefbe5397cde2a0b9d2ce3885f"
113113
114114
/*
115115
** CAPI3REF: Run-Time Library Version Numbers
116116
** KEYWORDS: sqlite3_version, sqlite3_sourceid
117117
**
118118
--- src/sqlite3.h
+++ src/sqlite3.h
@@ -107,11 +107,11 @@
107 ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
108 ** [sqlite_version()] and [sqlite_source_id()].
109 */
110 #define SQLITE_VERSION "3.7.17"
111 #define SQLITE_VERSION_NUMBER 3007017
112 #define SQLITE_SOURCE_ID "2013-06-18 01:52:41 4c6d58d75d51e1ce829aec214617c3a89e784a2d"
113
114 /*
115 ** CAPI3REF: Run-Time Library Version Numbers
116 ** KEYWORDS: sqlite3_version, sqlite3_sourceid
117 **
118
--- src/sqlite3.h
+++ src/sqlite3.h
@@ -107,11 +107,11 @@
107 ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
108 ** [sqlite_version()] and [sqlite_source_id()].
109 */
110 #define SQLITE_VERSION "3.7.17"
111 #define SQLITE_VERSION_NUMBER 3007017
112 #define SQLITE_SOURCE_ID "2013-06-18 20:06:23 4fbb0c4d26c54aaefbe5397cde2a0b9d2ce3885f"
113
114 /*
115 ** CAPI3REF: Run-Time Library Version Numbers
116 ** KEYWORDS: sqlite3_version, sqlite3_sourceid
117 **
118
+1 -1
--- src/sqlite3.h
+++ src/sqlite3.h
@@ -107,11 +107,11 @@
107107
** [sqlite3_libversion_number()], [sqlite3_sourceid()],
108108
** [sqlite_version()] and [sqlite_source_id()].
109109
*/
110110
#define SQLITE_VERSION "3.7.17"
111111
#define SQLITE_VERSION_NUMBER 3007017
112
-#define SQLITE_SOURCE_ID "2013-06-18 01:52:41 4c6d58d75d51e1ce829aec214617c3a89e784a2d"
112
+#define SQLITE_SOURCE_ID "2013-06-18 20:06:23 4fbb0c4d26c54aaefbe5397cde2a0b9d2ce3885f"
113113
114114
/*
115115
** CAPI3REF: Run-Time Library Version Numbers
116116
** KEYWORDS: sqlite3_version, sqlite3_sourceid
117117
**
118118
--- src/sqlite3.h
+++ src/sqlite3.h
@@ -107,11 +107,11 @@
107 ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
108 ** [sqlite_version()] and [sqlite_source_id()].
109 */
110 #define SQLITE_VERSION "3.7.17"
111 #define SQLITE_VERSION_NUMBER 3007017
112 #define SQLITE_SOURCE_ID "2013-06-18 01:52:41 4c6d58d75d51e1ce829aec214617c3a89e784a2d"
113
114 /*
115 ** CAPI3REF: Run-Time Library Version Numbers
116 ** KEYWORDS: sqlite3_version, sqlite3_sourceid
117 **
118
--- src/sqlite3.h
+++ src/sqlite3.h
@@ -107,11 +107,11 @@
107 ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
108 ** [sqlite_version()] and [sqlite_source_id()].
109 */
110 #define SQLITE_VERSION "3.7.17"
111 #define SQLITE_VERSION_NUMBER 3007017
112 #define SQLITE_SOURCE_ID "2013-06-18 20:06:23 4fbb0c4d26c54aaefbe5397cde2a0b9d2ce3885f"
113
114 /*
115 ** CAPI3REF: Run-Time Library Version Numbers
116 ** KEYWORDS: sqlite3_version, sqlite3_sourceid
117 **
118
--- www/changes.wiki
+++ www/changes.wiki
@@ -1,8 +1,8 @@
11
<title>Change Log</title>
22
3
-<h2>Changes For Version 1.26 (as yet unreleased)</h2>
3
+<h2>Changes For Version 1.26 (2013-06-18)</h2>
44
* The argument to the --port option for the [/help?cmd=ui | fossil ui] and
55
[/help?cmd=server | fossil server] commands can take an IP address in addition
66
to the port number, causing Fossil to bind to just that one IP address.
77
* After prompting for a password, also ask if that password should be
88
remembered.
@@ -13,11 +13,11 @@
1313
* The markdown formatter is now available by default and can be used for
1414
tickets, wiki, and embedded documentation.
1515
* Add subcommands "fossil bisect log" and "fossil bisect status" to the
1616
[/help?cmd=bisect | fossil bisect] command, as well as other bisect enhancements.
1717
* Enhanced defenses that prevent spiders from using excessive CPU and bandwidth.
18
- * Consistent us of the -n or --dry-run command line options.
18
+ * Consistent use of the -n or --dry-run command line options.
1919
* Win32: Fossil now understands Cygwin paths containing one or more of
2020
the characters <nowiki>"*:<>?|</nowiki>. Those are normally forbidden in
2121
win32. This means that the win32 fossil.exe is better usable in a Cygwin
2222
environment. See
2323
[http://cygwin.com/cygwin-ug-net/using-specialnames.html#pathnames-specialchars].
2424
--- www/changes.wiki
+++ www/changes.wiki
@@ -1,8 +1,8 @@
1 <title>Change Log</title>
2
3 <h2>Changes For Version 1.26 (as yet unreleased)</h2>
4 * The argument to the --port option for the [/help?cmd=ui | fossil ui] and
5 [/help?cmd=server | fossil server] commands can take an IP address in addition
6 to the port number, causing Fossil to bind to just that one IP address.
7 * After prompting for a password, also ask if that password should be
8 remembered.
@@ -13,11 +13,11 @@
13 * The markdown formatter is now available by default and can be used for
14 tickets, wiki, and embedded documentation.
15 * Add subcommands "fossil bisect log" and "fossil bisect status" to the
16 [/help?cmd=bisect | fossil bisect] command, as well as other bisect enhancements.
17 * Enhanced defenses that prevent spiders from using excessive CPU and bandwidth.
18 * Consistent us of the -n or --dry-run command line options.
19 * Win32: Fossil now understands Cygwin paths containing one or more of
20 the characters <nowiki>"*:<>?|</nowiki>. Those are normally forbidden in
21 win32. This means that the win32 fossil.exe is better usable in a Cygwin
22 environment. See
23 [http://cygwin.com/cygwin-ug-net/using-specialnames.html#pathnames-specialchars].
24
--- www/changes.wiki
+++ www/changes.wiki
@@ -1,8 +1,8 @@
1 <title>Change Log</title>
2
3 <h2>Changes For Version 1.26 (2013-06-18)</h2>
4 * The argument to the --port option for the [/help?cmd=ui | fossil ui] and
5 [/help?cmd=server | fossil server] commands can take an IP address in addition
6 to the port number, causing Fossil to bind to just that one IP address.
7 * After prompting for a password, also ask if that password should be
8 remembered.
@@ -13,11 +13,11 @@
13 * The markdown formatter is now available by default and can be used for
14 tickets, wiki, and embedded documentation.
15 * Add subcommands "fossil bisect log" and "fossil bisect status" to the
16 [/help?cmd=bisect | fossil bisect] command, as well as other bisect enhancements.
17 * Enhanced defenses that prevent spiders from using excessive CPU and bandwidth.
18 * Consistent use of the -n or --dry-run command line options.
19 * Win32: Fossil now understands Cygwin paths containing one or more of
20 the characters <nowiki>"*:<>?|</nowiki>. Those are normally forbidden in
21 win32. This means that the win32 fossil.exe is better usable in a Cygwin
22 environment. See
23 [http://cygwin.com/cygwin-ug-net/using-specialnames.html#pathnames-specialchars].
24

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button