From 6937a96b3bd37de39c06adda94ec49fefa998bb5 Mon Sep 17 00:00:00 2001 From: drh <> Date: Sun, 21 Jul 2024 18:03:07 +0000 Subject: [PATCH] Assert added to ensure that LATERAL subqueries are materialized instead of implemented as a co-routine. FossilOrigin-Name: 6c14b94fb678c70e32519f3e0141f80e6efb3015340a84eb355ab371c5e9facd --- manifest | 12 ++++++------ manifest.uuid | 2 +- src/select.c | 1 + 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/manifest b/manifest index dfaeb8ed89..f94ccddc16 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\sLATERAL\ssubqueries\sso\sthat\sthey\sare\sable\sto\sreference\sother\ssubqueries\nto\stheir\sleft\sthat\sare\simplemented\sas\sco-routines.\s\sSee\n[forum:/forumpost/dfe2cd37ca3a9a80|Forum\spost\sdfe2cd37ca3a9a80]. -D 2024-07-21T10:35:55.433 +C Assert\sadded\sto\sensure\sthat\sLATERAL\ssubqueries\sare\smaterialized\sinstead\sof\nimplemented\sas\sa\sco-routine. +D 2024-07-21T18:03:07.880 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -755,7 +755,7 @@ F src/printf.c 8b250972305e14b365561be5117ed0fd364e4fd58968776df1ce64c6280b90f9 F src/random.c 606b00941a1d7dd09c381d3279a058d771f406c5213c9932bbd93d5587be4b9c F src/resolve.c 24bc6206fea31e1100ffb29bc4eed6908341787c75245c1224575f4393dce383 F src/rowset.c 8432130e6c344b3401a8874c3cb49fefe6873fec593294de077afea2dce5ec97 -F src/select.c c444923c96faf756e14f8f17d3531e873f2bf6f96969a7ee96b56376de0d8205 +F src/select.c 1fdd9e2d9b68b6cf3fb1565c2ef34a48b4c81f154889b1c45ba7050dc035d27d F src/shell.c.in b7d435c137eb323981adff814f172dbaabb9ba504fef17cb11d4681c1633ee13 F src/sqlite.h.in 6c884a87bbf8828562b49272025a1e66e3801a196a58b0bdec87edcd2c9c8fc1 F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 @@ -2196,8 +2196,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P 23d83a41eab35d16bfc960d62d3b29f7bd465d0507bbc68c72b880553f34b58e -R 26224d29f931a16b26e83377d00ea1af +P 31e175fcd0ff823941d4f0f53f7bc6a65fb5b00de78cdb6a9d622cc96b6a6f15 +R 4ac90a965fbd40e87d5aff046cec3c32 U drh -Z ea1f99a577298f10bd44217991d5cb7d +Z 32b67a880021c4d7740dbaa13542f644 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 7ebeb3c739..49bc53f13b 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -31e175fcd0ff823941d4f0f53f7bc6a65fb5b00de78cdb6a9d622cc96b6a6f15 +6c14b94fb678c70e32519f3e0141f80e6efb3015340a84eb355ab371c5e9facd diff --git a/src/select.c b/src/select.c index af8cac1754..372b775757 100644 --- a/src/select.c +++ b/src/select.c @@ -7753,6 +7753,7 @@ int sqlite3Select( */ int addrTop = sqlite3VdbeCurrentAddr(v)+1; + assert( pItem->fg.isLateral==0 ); pItem->regReturn = ++pParse->nMem; sqlite3VdbeAddOp3(v, OP_InitCoroutine, pItem->regReturn, 0, addrTop); VdbeComment((v, "%!S", pItem)); -- 2.47.3