]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
If a writer crashes in WAL mode and leave the SHM file in an inconsistent state,
authordrh <drh@noemail.net>
Tue, 28 Jul 2020 17:29:13 +0000 (17:29 +0000)
committerdrh <drh@noemail.net>
Tue, 28 Jul 2020 17:29:13 +0000 (17:29 +0000)
subsequent transactions are now able to recover the SHM file even if there are
active read transactions.

FossilOrigin-Name: ee8a108058c304f9b6b02f84f1da01a0b7a3a21992627bcc1f97d42e8d23da69

1  2 
manifest
manifest.uuid

diff --cc manifest
index 80b02e2e4b1d2a586d3e5a52ef4348694e43bbc3,ef7faf53dc8176b420465523ead6952524c957dd..ac6aa6536a938309926c2d8cd1d088729195464a
+++ b/manifest
@@@ -1,5 -1,5 +1,5 @@@
- C Remove\sa\ssurplus\sspace\sfrom\sa\scomment
- D 2020-07-24T11:01:29.118
 -C Add\san\ssqlite3FaultSim()\sto\smake\san\sOOM\scase\smore\saccessible\sand\sremove\nthe\sALWAYS()\son\sthe\sconditional\sthat\sis\sfalse\swhen\sthe\sOOM\sactually\soccurs.
 -D 2020-07-28T17:17:36.521
++C If\sa\swriter\scrashes\sin\sWAL\smode\sand\sleave\sthe\sSHM\sfile\sin\san\sinconsistent\sstate,\nsubsequent\stransactions\sare\snow\sable\sto\srecover\sthe\sSHM\sfile\seven\sif\sthere\sare\nactive\sread\stransactions.
++D 2020-07-28T17:29:13.292
  F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
  F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
  F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@@ -1878,7 -1878,7 +1878,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 270ac1a0f232d75537be40abae559004e950b992cb2c7e94cd6de66e96ae17bd
- R 0212ebf857b7a36fab6e1708725a20d6
 -P 7052cf1d533f6404d0f45cf0b3e8a11c1ee27eccb64680a7fd308c8da7cbd544
++P 73fecc688ab5c459245c9bb89432139a083ef378404b4dae3397a7f4e253f72a 2a251af84ff1f5ca281aa69c5410d6ae7aa5a85ef47149909a297525e1651e9d
+ R 69a29ce092f5af857bcf59873f5056ae
++T +closed 2a251af84ff1f5ca281aa69c5410d6ae7aa5a85ef47149909a297525e1651e9d
  U drh
- Z 7c8911d20a18c22808c4eb3363f6ff12
 -Z e3e8c0f9a7476656806546b877310ca8
++Z f0509e0a6ac22a3eb269a4a65f129fe3
diff --cc manifest.uuid
index ef6483f2d60cc1f1587b013bc23ec10d9e47eb1b,083a662fb35522a86f27a998595f2b07f3121260..f9787d86e374b12de76c39343bace1d24c745868
@@@ -1,1 -1,1 +1,1 @@@
- 73fecc688ab5c459245c9bb89432139a083ef378404b4dae3397a7f4e253f72a
 -2a251af84ff1f5ca281aa69c5410d6ae7aa5a85ef47149909a297525e1651e9d
++ee8a108058c304f9b6b02f84f1da01a0b7a3a21992627bcc1f97d42e8d23da69