Fossil SCM

Use a CROSS JOIN to fix an inefficient query in the indexed full-text search.

drh 2015-02-03 15:24 trunk
Commit 005ba1e28f029efda7eea1a9de3c6c565e668b80
1 file changed +1 -1
+1 -1
--- src/search.c
+++ src/search.c
@@ -745,11 +745,11 @@
745745
" SELECT ftsdocs.label,"
746746
" ftsdocs.url,"
747747
" rank(matchinfo(ftsidx,'pcsx')),"
748748
" datetime(ftsdocs.mtime),"
749749
" snippet(ftsidx,'<mark>','</mark>',' ... ')"
750
- " FROM ftsidx, ftsdocs"
750
+ " FROM ftsidx CROSS JOIN ftsdocs"
751751
" WHERE ftsidx MATCH %Q"
752752
" AND ftsdocs.rowid=ftsidx.docid",
753753
zPattern
754754
);
755755
if( srchFlags!=SRCH_ALL ){
756756
--- src/search.c
+++ src/search.c
@@ -745,11 +745,11 @@
745 " SELECT ftsdocs.label,"
746 " ftsdocs.url,"
747 " rank(matchinfo(ftsidx,'pcsx')),"
748 " datetime(ftsdocs.mtime),"
749 " snippet(ftsidx,'<mark>','</mark>',' ... ')"
750 " FROM ftsidx, ftsdocs"
751 " WHERE ftsidx MATCH %Q"
752 " AND ftsdocs.rowid=ftsidx.docid",
753 zPattern
754 );
755 if( srchFlags!=SRCH_ALL ){
756
--- src/search.c
+++ src/search.c
@@ -745,11 +745,11 @@
745 " SELECT ftsdocs.label,"
746 " ftsdocs.url,"
747 " rank(matchinfo(ftsidx,'pcsx')),"
748 " datetime(ftsdocs.mtime),"
749 " snippet(ftsidx,'<mark>','</mark>',' ... ')"
750 " FROM ftsidx CROSS JOIN ftsdocs"
751 " WHERE ftsidx MATCH %Q"
752 " AND ftsdocs.rowid=ftsidx.docid",
753 zPattern
754 );
755 if( srchFlags!=SRCH_ALL ){
756

Keyboard Shortcuts

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