mirror of
https://github.com/sqlite/sqlite.git
synced 2025-08-08 14:02:16 +03:00
Avoid taking locks on unused database connections when committing a
read transaction. FossilOrigin-Name: c0ee614fd988f445c4884a37f494479bdd669185
This commit is contained in:
18
manifest
18
manifest
@@ -1,8 +1,8 @@
|
|||||||
-----BEGIN PGP SIGNED MESSAGE-----
|
-----BEGIN PGP SIGNED MESSAGE-----
|
||||||
Hash: SHA1
|
Hash: SHA1
|
||||||
|
|
||||||
C Check-in\s[d3c95e3a4e08d0]\swas\sincorrect.\s\sThis\sis\sthe\scorrect\sfix\sfor\nsqlit3_bind_blob().\s\sTicket\s[860399cc408f2dd5f4]
|
C Avoid\staking\slocks\son\sunused\sdatabase\sconnections\swhen\scommitting\sa\nread\stransaction.
|
||||||
D 2010-10-14T01:16:33
|
D 2010-10-14T01:17:30
|
||||||
F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
|
F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
|
||||||
F Makefile.in b01fdfcfecf8a0716c29867a67959f6148b79961
|
F Makefile.in b01fdfcfecf8a0716c29867a67959f6148b79961
|
||||||
F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
|
F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
|
||||||
@@ -121,7 +121,7 @@ F src/auth.c 523da7fb4979469955d822ff9298352d6b31de34
|
|||||||
F src/backup.c d5b0137bc20327af08c14772227cc35134839c30
|
F src/backup.c d5b0137bc20327af08c14772227cc35134839c30
|
||||||
F src/bitvec.c af50f1c8c0ff54d6bdb7a80e2fceca5a93670bef
|
F src/bitvec.c af50f1c8c0ff54d6bdb7a80e2fceca5a93670bef
|
||||||
F src/btmutex.c 96a12f50f7a17475155971a241d85ec5171573ff
|
F src/btmutex.c 96a12f50f7a17475155971a241d85ec5171573ff
|
||||||
F src/btree.c d878577184112d982d00ea05afcc7487cd9f06f5
|
F src/btree.c 8a1b0267a4f1914aedbaa93d3fcf4f2e42141ea8
|
||||||
F src/btree.h 2d1a83ad509047e8cc314fda7e054f99ff52414d
|
F src/btree.h 2d1a83ad509047e8cc314fda7e054f99ff52414d
|
||||||
F src/btreeInt.h c424f2f131cc61ddf130f9bd736b3df12c8a51f0
|
F src/btreeInt.h c424f2f131cc61ddf130f9bd736b3df12c8a51f0
|
||||||
F src/build.c 00a327120d81ace6267e714ae8010c997d55de5d
|
F src/build.c 00a327120d81ace6267e714ae8010c997d55de5d
|
||||||
@@ -876,14 +876,14 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
|
|||||||
F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
|
F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
|
||||||
F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
|
F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
|
||||||
F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
|
F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
|
||||||
P d3c95e3a4e08d08028e9bc7f282074e32b9cf950
|
P ea8c2f5f8a890dcb422e9e46298ae6ca378c74b7
|
||||||
R c98ef3dc0fa2144496c5ce9ed9bca898
|
R 03d2b3a92f9647a3db71aa9ca75489f4
|
||||||
U drh
|
U drh
|
||||||
Z bce2632c7f66d8ece358839f54e35ed0
|
Z c2cdb52e62b9c570a5e1c8427f4ce5c4
|
||||||
-----BEGIN PGP SIGNATURE-----
|
-----BEGIN PGP SIGNATURE-----
|
||||||
Version: GnuPG v1.4.6 (GNU/Linux)
|
Version: GnuPG v1.4.6 (GNU/Linux)
|
||||||
|
|
||||||
iD8DBQFMtln1oxKgR168RlERAiWvAJ9rXglnwByHGbbkgLs+G2EEefeXTwCfTAqs
|
iD8DBQFMtlotoxKgR168RlERAuf0AJ96F+hVDOt4y4GU2wooqTHtO4kKZgCeKIVj
|
||||||
iQxq9aRZ62Kqv3eMBN4yX9k=
|
dUPTQwgWJgqAaN5BweGLucY=
|
||||||
=eO0n
|
=QYIr
|
||||||
-----END PGP SIGNATURE-----
|
-----END PGP SIGNATURE-----
|
||||||
|
@@ -1 +1 @@
|
|||||||
ea8c2f5f8a890dcb422e9e46298ae6ca378c74b7
|
c0ee614fd988f445c4884a37f494479bdd669185
|
@@ -3167,8 +3167,8 @@ static void btreeEndTransaction(Btree *p){
|
|||||||
** are no active cursors, it also releases the read lock.
|
** are no active cursors, it also releases the read lock.
|
||||||
*/
|
*/
|
||||||
int sqlite3BtreeCommitPhaseTwo(Btree *p){
|
int sqlite3BtreeCommitPhaseTwo(Btree *p){
|
||||||
BtShared *pBt = p->pBt;
|
|
||||||
|
|
||||||
|
if( p->inTrans==TRANS_NONE ) return SQLITE_OK;
|
||||||
sqlite3BtreeEnter(p);
|
sqlite3BtreeEnter(p);
|
||||||
btreeIntegrity(p);
|
btreeIntegrity(p);
|
||||||
|
|
||||||
@@ -3177,6 +3177,7 @@ int sqlite3BtreeCommitPhaseTwo(Btree *p){
|
|||||||
*/
|
*/
|
||||||
if( p->inTrans==TRANS_WRITE ){
|
if( p->inTrans==TRANS_WRITE ){
|
||||||
int rc;
|
int rc;
|
||||||
|
BtShared *pBt = p->pBt;
|
||||||
assert( pBt->inTransaction==TRANS_WRITE );
|
assert( pBt->inTransaction==TRANS_WRITE );
|
||||||
assert( pBt->nTransaction>0 );
|
assert( pBt->nTransaction>0 );
|
||||||
rc = sqlite3PagerCommitPhaseTwo(pBt->pPager);
|
rc = sqlite3PagerCommitPhaseTwo(pBt->pPager);
|
||||||
|
Reference in New Issue
Block a user