Fossil SCM

SQLite bug fix. Change a LIKE to a GLOB so that it can use an index.

drh 2010-04-07 20:35 trunk
Commit 5721bce8853fc3594aa52c4191b5ff46f41fa031
3 files changed +1 -1 +4 -1 +1 -1
+1 -1
--- src/info.c
+++ src/info.c
@@ -1105,11 +1105,11 @@
11051105
int rid;
11061106
11071107
zName = P("name");
11081108
if( zName==0 ) fossil_redirect_home();
11091109
if( validate16(zName, strlen(zName))
1110
- && db_exists("SELECT 1 FROM ticket WHERE tkt_uuid LIKE '%q%%'", zName) ){
1110
+ && db_exists("SELECT 1 FROM ticket WHERE tkt_uuid GLOB '%q*'", zName) ){
11111111
tktview_page();
11121112
return;
11131113
}
11141114
blob_set(&uuid, zName);
11151115
if( name_to_uuid(&uuid, 1) ){
11161116
--- src/info.c
+++ src/info.c
@@ -1105,11 +1105,11 @@
1105 int rid;
1106
1107 zName = P("name");
1108 if( zName==0 ) fossil_redirect_home();
1109 if( validate16(zName, strlen(zName))
1110 && db_exists("SELECT 1 FROM ticket WHERE tkt_uuid LIKE '%q%%'", zName) ){
1111 tktview_page();
1112 return;
1113 }
1114 blob_set(&uuid, zName);
1115 if( name_to_uuid(&uuid, 1) ){
1116
--- src/info.c
+++ src/info.c
@@ -1105,11 +1105,11 @@
1105 int rid;
1106
1107 zName = P("name");
1108 if( zName==0 ) fossil_redirect_home();
1109 if( validate16(zName, strlen(zName))
1110 && db_exists("SELECT 1 FROM ticket WHERE tkt_uuid GLOB '%q*'", zName) ){
1111 tktview_page();
1112 return;
1113 }
1114 blob_set(&uuid, zName);
1115 if( name_to_uuid(&uuid, 1) ){
1116
+4 -1
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -628,11 +628,11 @@
628628
** [sqlite3_libversion_number()], [sqlite3_sourceid()],
629629
** [sqlite_version()] and [sqlite_source_id()].
630630
*/
631631
#define SQLITE_VERSION "3.6.23"
632632
#define SQLITE_VERSION_NUMBER 3006023
633
-#define SQLITE_SOURCE_ID "2010-04-07 19:32:00 1f40441204d9a912b1d6b67ff6ff9e17146c7abd"
633
+#define SQLITE_SOURCE_ID "2010-04-07 20:32:19 e388fe8be878c80ef0bfd1699a7268cdb22cb3c6"
634634
635635
/*
636636
** CAPI3REF: Run-Time Library Version Numbers
637637
** KEYWORDS: sqlite3_version, sqlite3_sourceid
638638
**
@@ -41997,10 +41997,13 @@
4199741997
rc = sqlite3PagerSavepoint(pBt->pPager, op, iSavepoint);
4199841998
if( rc==SQLITE_OK ){
4199941999
if( iSavepoint<0 && pBt->initiallyEmpty ) pBt->nPage = 0;
4200042000
rc = newDatabase(pBt);
4200142001
pBt->nPage = get4byte(28 + pBt->pPage1->aData);
42002
+ if( pBt->nPage==0 ){
42003
+ sqlite3PagerPagecount(pBt->pPager, (int*)&pBt->nPage);
42004
+ }
4200242005
}
4200342006
sqlite3BtreeLeave(p);
4200442007
}
4200542008
return rc;
4200642009
}
4200742010
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -628,11 +628,11 @@
628 ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
629 ** [sqlite_version()] and [sqlite_source_id()].
630 */
631 #define SQLITE_VERSION "3.6.23"
632 #define SQLITE_VERSION_NUMBER 3006023
633 #define SQLITE_SOURCE_ID "2010-04-07 19:32:00 1f40441204d9a912b1d6b67ff6ff9e17146c7abd"
634
635 /*
636 ** CAPI3REF: Run-Time Library Version Numbers
637 ** KEYWORDS: sqlite3_version, sqlite3_sourceid
638 **
@@ -41997,10 +41997,13 @@
41997 rc = sqlite3PagerSavepoint(pBt->pPager, op, iSavepoint);
41998 if( rc==SQLITE_OK ){
41999 if( iSavepoint<0 && pBt->initiallyEmpty ) pBt->nPage = 0;
42000 rc = newDatabase(pBt);
42001 pBt->nPage = get4byte(28 + pBt->pPage1->aData);
 
 
 
42002 }
42003 sqlite3BtreeLeave(p);
42004 }
42005 return rc;
42006 }
42007
--- src/sqlite3.c
+++ src/sqlite3.c
@@ -628,11 +628,11 @@
628 ** [sqlite3_libversion_number()], [sqlite3_sourceid()],
629 ** [sqlite_version()] and [sqlite_source_id()].
630 */
631 #define SQLITE_VERSION "3.6.23"
632 #define SQLITE_VERSION_NUMBER 3006023
633 #define SQLITE_SOURCE_ID "2010-04-07 20:32:19 e388fe8be878c80ef0bfd1699a7268cdb22cb3c6"
634
635 /*
636 ** CAPI3REF: Run-Time Library Version Numbers
637 ** KEYWORDS: sqlite3_version, sqlite3_sourceid
638 **
@@ -41997,10 +41997,13 @@
41997 rc = sqlite3PagerSavepoint(pBt->pPager, op, iSavepoint);
41998 if( rc==SQLITE_OK ){
41999 if( iSavepoint<0 && pBt->initiallyEmpty ) pBt->nPage = 0;
42000 rc = newDatabase(pBt);
42001 pBt->nPage = get4byte(28 + pBt->pPage1->aData);
42002 if( pBt->nPage==0 ){
42003 sqlite3PagerPagecount(pBt->pPager, (int*)&pBt->nPage);
42004 }
42005 }
42006 sqlite3BtreeLeave(p);
42007 }
42008 return rc;
42009 }
42010
+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.6.23"
111111
#define SQLITE_VERSION_NUMBER 3006023
112
-#define SQLITE_SOURCE_ID "2010-04-07 19:32:00 1f40441204d9a912b1d6b67ff6ff9e17146c7abd"
112
+#define SQLITE_SOURCE_ID "2010-04-07 20:32:19 e388fe8be878c80ef0bfd1699a7268cdb22cb3c6"
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.6.23"
111 #define SQLITE_VERSION_NUMBER 3006023
112 #define SQLITE_SOURCE_ID "2010-04-07 19:32:00 1f40441204d9a912b1d6b67ff6ff9e17146c7abd"
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.6.23"
111 #define SQLITE_VERSION_NUMBER 3006023
112 #define SQLITE_SOURCE_ID "2010-04-07 20:32:19 e388fe8be878c80ef0bfd1699a7268cdb22cb3c6"
113
114 /*
115 ** CAPI3REF: Run-Time Library Version Numbers
116 ** KEYWORDS: sqlite3_version, sqlite3_sourceid
117 **
118

Keyboard Shortcuts

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