]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Prevent the use of subroutines to implement the RHS of IN operators within
authordrh <drh@noemail.net>
Mon, 24 Dec 2018 11:55:44 +0000 (11:55 +0000)
committerdrh <drh@noemail.net>
Mon, 24 Dec 2018 11:55:44 +0000 (11:55 +0000)
CHECK constraints.

FossilOrigin-Name: 6b24d3fb94e787d25e49501714780dfb0c0c99077102056aa68445f4808cdd57

manifest
manifest.uuid
src/expr.c

index c21a56b48513e6837482ba0ab047680c2fb140c1..409f3baf100c3b2f1573aa4fd7a27c9135b8e3d1 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Experimental\scode\sthat\stries\sto\sput\sthe\scomputation\sof\ssubqueries\sinside\sa\nsubroutine,\sand\sreuse\sthat\ssubroutine\sif\sthe\ssame\ssubquery\sis\sevaluated\smore\nthan\sonce.\s\sCurrent\scode\sdoes\snot\swork\sfor\sCHECK\sconstraints.
-D 2018-12-24T02:34:49.752
+C Prevent\sthe\suse\sof\ssubroutines\sto\simplement\sthe\sRHS\sof\sIN\soperators\swithin\nCHECK\sconstraints.
+D 2018-12-24T11:55:44.935
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F Makefile.in d8b254f8bb81bab43c340d70d17dc3babab40fcc8a348c8255881f780a45fee6
@@ -462,7 +462,7 @@ F src/date.c ebe1dc7c8a347117bb02570f1a931c62dd78f4a2b1b516f4837d45b7d6426957
 F src/dbpage.c 135eb3b5e74f9ef74bde5cec2571192c90c86984fa534c88bf4a055076fa19b7
 F src/dbstat.c 3c8bd4e77f0244fd2bd7cc90acf116ad2f8e82d70e536637f35ac2bc99b726f9
 F src/delete.c f7938125847e8ef485448db5fbad29acb2991381a02887dd854c1617315ab9fb
-F src/expr.c 98076b0c05b8ab467990c0a1b70377b70ad48c63e96f03b9d08d16b08798a892
+F src/expr.c 84b83f3f5cbed871be9388693ca4f5a95ff3104f27cd2e5440ae9f431993f899
 F src/fault.c 460f3e55994363812d9d60844b2a6de88826e007
 F src/fkey.c 012dd7dba1a62fda6b76e633ab303b2232ee2874a685c915065227ab20ad6ae0
 F src/func.c 7c288b4ce309b5a8b8473514b88e1f8e69a80134509a8c0db8e39c858e367e7f
@@ -1792,10 +1792,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 2b6494b1509f0d0189f98aa34c990eee99c775ff57826e79b2c5b0a12b4c97ad
-R fb44a7719019fd77dd18f789a3532b3a
-T *branch * reuse-subqueries
-T *sym-reuse-subqueries *
-T -sym-trunk *
+P 6c44838adbe5dc482bc010e91a6dd7a0f777c989f443dd600740d2c783208e0d
+R 6f0a94a77ca115e013dd9613f7a15558
 U drh
-Z dfb417c264f2e2790a098e45799008c5
+Z 99764aebcfc0079a08b35b46938a27b1
index 98a3229c8880f7de78bd4540863310b98f488ccc..067dcad3341583c5231fd535c55559547a4fb4d0 100644 (file)
@@ -1 +1 @@
-6c44838adbe5dc482bc010e91a6dd7a0f777c989f443dd600740d2c783208e0d
\ No newline at end of file
+6b24d3fb94e787d25e49501714780dfb0c0c99077102056aa68445f4808cdd57
\ No newline at end of file
index dba01b4d8cc5df45087b9754c715106e6cfdfd6b..f438f26fc347ddcc918e94dc59654647fedf09b9 100644 (file)
@@ -2685,7 +2685,7 @@ void sqlite3CodeRhsOfIN(
   ** If all of the above are false, then we can compute the RHS just once
   ** and reuse it many names.
   */
-  if( !ExprHasProperty(pExpr, EP_VarSelect) ){
+  if( !ExprHasProperty(pExpr, EP_VarSelect) && pParse->iSelfTab==0 ){
     /* Reuse of the RHS is allowed */
     /* If this routine has already been coded, but the previous code
     ** might not have been invoked yet, so invoke it now as a subroutine.