From: drh Date: Mon, 7 May 2018 11:48:22 +0000 (+0000) Subject: On an UPDATE, try to overwrite an existing btree cell with the modified X-Git-Tag: version-3.24.0~61 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e3c05a5597a915f78aad199b787db16a146a6356;p=thirdparty%2Fsqlite.git On an UPDATE, try to overwrite an existing btree cell with the modified content, if the old and new cell are the same size. Use memcmp() first to avoid dirtying pages that are unchanged. FossilOrigin-Name: 5887d8beb502ad62689d31b850f46ab50831a1e9db36adf20d55ad45619d207e --- e3c05a5597a915f78aad199b787db16a146a6356 diff --cc manifest index 5ce3d3060f,363640929f..6862957f3f --- a/manifest +++ b/manifest @@@ -1,5 -1,5 +1,5 @@@ - C Fix\sharmless\scompiler\swarnings\sassociated\swith\sthe\snew\sEXPLAIN\sQUERY\sPLAN\slogic. - D 2018-05-07T11:37:34.277 -C Fix\sharmless\scompiler\swarnings\sin\sthe\scell-overwrite\slogic. -D 2018-05-07T11:29:59.385 ++C On\san\sUPDATE,\stry\sto\soverwrite\san\sexisting\sbtree\scell\swith\sthe\smodified\ncontent,\sif\sthe\sold\sand\snew\scell\sare\sthe\ssame\ssize.\s\sUse\smemcmp()\sfirst\nto\savoid\sdirtying\spages\sthat\sare\sunchanged. ++D 2018-05-07T11:48:22.641 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F Makefile.in 5ce9343cba9c189046f1afe6d2bcc1f68079439febc05267b98aec6ecc752439 @@@ -434,7 -434,7 +434,7 @@@ F src/auth.c 6277d63837357549fe14e72349 F src/backup.c faf17e60b43233c214aae6a8179d24503a61e83b F src/bitvec.c 17ea48eff8ba979f1f5b04cc484c7bb2be632f33 F src/btmutex.c 8acc2f464ee76324bf13310df5692a262b801808984c1b79defb2503bbafadb6 - F src/btree.c 79982b0779c27e5ccde8c3e540f14b4e82586d6ec0394a7eb08be72d20c3e894 -F src/btree.c b4ca692c0c557bba653412a0c3347f0e5c140e759f0d8349383b7de7281ad99e ++F src/btree.c 6be0267a7da8ca04c466094ca9d9a8a26333e175cff794afe5138aeec0cdb7c2 F src/btree.h 0866c0a08255142ea0e754aabd211c843cab32045c978a592a43152405ed0c84 F src/btreeInt.h 620ab4c7235f43572cf3ac2ac8723cbdf68073be4d29da24897c7b77dda5fd96 F src/build.c 0c2be5839f22aa2938f217c6c6c2120d9fc96872a546a37541a8271541cb355e @@@ -1727,7 -1727,7 +1727,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 b348d1193a7a3ed4d3e656b6cc95a41f87eae29222e0723850a5eb5ffabffd00 - R d09bdc73f56d4d80e2806c4c66a4e25a -P 9650f71b82ca1b3759e776bbd8a2e8ca61c51f80038e37c9c9a675a8c13b0b06 -R 0f12e4904e55641cfcfe9534f6ff08d6 ++P 374d8e264487b0437a8d995ced1bc026a92d495a2d0568f65f033e9ebe11d0e2 3e11dc3183bc3e8ec49af244a8e8b3e07d12f7a2e59028b2bf64ce0ab589a91f ++R 891ce8c2c78f1f487f80460b8c248fd0 ++T +closed 3e11dc3183bc3e8ec49af244a8e8b3e07d12f7a2e59028b2bf64ce0ab589a91f U drh - Z 7e3b1491b97d0e22d20f39d7466da090 -Z eb245c54fb26ccb37327155d2c7d476e ++Z 7955ef5d032aea210d99e8bc24e906bc diff --cc manifest.uuid index a55df92ede,adb6239ec1..3fa7a09c8a --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - 374d8e264487b0437a8d995ced1bc026a92d495a2d0568f65f033e9ebe11d0e2 -3e11dc3183bc3e8ec49af244a8e8b3e07d12f7a2e59028b2bf64ce0ab589a91f ++5887d8beb502ad62689d31b850f46ab50831a1e9db36adf20d55ad45619d207e