aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2014-02-04 20:46:41 +0000
committerdrh <drh@noemail.net>2014-02-04 20:46:41 +0000
commitee06c99b49e5812403eb2b2762da4d5fee4e4d18 (patch)
treed1743edc71b089ad8c58405d4975b3572d7d2805 /src
parent7df89c8c8a9a9e6232e602e102edfdbcbfb8f1af (diff)
downloadsqlite-ee06c99b49e5812403eb2b2762da4d5fee4e4d18.tar.gz
sqlite-ee06c99b49e5812403eb2b2762da4d5fee4e4d18.zip
Remove the SF_Materialize flag from the SELECT object as it does not
accomplish anything useful. FossilOrigin-Name: 65d5dcddbd34dfb2733a7a908c7c652ce2d610fe
Diffstat (limited to 'src')
-rw-r--r--src/delete.c5
-rw-r--r--src/select.c4
-rw-r--r--src/sqliteInt.h2
3 files changed, 3 insertions, 8 deletions
diff --git a/src/delete.c b/src/delete.c
index e98ad6d60..936517c4a 100644
--- a/src/delete.c
+++ b/src/delete.c
@@ -97,10 +97,8 @@ void sqlite3MaterializeView(
SrcList *pFrom;
sqlite3 *db = pParse->db;
int iDb = sqlite3SchemaToIndex(db, pView->pSchema);
-
pWhere = sqlite3ExprDup(db, pWhere, 0);
pFrom = sqlite3SrcListAppend(db, 0, 0, 0);
-
if( pFrom ){
assert( pFrom->nSrc==1 );
pFrom->a[0].zName = sqlite3DbStrDup(db, pView->zName);
@@ -108,10 +106,7 @@ void sqlite3MaterializeView(
assert( pFrom->a[0].pOn==0 );
assert( pFrom->a[0].pUsing==0 );
}
-
pSel = sqlite3SelectNew(pParse, 0, pFrom, pWhere, 0, 0, 0, 0, 0, 0);
- if( pSel ) pSel->selFlags |= SF_Materialize;
-
sqlite3SelectDestInit(&dest, SRT_EphemTab, iCur);
sqlite3Select(pParse, pSel, &dest);
sqlite3SelectDelete(db, pSel);
diff --git a/src/select.c b/src/select.c
index c78d99780..f923766c8 100644
--- a/src/select.c
+++ b/src/select.c
@@ -4552,8 +4552,8 @@ int sqlite3Select(
p->selFlags |= SF_Aggregate;
}
i = -1;
- }else if( pTabList->nSrc==1 && (p->selFlags & SF_Materialize)==0
- && OptimizationEnabled(db, SQLITE_SubqCoroutine)
+ }else if( pTabList->nSrc==1
+ && OptimizationEnabled(db, SQLITE_SubqCoroutine)
){
/* Implement a co-routine that will return a single row of the result
** set on each invocation.
diff --git a/src/sqliteInt.h b/src/sqliteInt.h
index 0d1342a56..7c5e1e3ed 100644
--- a/src/sqliteInt.h
+++ b/src/sqliteInt.h
@@ -2161,7 +2161,7 @@ struct Select {
#define SF_HasTypeInfo 0x0020 /* FROM subqueries have Table metadata */
#define SF_UseSorter 0x0040 /* Sort using a sorter */
#define SF_Values 0x0080 /* Synthesized from VALUES clause */
-#define SF_Materialize 0x0100 /* Force materialization of views */
+#define SF_Materialize 0x0100 /* NOT USED */
#define SF_NestedFrom 0x0200 /* Part of a parenthesized FROM clause */
#define SF_MaybeConvert 0x0400 /* Need convertCompoundSelectToSubquery() */
#define SF_Recursive 0x0800 /* The recursive part of a recursive CTE */