Remove the SF_Materialize flag from the SELECT object as it does not

accomplish anything useful.

FossilOrigin-Name: 65d5dcddbd34dfb2733a7a908c7c652ce2d610fe
This commit is contained in:
drh 2014-02-04 20:46:41 +00:00
parent 7df89c8c8a
commit ee06c99b49
5 changed files with 12 additions and 17 deletions

View File

@ -1,5 +1,5 @@
C Rearrange\sfields\sin\sthe\sParse\sobject\sfor\sa\stighter\spacking,\sresulting\sin\nan\s8%\ssize\sreduction\son\sx64.
D 2014-02-04T15:55:25.100
C Remove\sthe\sSF_Materialize\sflag\sfrom\sthe\sSELECT\sobject\sas\sit\sdoes\snot\naccomplish\sanything\suseful.
D 2014-02-04T20:46:41.282
F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
F Makefile.in 2ef13430cd359f7b361bb863504e227b25cc7f81
F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@ -174,7 +174,7 @@ F src/callback.c 174e3c8656bc29f91d710ab61550d16eea34be98
F src/complete.c dc1d136c0feee03c2f7550bafc0d29075e36deac
F src/ctime.c 77779efbe78dd678d84bfb4fc2e87b6b6ad8dccd
F src/date.c 593c744b2623971e45affd0bde347631bdfa4625
F src/delete.c d784e2ee2c6e90fbbd9dcf88a2030c9e12a9318d
F src/delete.c 6765a421f08adbedc5d52d21760ec6dbe5123fd3
F src/expr.c e3e09af908b968305d4efeda8dc3499a087ee7d2
F src/fault.c 160a0c015b6c2629d3899ed2daf63d75754a32bb
F src/fkey.c 2ab0f5384b70594468ef3ac5c7ed8ca24bfd17d5
@ -219,12 +219,12 @@ F src/printf.c 85d07756e45d7496d19439dcae3e6e9e0090f269
F src/random.c d10c1f85b6709ca97278428fd5db5bbb9c74eece
F src/resolve.c 7eda9097b29fcf3d2b42fdc17d1de672134e09b6
F src/rowset.c 64655f1a627c9c212d9ab497899e7424a34222e0
F src/select.c a421f3fb7f52a3c0b37f5caeabd27799e8a9ae58
F src/select.c b78f5e62c283aca2e38657938bc1fec1051df728
F src/shell.c 24722d24d4ea8ca93db35e44db7308de786767ca
F src/sqlite.h.in eed7f7d66a60daaa7b4a597dcd9bad87aad9611b
F src/sqlite3.rc 11094cc6a157a028b301a9f06b3d03089ea37c3e
F src/sqlite3ext.h 886f5a34de171002ad46fae8c36a7d8051c190fc
F src/sqliteInt.h ee8b7647d02470e75b4fc0e8a06b2f178d994670
F src/sqliteInt.h fdab572b3567d587cf3096e3ca5dabcedda3fa66
F src/sqliteLimit.h 164b0e6749d31e0daa1a4589a169d31c0dec7b3d
F src/status.c 7ac05a5c7017d0b9f0b4bcd701228b784f987158
F src/table.c 2cd62736f845d82200acfa1287e33feb3c15d62e
@ -1152,7 +1152,7 @@ F tool/vdbe-compress.tcl 0cf56e9263a152b84da86e75a5c0cdcdb7a47891
F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
F tool/warnings.sh d1a6de74685f360ab718efda6265994b99bbea01
F tool/win/sqlite.vsix 030f3eeaf2cb811a3692ab9c14d021a75ce41fff
P b60cc11ef775c23a2245d9e7a00dab34013f3ccb
R 9fefa46640582f27b969bb2001156b91
P 3e1a3f68d7457ff708222a3448404b593f018fc2
R ade75eb85514e63b06c7a5a5e6c85df2
U drh
Z b3499e6545a6347f51724280bec4401e
Z e551af7aa0a37f40c066574f60e01273

View File

@ -1 +1 @@
3e1a3f68d7457ff708222a3448404b593f018fc2
65d5dcddbd34dfb2733a7a908c7c652ce2d610fe

View File

@ -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);

View File

@ -4552,7 +4552,7 @@ int sqlite3Select(
p->selFlags |= SF_Aggregate;
}
i = -1;
}else if( pTabList->nSrc==1 && (p->selFlags & SF_Materialize)==0
}else if( pTabList->nSrc==1
&& OptimizationEnabled(db, SQLITE_SubqCoroutine)
){
/* Implement a co-routine that will return a single row of the result

View File

@ -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 */