]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Merge version 3.32.0 into the begin-concurrent-pnu-wal2 branch.
authordrh <drh@noemail.net>
Fri, 22 May 2020 18:35:37 +0000 (18:35 +0000)
committerdrh <drh@noemail.net>
Fri, 22 May 2020 18:35:37 +0000 (18:35 +0000)
FossilOrigin-Name: 3cb296065aba04d01cbaa0b3b17b033cd20d8e84782466e8452bdffa8cee693e

1  2 
manifest
manifest.uuid
src/wal.c

diff --cc manifest
index 69eeaad63c70d3cff936e2a18b738ec801c237a0,d712daea4bb3ba879739ce0ea7a8813aadc142f0..4295c23146a194b047b54bc0f34559e990d4c965
+++ b/manifest
@@@ -1,5 -1,5 +1,5 @@@
- C Merge\slatest\strunk\schanges\sinto\sthis\sbranch.
- D 2020-05-18T19:55:43.468
 -C Merge\sversion\s3.32.0\sinto\sthe\swal2\sbranch.
 -D 2020-05-22T18:28:59.454
++C Merge\sversion\s3.32.0\sinto\sthe\sbegin-concurrent-pnu-wal2\sbranch.
++D 2020-05-22T18:35:37.531
  F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
  F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
  F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@@ -524,12 -519,12 +524,12 @@@ F src/os.c 669cc3839cc35d20f81faf0be1ab
  F src/os.h 48388821692e87da174ea198bf96b1b2d9d83be5dfc908f673ee21fafbe0d432
  F src/os_common.h b2f4707a603e36811d9b1a13278bffd757857b85
  F src/os_setup.h 0dbaea40a7d36bf311613d31342e0b99e2536586
 -F src/os_unix.c 13f983da988b6460ef3c4c22099c67ab0938291e543644ac4d99eccc8ba604f1
 +F src/os_unix.c 313c7a38d1521de28dc3f55c1e8117cccabbc0e87b5af3ef58b7782ef702fe99
- F src/os_win.c 317718e8f04c449e7d9e1eacac0d14e7508e4a77c9d4c3cb7382299bd24561b7
+ F src/os_win.c e832e21e830c1f9409c9c54053939b6dcb14c1e92128b756204ce1e3e331d678
  F src/os_win.h 7b073010f1451abe501be30d12f6bc599824944a
 -F src/pager.c 5683689017800028c2f06602b1283474daf49b0848bfbcca03e109e269a28472
 -F src/pager.h 57058a96dc235ffdbd36a6b23400573a1c39a34a3b3c43a4acc41ee3830ad61c
 -F src/parse.y c8eff38606f443d5ba245263fa7abc05e4116d95656e050c4b78e9bfbf931add
 +F src/pager.c a294b736317270e1b5b74ab1bf1ded471850fcc1b39e12255b323596024d1398
 +F src/pager.h 72506550d3a2d8953812220bf164b077ef122a3986d86262ed15fdb77137dbce
 +F src/parse.y 0724899be1d00dc438d0acadbfc2baddd4132a47268f25676ac79d56c1ee7351
  F src/pcache.c 385ff064bca69789d199a98e2169445dc16e4291fa807babd61d4890c3b34177
  F src/pcache.h 4f87acd914cef5016fae3030343540d75f5b85a1877eed1a2a19b9f284248586
  F src/pcache1.c 6596e10baf3d8f84cc1585d226cf1ab26564a5f5caf85a15757a281ff977d51a
@@@ -607,12 -602,12 +607,12 @@@ F src/threads.c 4ae07fa022a3dc7c5beb373
  F src/tokenize.c eee7bae3ec0bc4abee951554bf46a8ba567c0f7752ac90c820ed8afff4c612dc
  F src/treeview.c 82c6391a3ba76215d4185fd4719a56ec4caf186a40c8a7b6e6ba4ae4467c2742
  F src/trigger.c 4ada1037cc99777f647a882cdacbd1a4deb6567b69daf02946286401b88cdc04
 -F src/update.c 3199098455830fc2d8c8fc4ae3ec2ea513eef64339ae9a7048db62b21169bc7a
 +F src/update.c 055b77950b774edbd7dfc14e3067fee95c8616712acf26684a444d4beb1d087e
  F src/upsert.c 2920de71b20f04fe25eb00b655d086f0ba60ea133c59d7fa3325c49838818e78
- F src/utf.c 95fb6e03a5ca679045c5adccd05380f0addccabef5911abddcb06af069500ab7
+ F src/utf.c d7a61c1dfdac3eb091d43341a674032dca5a34e122f78ef0b5bd2d5a31967dde
  F src/util.c 3b6cedf7a0c69bd6e1acce832873952d416212d6293b18d03064e07d7a9b5118
 -F src/vacuum.c de9780b89fa4ee74c3534f60b94820e3179aca759ffc1338ee53cb4ea7693dd3
 -F src/vdbe.c d8a95ca518c10963198938e26c15b8e646840e1d538866ace82e9b1c8b4205af
 +F src/vacuum.c 28f9a2430bf250c04bbf40a70d749e8c081c007b99602df61717d35b29b817ab
 +F src/vdbe.c 92a24ceae20f5e67dbf55e3a79b8a7dd6ea0ed8a36f747a1e4ca4ccd8d16d177
  F src/vdbe.h 07b8c636a87df8b6e58f29d6badd7f10d5844353deff1d7c88ed1c2bfe3bbd35
  F src/vdbeInt.h 571413068b5ac07e2ed8ca7a02fa529622fd5455ae6981498376e5e492d2e5ef
  F src/vdbeapi.c e467b75a710ea099f8d2d022abf601d2ccd05e28f63b44b12d93000b6a75f4a8
@@@ -624,8 -619,8 +624,8 @@@ F src/vdbetrace.c fa3bf238002f0bbbdfb66
  F src/vdbevtab.c ee5b4c902fdda2230f9503ac7b84c6d614c91e8f6f4dc1633e2e8dfef8ffb144
  F src/vtab.c 7b452592ed2ee95dedb1f323d557cebede5a6f3b4558b21a5dca527e6ae9b12c
  F src/vxworks.h d2988f4e5a61a4dfe82c6524dd3d6e4f2ce3cdb9
- F src/wal.c 55bdc1be81348aab720ecf2792a975fdea469bf51548e7a267edddf882b858cf
 -F src/wal.c 942cf950d76a7d38304106055e5e27d77b37cc76f81b602ea09a4d67f6f45ade
 -F src/wal.h d01234e828943e002040c22a7e017642962f9fd9b2dc142fa599769ae4e459e9
++F src/wal.c 8d52cb9680338c642976b301f529d840bd246abe5ffd46b15902573f52f2a57e
 +F src/wal.h 7a733af13b966ecb81872ce397e862116b3575ea53245b90b139a2873ee87825
  F src/walker.c 7c429c694abd12413a5c17aec9f47cfe9eba6807e6b0a32df883e8e3a14835ed
  F src/where.c 9546c82056e8cdb27291f98cf1adca5d271240b399bb97b32f77fc2bea6146c9
  F src/whereInt.h 6b874aa15f94e43a2cec1080be64d955b04deeafeac90ffb5d6975c0d511be3c
@@@ -1896,7 -1878,7 +1896,7 @@@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a9
  F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
  F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
  F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
- P 6c11b67bd2c2844566027d59bf5a342d8b2bebd591cd06922e4609e79aa46b82 16b1eca922d6e10a0ebce1deb559c6c7dd74f8655e3456bad8384c6f4637e6d6
- R 0aad6afe74ac8dcb36dce09b9aee2f48
- U dan
- Z 4f6b8b763671cf3990701b3c85716542
 -P 16b1eca922d6e10a0ebce1deb559c6c7dd74f8655e3456bad8384c6f4637e6d6 5998789c9c744bce92e4cff7636bba800a75574243d6977e1fc8281e360f8d5a
 -R 32296d1150198735579e4176a9dcfa34
++P 5dc355ccf6ecf0af61e73efbf65bc5e1e192f748568344afbf8bca014ef98df9 1cb46a7431797978a37e1c6ed77f6473eb44f13d15cd37267d4f9555ac825f53
++R 16a09acdaf270d5214e3f8a38f07ca3e
+ U drh
 -Z fe31575cc7d5638205afb058dad1ad1c
++Z 973b072e65c54f4e84637f70f8a3e430
diff --cc manifest.uuid
index 8b689e8a81ad9ecf6c4d733d0f2dc5bd3c803a1a,391724f9e328c36a49c18770975766fe9a9d4db2..d97fcd8c15500c498aabacd67ee5a4f385d39ae9
@@@ -1,1 -1,1 +1,1 @@@
- 5dc355ccf6ecf0af61e73efbf65bc5e1e192f748568344afbf8bca014ef98df9
 -1cb46a7431797978a37e1c6ed77f6473eb44f13d15cd37267d4f9555ac825f53
++3cb296065aba04d01cbaa0b3b17b033cd20d8e84782466e8452bdffa8cee693e
diff --cc src/wal.c
index 4b856a336301556313627bb7988eec152c8159c8,f4cf443e551928cc152bbce4bba4d23578e9f536..645eed4b01a07b380488dbff9821673024f5771e
+++ b/src/wal.c
@@@ -2783,33 -2795,6 +2782,33 @@@ static int walIndexLoadHdr(Wal *pWal, W
      return 1;   /* Checksum does not match */
    }
  
- static int walIndexTryHdr(Wal *pWal, int *pChanged){
 +  return 0;
 +}
 +
 +/*
 +** Try to read the wal-index header.  Return 0 on success and 1 if
 +** there is a problem.
 +**
 +** The wal-index is in shared memory.  Another thread or process might
 +** be writing the header at the same time this procedure is trying to
 +** read it, which might result in inconsistency.  A dirty read is detected
 +** by verifying that both copies of the header are the same and also by
 +** a checksum on the header.
 +**
 +** If and only if the read is consistent and the header is different from
 +** pWal->hdr, then pWal->hdr is updated to the content of the new header
 +** and *pChanged is set to 1.
 +**
 +** If the checksum cannot be verified return non-zero. If the header
 +** is read successfully and the checksum verified, return zero.
 +*/
++static SQLITE_NO_TSAN int walIndexTryHdr(Wal *pWal, int *pChanged){
 +  WalIndexHdr h1;                 /* Copy of the header content */
 +
 +  if( walIndexLoadHdr(pWal, &h1) ){
 +    return 1;
 +  }
 +
    if( memcmp(&pWal->hdr, &h1, sizeof(WalIndexHdr)) ){
      *pChanged = 1;
      memcpy(&pWal->hdr, &h1, sizeof(WalIndexHdr));