diff options
author | drh <drh@noemail.net> | 2014-02-04 23:45:45 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2014-02-04 23:45:45 +0000 |
commit | e08ecad58a7f11b915920eaf0b9833b87ba02ea3 (patch) | |
tree | 786edb01bf6789f9fde5dad233cd82decb36ea37 | |
parent | ee06c99b49e5812403eb2b2762da4d5fee4e4d18 (diff) | |
download | sqlite-e08ecad58a7f11b915920eaf0b9833b87ba02ea3.tar.gz sqlite-e08ecad58a7f11b915920eaf0b9833b87ba02ea3.zip |
Do not mark the ephemeral tables used to hold the RHS of IN clauses as
unordered because the NGQP will use those ephemeral tables to help order the
output. This is not an issue for standard SQLite since ephemeral tables
there are always ordered, regardless of the hint. It only affects systems
that substitute an alternative storage engine.
FossilOrigin-Name: f2504089df0bf4011864e67825b37f6aa3d03458
-rw-r--r-- | manifest | 12 | ||||
-rw-r--r-- | manifest.uuid | 2 | ||||
-rw-r--r-- | src/expr.c | 1 |
3 files changed, 7 insertions, 8 deletions
@@ -1,5 +1,5 @@ -C Remove\sthe\sSF_Materialize\sflag\sfrom\sthe\sSELECT\sobject\sas\sit\sdoes\snot\naccomplish\sanything\suseful. -D 2014-02-04T20:46:41.282 +C Do\snot\smark\sthe\sephemeral\stables\sused\sto\shold\sthe\sRHS\sof\sIN\sclauses\sas\nunordered\sbecause\sthe\sNGQP\swill\suse\sthose\sephemeral\stables\sto\shelp\sorder\sthe\noutput.\s\sThis\sis\snot\san\sissue\sfor\sstandard\sSQLite\ssince\sephemeral\stables\nthere\sare\salways\sordered,\sregardless\sof\sthe\shint.\s\sIt\sonly\saffects\ssystems\nthat\ssubstitute\san\salternative\sstorage\sengine. +D 2014-02-04T23:45:45.488 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 2ef13430cd359f7b361bb863504e227b25cc7f81 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -175,7 +175,7 @@ F src/complete.c dc1d136c0feee03c2f7550bafc0d29075e36deac F src/ctime.c 77779efbe78dd678d84bfb4fc2e87b6b6ad8dccd F src/date.c 593c744b2623971e45affd0bde347631bdfa4625 F src/delete.c 6765a421f08adbedc5d52d21760ec6dbe5123fd3 -F src/expr.c e3e09af908b968305d4efeda8dc3499a087ee7d2 +F src/expr.c 2c710c35a05486d8e2e142bff1e66bac6ed39a35 F src/fault.c 160a0c015b6c2629d3899ed2daf63d75754a32bb F src/fkey.c 2ab0f5384b70594468ef3ac5c7ed8ca24bfd17d5 F src/func.c f4499b39d66b71825514334ce67b32ff14bd19f5 @@ -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 3e1a3f68d7457ff708222a3448404b593f018fc2 -R ade75eb85514e63b06c7a5a5e6c85df2 +P 65d5dcddbd34dfb2733a7a908c7c652ce2d610fe +R 0cb9b0d02c191eb29e623ef228773cac U drh -Z e551af7aa0a37f40c066574f60e01273 +Z 4064cb60834c8d1598bb0abfd98d0dc6 diff --git a/manifest.uuid b/manifest.uuid index bb6a8f738..bc5d6bafc 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -65d5dcddbd34dfb2733a7a908c7c652ce2d610fe
\ No newline at end of file +f2504089df0bf4011864e67825b37f6aa3d03458
\ No newline at end of file diff --git a/src/expr.c b/src/expr.c index 7323e5d4f..ee9d7877a 100644 --- a/src/expr.c +++ b/src/expr.c @@ -1763,7 +1763,6 @@ int sqlite3CodeSubselect( */ pExpr->iTable = pParse->nTab++; addr = sqlite3VdbeAddOp2(v, OP_OpenEphemeral, pExpr->iTable, !isRowid); - if( rMayHaveNull==0 ) sqlite3VdbeChangeP5(v, BTREE_UNORDERED); pKeyInfo = isRowid ? 0 : sqlite3KeyInfoAlloc(pParse->db, 1, 1); if( ExprHasProperty(pExpr, EP_xIsSelect) ){ |