mirror of
https://github.com/sqlite/sqlite.git
synced 2025-11-11 01:42:22 +03:00
Detect any attempt to use an INDEXED BY clause on a CTE and report an
error. FossilOrigin-Name: 35a9de2c97b9a386070e7827a0842bb1caf3af69ea0d6f67ce2a50be3426fb63
This commit is contained in:
12
manifest
12
manifest
@@ -1,5 +1,5 @@
|
|||||||
C Further\sto\sthe\sprevious\scheck-in,\sremove\sthe\s"harmless()"\smacro\sdefinition\sas\nit\sis\sno\slonger\sused.
|
C Detect\sany\sattempt\sto\suse\san\sINDEXED\sBY\sclause\son\sa\sCTE\sand\sreport\san\nerror.
|
||||||
D 2021-10-08T18:15:50.320
|
D 2021-10-09T16:00:56.047
|
||||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
||||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
||||||
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
|
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
|
||||||
@@ -549,7 +549,7 @@ F src/printf.c 5901672228f305f7d493cbc4e7d76a61a5caecdbc1cd06b1f9ec42ea4265cf8d
|
|||||||
F src/random.c 097dc8b31b8fba5a9aca1697aeb9fd82078ec91be734c16bffda620ced7ab83c
|
F src/random.c 097dc8b31b8fba5a9aca1697aeb9fd82078ec91be734c16bffda620ced7ab83c
|
||||||
F src/resolve.c ae65c88f5d0d4bc0052b203773d407efa2387c2bd6b202f87178006c7bb8632c
|
F src/resolve.c ae65c88f5d0d4bc0052b203773d407efa2387c2bd6b202f87178006c7bb8632c
|
||||||
F src/rowset.c ba9515a922af32abe1f7d39406b9d35730ed65efab9443dc5702693b60854c92
|
F src/rowset.c ba9515a922af32abe1f7d39406b9d35730ed65efab9443dc5702693b60854c92
|
||||||
F src/select.c 2367906fef5bf128e31fc695d365463e2e482fc09a80b651ff2a38ed130a9842
|
F src/select.c 9eab80721a24fb05eb03d4bb93d26d1ade0ac707bbb45d917ed39546427b5b3f
|
||||||
F src/shell.c.in ac685e63c506fb2e39375c83347c88bff84dc48fa5d6a59f508d7d67951693a0
|
F src/shell.c.in ac685e63c506fb2e39375c83347c88bff84dc48fa5d6a59f508d7d67951693a0
|
||||||
F src/sqlite.h.in 4e977a5e2ed1a9e8987ff65a2cab5f99a4298ebf040ea5ff636e1753339ff45a
|
F src/sqlite.h.in 4e977a5e2ed1a9e8987ff65a2cab5f99a4298ebf040ea5ff636e1753339ff45a
|
||||||
F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8
|
F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8
|
||||||
@@ -1928,7 +1928,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
|
|||||||
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
||||||
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
||||||
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
||||||
P 87c357c60168fdc52c82382aa7288d66886f5fbe2ae6af68344dbcfdbca9069b
|
P b8c9a54664a87ac464b413390572c3feb912e1efc9c8a78c61f1b370e2165c05
|
||||||
R 1cc86c723eae430b905815a96dda1490
|
R 0dfb0bb10d05f6bb20b43b31156cbd37
|
||||||
U drh
|
U drh
|
||||||
Z bcca30cb5ad97f8aa9cbbd8a97fe1387
|
Z 963494934ee8a982a3213d8ade04cfb3
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
b8c9a54664a87ac464b413390572c3feb912e1efc9c8a78c61f1b370e2165c05
|
35a9de2c97b9a386070e7827a0842bb1caf3af69ea0d6f67ce2a50be3426fb63
|
||||||
@@ -5253,7 +5253,10 @@ static int resolveFromTermToCte(
|
|||||||
if( db->mallocFailed ) return 2;
|
if( db->mallocFailed ) return 2;
|
||||||
pFrom->pSelect->selFlags |= SF_CopyCte;
|
pFrom->pSelect->selFlags |= SF_CopyCte;
|
||||||
assert( pFrom->pSelect );
|
assert( pFrom->pSelect );
|
||||||
assert( pFrom->fg.isIndexedBy==0 ); /* Prevent collision in union u2 */
|
if( pFrom->fg.isIndexedBy ){
|
||||||
|
sqlite3ErrorMsg(pParse, "no such index: \"%s\"", pFrom->u1.zIndexedBy);
|
||||||
|
return 2;
|
||||||
|
}
|
||||||
pFrom->fg.isCte = 1;
|
pFrom->fg.isCte = 1;
|
||||||
pFrom->u2.pCteUse = pCteUse;
|
pFrom->u2.pCteUse = pCteUse;
|
||||||
pCteUse->nUse++;
|
pCteUse->nUse++;
|
||||||
|
|||||||
Reference in New Issue
Block a user