From: drh Date: Sat, 4 Aug 2018 17:15:56 +0000 (+0000) Subject: Fix comments that were made obsolete by the removal of the column cache. X-Git-Tag: version-3.25.0~80^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=36a5d88ddeeef353f4e24cfa0a37fdae78600c4c;p=thirdparty%2Fsqlite.git Fix comments that were made obsolete by the removal of the column cache. FossilOrigin-Name: 2041231d56c7b02b785015ef4d1af260d61326eab1b2a304c17faa3e33f76441 --- diff --git a/manifest b/manifest index 8dd1bf7e3d..8027c8fef9 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Remove\smore\scolumn-cache\sresidue:\s\sThe\sOP_SetColTab\sand\sOP_VerifyColTab\nopcodes\sand\sthe\sassociated\sSQLITE_DEBUG_COLUMNCACHE\slogic. -D 2018-08-04T16:54:53.280 +C Fix\scomments\sthat\swere\smade\sobsolete\sby\sthe\sremoval\sof\sthe\scolumn\scache. +D 2018-08-04T17:15:56.612 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F Makefile.in 0a3a6c81e6fcb969ff9106e882f0a08547014ba463cb6beca4c4efaecc924ee6 @@ -450,7 +450,7 @@ F src/date.c ebe1dc7c8a347117bb02570f1a931c62dd78f4a2b1b516f4837d45b7d6426957 F src/dbpage.c 4aa7f26198934dbd002e69418220eae3dbc71b010bbac32bd78faf86b52ce6c3 F src/dbstat.c edabb82611143727511a45ca0859b8cd037851ebe756ae3db289859dd18b6f91 F src/delete.c 107e28d3ef8bd72fd11953374ca9107cd74e8b09c3ded076a6048742d26ce7d2 -F src/expr.c 81a8f601d52add3627c8d2fd1cba5640d63019a8461e3eb2e7b4d2e468f49fb0 +F src/expr.c 3c5c439653cbe8a164af1e854379074153c38c222dbe812c01bdd72f507635c8 F src/fault.c 460f3e55994363812d9d60844b2a6de88826e007 F src/fkey.c f59253c0be4b1e9dfcb073b6d6d6ab83090ae50c08b5c113b76013c4b157cd6a F src/func.c 7c288b4ce309b5a8b8473514b88e1f8e69a80134509a8c0db8e39c858e367e7f @@ -498,17 +498,17 @@ F src/printf.c 7f6f3cba8e0c49c19e30a1ff4e9aeda6e06814dcbad4b664a69e1b6cb6e7e365 F src/random.c 80f5d666f23feb3e6665a6ce04c7197212a88384 F src/resolve.c 797088662ed61102485e3070ba3b3f7828bd5ef6a588223ba6865d77d52f6cea F src/rowset.c 7b7e7e479212e65b723bf40128c7b36dc5afdfac -F src/select.c a32bfa40ec1fa2c502bb330ca840f3d0a9e0eef4281cd884271a08f5f7656802 +F src/select.c ae7396a314cc1bb1d767947cd57094e3a9ffcbb155ebc1b1c391e028c44a9a04 F src/shell.c.in 5e4c139799f059a5231f0259111f51f6dffcb28154c535f6b4c2192619a40844 F src/sqlite.h.in c6451bb876adced3aba5b1682c6317d215c5eceaba21a6ce979e71a0b8d0bf95 F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 F src/sqlite3ext.h 9887b27e69c01e79c2cbe74ef73bf01af5b5703d6a7f0a4371e386d7249cb1c7 -F src/sqliteInt.h 353f6ec5d09927a6188c2c427f789ff5c50a495f809c6f5855aac4f3bd90debe +F src/sqliteInt.h a5d212bb7ae5cfc0540af6fb09eee2092a45fe083fac4191ee64ff70e7d4d78a F src/sqliteLimit.h 1513bfb7b20378aa0041e7022d04acb73525de35b80b252f1b83fedb4de6a76b F src/status.c 46e7aec11f79dad50965a5ca5fa9de009f7d6bde08be2156f1538a0a296d4d0e F src/table.c b46ad567748f24a326d9de40e5b9659f96ffff34 F src/tclsqlite.c e0bf71a6d24b8c23393c000abffab05979bbca2a72d0b0f79260e2cf1527fda5 -F src/test1.c 335740ddc632c0b54765b6fd373da7f76a397adde3ded3592390dd1e5fb0dd55 +F src/test1.c 55424c026dd93c06ad84ff4e46cec64aa3e12e767d50c31886e6a69ee53fe81e F src/test2.c 3efb99ab7f1fc8d154933e02ae1378bac9637da5 F src/test3.c 61798bb0d38b915067a8c8e03f5a534b431181f802659a6616f9b4ff7d872644 F src/test4.c 18ec393bb4d0ad1de729f0b94da7267270f3d8e6 @@ -1754,7 +1754,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 7d9072b027cc28dd8ecf5e2686d821017997445c15124eebe2839984622af4db -R 820f26f9a4f9afda56ce762b9f0675a6 +P 80236e81cefdf3d3cda3dbdb6de1575c38e4e248cc4b72ca9ee96d3aa0464bfd +R 779befaaaf0f2d738f0e3a42abd2baa4 U drh -Z d3574326d1871130835115db0c78586b +Z 8c6b42f29159dc7d52aa5e97e863562d diff --git a/manifest.uuid b/manifest.uuid index 9f8dc612a8..05811c7038 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -80236e81cefdf3d3cda3dbdb6de1575c38e4e248cc4b72ca9ee96d3aa0464bfd \ No newline at end of file +2041231d56c7b02b785015ef4d1af260d61326eab1b2a304c17faa3e33f76441 \ No newline at end of file diff --git a/src/expr.c b/src/expr.c index 889142d1e5..271b065a30 100644 --- a/src/expr.c +++ b/src/expr.c @@ -3262,7 +3262,7 @@ int sqlite3ExprCodeGetColumn( /* ** Generate code to move content from registers iFrom...iFrom+nReg-1 -** over to iTo..iTo+nReg-1. Keep the column cache up-to-date. +** over to iTo..iTo+nReg-1. */ void sqlite3ExprCodeMove(Parse *pParse, int iFrom, int iTo, int nReg){ assert( iFrom>=iTo+nReg || iFrom+nReg<=iTo ); @@ -5252,10 +5252,6 @@ int sqlite3GetTempReg(Parse *pParse){ /* ** Deallocate a register, making available for reuse for some other ** purpose. -** -** If a register is currently being used by the column cache, then -** the deallocation is deferred until the column cache line that uses -** the register becomes stale. */ void sqlite3ReleaseTempReg(Parse *pParse, int iReg){ if( iReg && pParse->nTempRegaTempReg) ){ diff --git a/src/select.c b/src/select.c index c4ab18d2f6..f97efa7a72 100644 --- a/src/select.c +++ b/src/select.c @@ -5334,17 +5334,6 @@ static void updateAccumulator(Parse *pParse, int regAcc, AggInfo *pAggInfo){ sqlite3VdbeResolveLabel(v, addrNext); } } - - /* Before populating the accumulator registers, clear the column cache. - ** Otherwise, if any of the required column values are already present - ** in registers, sqlite3ExprCode() may use OP_SCopy to copy the value - ** to pC->iMem. But by the time the value is used, the original register - ** may have been used, invalidating the underlying buffer holding the - ** text or blob value. See ticket [883034dcb5]. - ** - ** Another solution would be to change the OP_SCopy used to copy cached - ** values to an OP_Copy. - */ if( regHit==0 && pAggInfo->nAccumulator ){ regHit = regAcc; } diff --git a/src/sqliteInt.h b/src/sqliteInt.h index 1348d46f60..6304680ab3 100644 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@ -1558,7 +1558,7 @@ struct sqlite3 { ** selectively disable various optimizations. */ #define SQLITE_QueryFlattener 0x0001 /* Query flattening */ -#define SQLITE_ColumnCache 0x0002 /* Column cache */ + /* 0x0002 available for reuse */ #define SQLITE_GroupByOrder 0x0004 /* GROUPBY cover of ORDERBY */ #define SQLITE_FactorOutConst 0x0008 /* Constant factoring */ #define SQLITE_DistinctOpt 0x0010 /* DISTINCT using indexes */ @@ -2957,13 +2957,6 @@ struct AutoincInfo { int regCtr; /* Memory register holding the rowid counter */ }; -/* -** Size of the column cache -*/ -#ifndef SQLITE_N_COLCACHE -# define SQLITE_N_COLCACHE 10 -#endif - /* ** At least one instance of the following structure is created for each ** trigger that may be fired while parsing an INSERT, UPDATE or DELETE diff --git a/src/test1.c b/src/test1.c index 9ffc2e2a82..93c71aa320 100644 --- a/src/test1.c +++ b/src/test1.c @@ -6982,7 +6982,6 @@ static int SQLITE_TCLAPI optimization_control( { "all", SQLITE_AllOpts }, { "none", 0 }, { "query-flattener", SQLITE_QueryFlattener }, - { "column-cache", SQLITE_ColumnCache }, { "groupby-order", SQLITE_GroupByOrder }, { "factor-constants", SQLITE_FactorOutConst }, { "distinct-opt", SQLITE_DistinctOpt },