From: drh <> Date: Thu, 25 Aug 2022 14:31:08 +0000 (+0000) Subject: Merge changes from trunk into the stmt-cache branch. X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7b7a373706309720d7c1357ea362a6debac651b4;p=thirdparty%2Fsqlite.git Merge changes from trunk into the stmt-cache branch. FossilOrigin-Name: bc988ce727bee0c7ac6406b5c9af486e353f1adf1e13b11ba0ac963fbea1f14e --- 7b7a373706309720d7c1357ea362a6debac651b4 diff --cc manifest index 4f64fc55d8,990e9ba135..c42083e0b3 --- a/manifest +++ b/manifest @@@ -1,5 -1,5 +1,5 @@@ - C If\sa\sperpared\sstatement\sruns\sthe\sExpire\sopcode,\sthen\sdisqualify\sit\sfrom\nbeing\scached. - D 2022-08-25T13:09:02.350 -C Remove\sa\sNEVER()\smacro\sfor\sa\scondition\sthat\sis\sactually\sreachable\sfollowing\san\sOOM.\sdbsqlfuzz\scrash-6ef3cd3b18ccc5de86120950a0498641acd90a33.txt. -D 2022-08-25T13:32:55.636 ++C Merge\schanges\sfrom\strunk\sinto\sthe\sstmt-cache\sbranch. ++D 2022-08-25T14:31:08.104 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@@ -552,7 -552,7 +552,7 @@@ F src/insert.c aea5361767817f917b0f0f64 F src/json.c 7749b98c62f691697c7ee536b570c744c0583cab4a89200fdd0fc2aa8cc8cbd6 F src/legacy.c d7874bc885906868cd51e6c2156698f2754f02d9eee1bae2d687323c3ca8e5aa F src/loadext.c 853385cc7a604157e137585097949252d5d0c731768e16b044608e5c95c3614b - F src/main.c a9a6dbe70301a39a1d63b6460e329c4f9548a42b7a334d167fb077acdee9d275 -F src/main.c 8983b4a316d7e09946dd731913aa41712f02e2b55cb5c6c92126ccfe2473244a ++F src/main.c 123ac0cc427dee4befdd47ff0f999cbb8f035f805c5d5f365dda5ba577c03ea3 F src/malloc.c b7a3430cbe91d3e8e04fc10c2041b3a19794e63556ad2441a13d8dadd9b2bafc F src/mem0.c 6a55ebe57c46ca1a7d98da93aaa07f99f1059645 F src/mem1.c c12a42539b1ba105e3707d0e628ad70e611040d8f5e38cf942cee30c867083de @@@ -589,11 -589,11 +589,11 @@@ F src/random.c 546d6feb15ec69c1aafe9bb3 F src/resolve.c efea4e5fbecfd6d0a9071b0be0d952620991673391b6ffaaf4c277b0bb674633 F src/rowset.c ba9515a922af32abe1f7d39406b9d35730ed65efab9443dc5702693b60854c92 F src/select.c ccce37e7fbe71089cf6aec91e7134c9c0c1d4840cff9f02587bbc71240d914a5 - F src/shell.c.in 6c18f7d3a42c590035f1c702265c73a8301fda79dda951a713bdae5ae185583b -F src/shell.c.in e7e7c2c69ae86c5ee9e8ad66227203d46ff6dce8700a1b1dababff01c71d33df -F src/sqlite.h.in b9b7fd73239d94db20332bb6e504688001e5564b655e1318a4427a1caef4b99e ++F src/shell.c.in a1152c45017c9ce634b1616d16ccf530397df1260302fccc7aafee7afe57173a +F src/sqlite.h.in f34d1ca4091c969e1b4b4744839f415c7963618bb10b34bbe1ef6a356ace0840 F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 F src/sqlite3ext.h a988810c9b21c0dc36dc7a62735012339dc76fc7ab448fb0792721d30eacb69d -F src/sqliteInt.h ebf18764e404a2cef39ae5bfc8dd4a83bf0d70be1c444a4fbd8539eb35ef6ffd +F src/sqliteInt.h 71316870f7ef94fd8326d435c2b2fb6a5e374133f128fd8c0132502ad6d18b6f F src/sqliteLimit.h d7323ffea5208c6af2734574bae933ca8ed2ab728083caa117c9738581a31657 F src/status.c 160c445d7d28c984a0eae38c144f6419311ed3eace59b44ac6dafc20db4af749 F src/table.c 0f141b58a16de7e2fbe81c308379e7279f4c6b50eb08efeec5892794a0ba30d1 @@@ -660,11 -660,11 +660,11 @@@ F src/upsert.c 8789047a8f0a601ea42fa025 F src/utf.c ee39565f0843775cc2c81135751ddd93eceb91a673ea2c57f61c76f288b041a0 F src/util.c 602fe229f32a96ceccae4f40824129669582096f7c355f53dbac156c9fecef23 F src/vacuum.c bb346170b0b54c6683bba4a5983aea40485597fdf605c87ec8bc2e199fe88cd8 - F src/vdbe.c 635b426bf7752b3b384cf8c07a364ce151cccea2f53c469b1a864b1c25275bb8 -F src/vdbe.c d27ec9a57f752fc2acf6a64d43bbf6072d2415efc976184f6d8a146e65819d3b -F src/vdbe.h 64619af62603dc3c4f5ff6ff6d2c8f389abd667a29ce6007ed44bd22b3211cd0 -F src/vdbeInt.h 17b7461ffcf9ee760d1341731715a419f6b8c763089a7ece25c2e8098d702b3f -F src/vdbeapi.c fc3183daf72808b4311b228989120fdbc2dc44972fb0d77d5c453460cc0e5b2c -F src/vdbeaux.c 1f33d20fc19f13ad781ee083276ffad2204a182617859895db9daa3412456457 ++F src/vdbe.c 710b82c1380f63ec902ebd147426f3c307031f8ecabc8d15019d9461f5e608d9 +F src/vdbe.h c4c9defdf2ad9465f9c9c7f79c3b03555f47aa930ea2744f358d9b27269763c7 +F src/vdbeInt.h e332f7d165b2cb984772c425c45f67f1d57e3c032d8dbf74a9ef8f1cebfa4bb2 +F src/vdbeapi.c 8087dba84836f59d0d5340a6c554948cf4fef03ace62a8d7dd3c8f310107e3f4 +F src/vdbeaux.c 7e682b9cae69e3801d2c04fefe2c80b40e5fcca470a4e11aa53342e2218aa1ab F src/vdbeblob.c 5e61ce31aca17db8fb60395407457a8c1c7fb471dde405e0cd675974611dcfcd F src/vdbemem.c c3ce80af15e2ff5c2824a8db881681cbf511376f13613da020bac6d320c535b1 F src/vdbesort.c 43756031ca7430f7aec3ef904824a7883c4ede783e51f280d99b9b65c0796e35 @@@ -1999,8 -1999,8 +1999,8 @@@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a9 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 - P c9dc536db9d13c0d66e5b84e564d6813c184ae26c889413a64b365781bf8ee50 - R 1950d8ca89c48067202891eae6480415 -P 459ad8846ee1ee2d3b277a291c47121692bdf477e779b06e77be8338f62237a6 -R c074d758a3f9086fc4005e904b417c57 -U dan -Z 63f19aa3edc2a77d03599cb0f52bdf8f ++P f27d919f3535f2be6642a02cf03cee82c66ff9d1e727f0c59c137f2a7f1d00c9 b573e2cffa5fedc893ed30e76e47022b3617ac5583e1eb486afa810b2514c419 ++R 9ddf7c40e99be489cef09c513ec54859 +U drh - Z 9eac493533fb2b70551aa5898da68875 ++Z 211dd9491c987a5bb9a73f943c47afcb # Remove this line to create a well-formed Fossil manifest. diff --cc manifest.uuid index cd0a9fa022,763566ed04..df79737df2 --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - f27d919f3535f2be6642a02cf03cee82c66ff9d1e727f0c59c137f2a7f1d00c9 -b573e2cffa5fedc893ed30e76e47022b3617ac5583e1eb486afa810b2514c419 ++bc988ce727bee0c7ac6406b5c9af486e353f1adf1e13b11ba0ac963fbea1f14e diff --cc src/main.c index 8f33c7790b,b5ef703287..04ccd8bc6c --- a/src/main.c +++ b/src/main.c @@@ -915,18 -915,9 +915,19 @@@ int sqlite3_db_cacheflush(sqlite3 *db) int sqlite3_db_config(sqlite3 *db, int op, ...){ va_list ap; int rc; + sqlite3_mutex_enter(db->mutex); va_start(ap, op); switch( op ){ + case SQLITE_DBCONFIG_STMTCACHE_SIZE: { + int szDesired = va_arg(ap,int); + int *pszNew = va_arg(ap,int*); + if( szDesired>=0 ){ + sqlite3VdbeChangeStmtCacheSize(db, szDesired); + } + if( pszNew ) *pszNew = (int)db->mxCache; + rc = SQLITE_OK; + break; + } case SQLITE_DBCONFIG_MAINDBNAME: { /* IMP: R-06824-28531 */ /* IMP: R-36257-52125 */