1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-07 02:42:48 +03:00

Put an SQLITE_ENABLE_SETLK_TIMEOUT branch inside the appropriate ifdef with

an assert on the else since the condition is always false if SETLK_TIMEOUT
is not available.

FossilOrigin-Name: d81e7a036ac5d70b6a6ee6ab7d81e041c1f5fc04b70bcee47e203d521caf7e93
This commit is contained in:
drh
2024-01-09 23:15:46 +00:00
parent ff6905a1a5
commit 5fdabcf9ff
3 changed files with 11 additions and 7 deletions

View File

@@ -1,5 +1,5 @@
C Improved\sresolution\sof\sunqualified\snames\sin\sthe\sREINDEX\scommand.\n[forum:/info/74cd0ceabd|Forum\sthread\s74cd0ceabd].
D 2024-01-09T12:28:51.969
C Put\san\sSQLITE_ENABLE_SETLK_TIMEOUT\sbranch\sinside\sthe\sappropriate\sifdef\swith\nan\sassert\son\sthe\selse\ssince\sthe\scondition\sis\salways\sfalse\sif\sSETLK_TIMEOUT\nis\snot\savailable.
D 2024-01-09T23:15:46.055
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -819,7 +819,7 @@ F src/vdbetrace.c fe0bc29ebd4e02c8bc5c1945f1d2e6be5927ec12c06d89b03ef2a4def34bf8
F src/vdbevtab.c 2143db7db0ceed69b21422581f434baffc507a08d831565193a7a02882a1b6a7
F src/vtab.c 11948e105f56e84099ca17f1f434b1944539ea84de26d0d767eadfbc670ce1ea
F src/vxworks.h d2988f4e5a61a4dfe82c6524dd3d6e4f2ce3cdb9
F src/wal.c bf41478461ca8a2758617691152befd9d526921e2fb59d5647638679cff98381
F src/wal.c 887fc4ca3f020ebb2e376f222069570834ac63bf50111ef0cbf3ae417048ed89
F src/wal.h ba252daaa94f889f4b2c17c027e823d9be47ce39da1d3799886bbd51f0490452
F src/walker.c 7c7ea0115345851c3da4e04e2e239a29983b61fb5b038b94eede6aba462640e2
F src/where.c 217fe82a26c0fb6a3c7fd01865d821e752f9c01fb72f114af3f0b77ce234d1fb
@@ -2157,8 +2157,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
P cd016f26bb61549a304f2148035e050f76a8f4a35cdb7131bba2f5fc5d09f49e
R 79992c442c5c0c9ae7a8d7762db4a7c0
P 97709ce2a1f5ae05495e412ca27108048e5b8a63a1e3bca4be13933f7527da7b
R e1cda084846d38f7df71fe8c0312b80b
U drh
Z 0f0f16e628a0bab1003ad4c460a1aa8e
Z 78dfbea709d478f2481c5fdc79279a54
# Remove this line to create a well-formed Fossil manifest.

View File

@@ -1 +1 @@
97709ce2a1f5ae05495e412ca27108048e5b8a63a1e3bca4be13933f7527da7b
d81e7a036ac5d70b6a6ee6ab7d81e041c1f5fc04b70bcee47e203d521caf7e93

View File

@@ -3176,9 +3176,13 @@ static int walTryBeginRead(Wal *pWal, int *pChanged, int useWal, int *pCnt){
rc = walLockShared(pWal, WAL_READ_LOCK(mxI));
walDisableBlocking(pWal);
if( rc ){
#ifdef SQLITE_ENABLE_SETLK_TIMEOUT
if( rc==SQLITE_BUSY_TIMEOUT ){
*pCnt |= WAL_RETRY_BLOCKED_MASK;
}
#else
assert( rc!=SQLITE_BUSY_TIMEOUT );
#endif
assert( (rc&0xFF)!=SQLITE_BUSY||rc==SQLITE_BUSY||rc==SQLITE_BUSY_TIMEOUT );
return (rc&0xFF)==SQLITE_BUSY ? WAL_RETRY : rc;
}