From: drh <> Date: Sat, 20 Mar 2021 15:46:01 +0000 (+0000) Subject: Use the canonical name, not the AS name, when showing the MATERIALIZE or X-Git-Tag: version-3.36.0~299^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2f2091b10e28fc76a9c30e084a4eb2c466a75674;p=thirdparty%2Fsqlite.git Use the canonical name, not the AS name, when showing the MATERIALIZE or CO-ROUTINE lines for a CTE. FossilOrigin-Name: 1b83e232c490fe6e9f999d30399faebfac6094bf940dc21dc459ed2c97657cb2 --- diff --git a/manifest b/manifest index 6b7d4686f3..f6c9a71b69 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Revise\stests\scases\sto\salign\swith\sthe\snew\sEXPLAIN\sQUERY\sPLAN\soutput. -D 2021-03-20T15:11:29.894 +C Use\sthe\scanonical\sname,\snot\sthe\sAS\sname,\swhen\sshowing\sthe\sMATERIALIZE\sor\nCO-ROUTINE\slines\sfor\sa\sCTE. +D 2021-03-20T15:46:01.337 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -538,7 +538,7 @@ F src/pcache1.c 388304fd2d91c39591080b5e0f3c62cfba87db20370e7e0554062bfb29740e9f F src/pragma.c eb42cb9bec189cf18cef5d8fcae56e13bb73ef2b019b198fb48740ced81bce95 F src/pragma.h 8dc78ab7e9ec6ce3ded8332810a2066f1ef6267e2e03cd7356ee00276125c6cf F src/prepare.c e21b54489b5c73b06ada15e6fc79b5c6f64b06701924a6ca98944ae59e06256f -F src/printf.c 987fdc0ea410ef5eae634a538403faf89c7e6ec9b5b70457d5148605aa9f1241 +F src/printf.c 85d3413fa526404f053a2a13150492f94900639fca4c1b2f74a312b5d777a5c3 F src/random.c 80f5d666f23feb3e6665a6ce04c7197212a88384 F src/resolve.c dd47248c2c914feb0d4428c27d782e2723971d32cfa5536f49306d080df4d45a F src/rowset.c ba9515a922af32abe1f7d39406b9d35730ed65efab9443dc5702693b60854c92 @@ -631,7 +631,7 @@ F src/wal.h c3aa7825bfa2fe0d85bef2db94655f99870a285778baa36307c0a16da32b226a F src/walker.c d42d6c80ea363ef689a462e65eefcfe87deab924c50de5baa37ecb6af7d7ddaa F src/where.c 10d06b16670a1d2a992d52a9f08e49426d38a08fb0a7ae5f7f62fd023d560e1e F src/whereInt.h 446e5e8018f83358ef917cf32d8e6a86dc8430113d0b17e720f1839d3faa44c4 -F src/wherecode.c 40a5d24cd042fea137ec821725c57c3586d8b92a08da8a47e870c0695bff0817 +F src/wherecode.c c7354c9749f015f37bc32e15a4257a5155fa5d2b79f605f528bd09f3b9f1b4e6 F src/whereexpr.c 53452fe2fb07be2f4cb17f55cc721416fae0092c00717f106faf289c990b6494 F src/window.c 7e89ac4b6cd6bb9b7772234a625d19c39b530f4ac06e43688a8b7e6a1ab512a2 F test/8_3_names.test ebbb5cd36741350040fd28b432ceadf495be25b2 @@ -1789,10 +1789,10 @@ F test/windowfault.test d543d46571b32d19f198cb04b6505747fabf3cc369970daae47074ee F test/windowpushd.test d8895d08870b7226f7693665bd292eb177e62ca06799184957b3ca7dc03067df F test/with1.test b231edbf0f7c1d94bc14365cd9f33e197b2f0aa16add927ee121649fce014c15 F test/with2.test 000fb95f1f29dae868cea0f41505eb5126077d49eb967ff88f9ee46212ad8863 -F test/with3.test e223b72a349a1f36561757d6bd918ec966ed200147f8d8293771487267ee4983 +F test/with3.test ad32d13ad50661e6fa305f62a0717649c348792e7b658bf2644976227a9e0373 F test/with4.test 257be66c0c67fee1defbbac0f685c3465e2cad037f21ce65f23f86084f198205 F test/with5.test 6248213c41fab36290b5b73aa3f937309dfba337004d9d8434c3fabc8c7d4be8 -F test/with6.test 3ac280f6ceb8ce493dca2b36a4038f486710445fb62f6bfbba43d04c991f63cf +F test/with6.test 661d7e416bef6c0a2556b2c9f0c8178a5b15932bed65246abed99723a8d4e7c0 F test/withM.test 693b61765f2b387b5e3e24a4536e2e82de15ff64 F test/without_rowid1.test e4034c0849ccc2e8bb749c69f15bd69bb9fcf8fe77e8d17ce02369604242fe83 F test/without_rowid2.test af260339f79d13cb220288b67cd287fbcf81ad99 @@ -1910,7 +1910,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 1fadd30525dbf22678ba014b78af3a0fb33047692f073b7c62a90a028081ac48 -R 7666c425ea77f28b35eec29e0104fd77 +P 50fbd532602d2c316813046ed6be8be2991c281eb5f295c4c28520a0de73862c +R 8aabd5e1a73e25702742b13fe62bc444 U drh -Z c0db795a2f90d970c03a8b0a7ba43e6f +Z 0b6f36b63a67910ac9a53d6251caaa0a diff --git a/manifest.uuid b/manifest.uuid index 3d885a72ae..f6f7c2d78a 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -50fbd532602d2c316813046ed6be8be2991c281eb5f295c4c28520a0de73862c \ No newline at end of file +1b83e232c490fe6e9f999d30399faebfac6094bf940dc21dc459ed2c97657cb2 \ No newline at end of file diff --git a/src/printf.c b/src/printf.c index 48382143b1..6f3b5681ac 100644 --- a/src/printf.c +++ b/src/printf.c @@ -102,7 +102,7 @@ static const et_info fmtinfo[] = { /* Notes: ** ** %S Takes a pointer to SrcItem. Shows name or database.name -** %!S Like %S but also shows AS alias if an alias is available +** %!S Like %S but prefer the zName over the zAlias */ /* Floating point constants used for rounding */ @@ -864,7 +864,7 @@ void sqlite3_str_vappendf( if( (pAccum->printfFlags & SQLITE_PRINTF_INTERNAL)==0 ) return; pItem = va_arg(ap, SrcItem*); assert( bArgList==0 ); - if( pItem->zAlias ){ + if( pItem->zAlias && !flag_altform2 ){ sqlite3_str_appendall(pAccum, pItem->zAlias); }else if( pItem->zName ){ if( pItem->zDatabase ){ @@ -872,6 +872,8 @@ void sqlite3_str_vappendf( sqlite3_str_append(pAccum, ".", 1); } sqlite3_str_appendall(pAccum, pItem->zName); + }else if( pItem->zAlias ){ + sqlite3_str_appendall(pAccum, pItem->zAlias); }else if( pItem->pSelect ){ sqlite3_str_appendf(pAccum, "SUBQUERY %u", pItem->pSelect->selId); } diff --git a/src/wherecode.c b/src/wherecode.c index 195c08de3e..771a50fc7b 100644 --- a/src/wherecode.c +++ b/src/wherecode.c @@ -149,7 +149,7 @@ int sqlite3WhereExplainOneScan( sqlite3StrAccumInit(&str, db, zBuf, sizeof(zBuf), SQLITE_MAX_LENGTH); str.printfFlags = SQLITE_PRINTF_INTERNAL; - sqlite3_str_appendf(&str, "%s %!S", isSearch ? "SEARCH" : "SCAN", pItem); + sqlite3_str_appendf(&str, "%s %S", isSearch ? "SEARCH" : "SCAN", pItem); if( (flags & (WHERE_IPK|WHERE_VIRTUALTABLE))==0 ){ const char *zFmt = 0; Index *pIdx; diff --git a/test/with3.test b/test/with3.test index 67f286e2bc..8e8eba89f6 100644 --- a/test/with3.test +++ b/test/with3.test @@ -207,7 +207,7 @@ do_eqp_test 5.1 { ORDER BY 1; } { QUERY PLAN - |--MATERIALIZE x1 + |--MATERIALIZE c | |--SETUP | | `--SCAN CONSTANT ROW | `--RECURSIVE STEP diff --git a/test/with6.test b/test/with6.test index 8a04fe1e3b..333147d8be 100644 --- a/test/with6.test +++ b/test/with6.test @@ -30,7 +30,7 @@ do_eqp_test 101 { SELECT c1.x||c2.x||c3.x FROM c c1, c c2, c c3; } { QUERY PLAN - |--MATERIALIZE c1 + |--MATERIALIZE c | `--SCAN 2 CONSTANT ROWS |--SCAN c1 |--SCAN c2 @@ -46,7 +46,7 @@ do_eqp_test 111 { SELECT c1.x||c2.x||c3.x FROM c c1, c c2, c c3; } { QUERY PLAN - |--MATERIALIZE c1 + |--MATERIALIZE c | `--SCAN 2 CONSTANT ROWS |--SCAN c1 |--SCAN c2 @@ -65,7 +65,7 @@ do_eqp_test 121 { SELECT c1.x||c2.x||c3.x FROM c c1, c c2, c c3; } { QUERY PLAN - |--MATERIALIZE c1 + |--MATERIALIZE c | `--SCAN 2 CONSTANT ROWS |--SCAN c1 |--SCAN c2 @@ -175,7 +175,7 @@ do_eqp_test 161 { FROM c AS c2 WHERE c2.x<10; } { QUERY PLAN - |--MATERIALIZE c2 + |--MATERIALIZE c | `--SCAN 2 CONSTANT ROWS |--SCAN c2 `--CORRELATED SCALAR SUBQUERY xxxxxx @@ -193,7 +193,7 @@ do_eqp_test 171 { FROM c AS c2 WHERE c2.x<10; } { QUERY PLAN - |--CO-ROUTINE c2 + |--CO-ROUTINE c | `--SCAN 2 CONSTANT ROWS |--SCAN c2 `--CORRELATED SCALAR SUBQUERY xxxxxx