]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
On an UPDATE, try to overwrite an existing btree cell with the modified
authordrh <drh@noemail.net>
Mon, 7 May 2018 11:48:22 +0000 (11:48 +0000)
committerdrh <drh@noemail.net>
Mon, 7 May 2018 11:48:22 +0000 (11:48 +0000)
content, if the old and new cell are the same size.  Use memcmp() first
to avoid dirtying pages that are unchanged.

FossilOrigin-Name: 5887d8beb502ad62689d31b850f46ab50831a1e9db36adf20d55ad45619d207e

1  2 
manifest
manifest.uuid
src/btree.c

diff --cc manifest
index 5ce3d3060f9a5281da64b71a4ed4b2ed8751ea01,363640929f2d43582f2cc8266df8bcfb9a2e428a..6862957f3f78cefb04fb02f34873e852511c2dc4
+++ 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 a55df92edefc4f785a317c5931d12ccd32ebfb17,adb6239ec15b0cec397b149a44a90bf55cf754f0..3fa7a09c8ab979bff8e5176bed5b7c96681c2ca9
@@@ -1,1 -1,1 +1,1 @@@
- 374d8e264487b0437a8d995ced1bc026a92d495a2d0568f65f033e9ebe11d0e2
 -3e11dc3183bc3e8ec49af244a8e8b3e07d12f7a2e59028b2bf64ce0ab589a91f
++5887d8beb502ad62689d31b850f46ab50831a1e9db36adf20d55ad45619d207e
diff --cc src/btree.c
Simple merge