1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-12 13:01:09 +03:00

Do not restore the iSelectId value until after the last SELECTTRACE when

debugging Select processing.

FossilOrigin-Name: 8088d8cac317adb96e357a8f4a196d7c1e0115af9c2335f167b4d7e7154299b0
This commit is contained in:
drh
2018-04-23 17:09:58 +00:00
parent b3b0d317e0
commit 1bddf23b89
3 changed files with 9 additions and 9 deletions

View File

@@ -1,5 +1,5 @@
C In\sthe\s".selecttrace"\soutput,\sinclude\sthe\sEXPLAIN\sQUERY\sPLAN\siSelectId\sas\npart\sof\seach\sSelect\sidentifier. C Do\snot\srestore\sthe\siSelectId\svalue\suntil\safter\sthe\slast\sSELECTTRACE\swhen\ndebugging\sSelect\sprocessing.
D 2018-04-23T17:02:14.478 D 2018-04-23T17:09:58.431
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 Makefile.in 5ce9343cba9c189046f1afe6d2bcc1f68079439febc05267b98aec6ecc752439 F Makefile.in 5ce9343cba9c189046f1afe6d2bcc1f68079439febc05267b98aec6ecc752439
@@ -492,7 +492,7 @@ F src/printf.c d3b7844ddeb11fbbdd38dd84d09c9c1ac171d21fb038473c3aa97981201cc660
F src/random.c 80f5d666f23feb3e6665a6ce04c7197212a88384 F src/random.c 80f5d666f23feb3e6665a6ce04c7197212a88384
F src/resolve.c 6415381a0e9d22c0e7cba33ca4a53f81474190862f5d4838190f5eb5b0b47bc9 F src/resolve.c 6415381a0e9d22c0e7cba33ca4a53f81474190862f5d4838190f5eb5b0b47bc9
F src/rowset.c 7b7e7e479212e65b723bf40128c7b36dc5afdfac F src/rowset.c 7b7e7e479212e65b723bf40128c7b36dc5afdfac
F src/select.c f8ce94703bd9a4058202d1858c3bf0041a7e3badf58e545ffe3b6500823cd50f F src/select.c 96ed6724a8c360c441445de32e99e1763b136219c83f5028d3f555f502dfe5a7
F src/shell.c.in 8ab4687da814ddc4adf6ea0fcd43ea1eb2784ee6915674dd690759241b7a24b3 F src/shell.c.in 8ab4687da814ddc4adf6ea0fcd43ea1eb2784ee6915674dd690759241b7a24b3
F src/sqlite.h.in aa9bd3ae4a077c7002059cb418271abe52214b0227b2a734bc44736b24cbcc40 F src/sqlite.h.in aa9bd3ae4a077c7002059cb418271abe52214b0227b2a734bc44736b24cbcc40
F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8
@@ -1725,7 +1725,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 d47a6bdda0ce967a7b70bc6eb56278c8b79525622381ff4adcf04525eafc1461 P 5c6339f955eaa550c7d112488d7830e67ceacba4fbba12e1c5ce2970980159e0
R b537b2500de8fa9b5f3090ec22fa10dc R dcbce3b7b5d783ef8f18f7278fefb70e
U drh U drh
Z 87f373dcce10833c43fff9f08e681aae Z d0f4a98c3a2364de015322e4d5ad2b11

View File

@@ -1 +1 @@
5c6339f955eaa550c7d112488d7830e67ceacba4fbba12e1c5ce2970980159e0 8088d8cac317adb96e357a8f4a196d7c1e0115af9c2335f167b4d7e7154299b0

View File

@@ -5486,10 +5486,10 @@ int sqlite3Select(
*/ */
if( p->pPrior ){ if( p->pPrior ){
rc = multiSelect(pParse, p, pDest); rc = multiSelect(pParse, p, pDest);
explainSetInteger(pParse->iSelectId, iRestoreSelectId);
#if SELECTTRACE_ENABLED #if SELECTTRACE_ENABLED
SELECTTRACE(1,pParse,p,("end compound-select processing\n")); SELECTTRACE(1,pParse,p,("end compound-select processing\n"));
#endif #endif
explainSetInteger(pParse->iSelectId, iRestoreSelectId);
return rc; return rc;
} }
#endif #endif
@@ -6274,12 +6274,12 @@ int sqlite3Select(
** successful coding of the SELECT. ** successful coding of the SELECT.
*/ */
select_end: select_end:
explainSetInteger(pParse->iSelectId, iRestoreSelectId);
sqlite3ExprListDelete(db, pMinMaxOrderBy); sqlite3ExprListDelete(db, pMinMaxOrderBy);
sqlite3DbFree(db, sAggInfo.aCol); sqlite3DbFree(db, sAggInfo.aCol);
sqlite3DbFree(db, sAggInfo.aFunc); sqlite3DbFree(db, sAggInfo.aFunc);
#if SELECTTRACE_ENABLED #if SELECTTRACE_ENABLED
SELECTTRACE(1,pParse,p,("end processing\n")); SELECTTRACE(1,pParse,p,("end processing\n"));
#endif #endif
explainSetInteger(pParse->iSelectId, iRestoreSelectId);
return rc; return rc;
} }