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

Avoid taking locks on unused database connections when committing a

read transaction.

FossilOrigin-Name: c0ee614fd988f445c4884a37f494479bdd669185
This commit is contained in:
drh
2010-10-14 01:17:30 +00:00
parent 94bb2ba619
commit 075ed30a9f
3 changed files with 12 additions and 11 deletions

View File

@@ -3167,8 +3167,8 @@ static void btreeEndTransaction(Btree *p){
** are no active cursors, it also releases the read lock.
*/
int sqlite3BtreeCommitPhaseTwo(Btree *p){
BtShared *pBt = p->pBt;
if( p->inTrans==TRANS_NONE ) return SQLITE_OK;
sqlite3BtreeEnter(p);
btreeIntegrity(p);
@@ -3177,6 +3177,7 @@ int sqlite3BtreeCommitPhaseTwo(Btree *p){
*/
if( p->inTrans==TRANS_WRITE ){
int rc;
BtShared *pBt = p->pBt;
assert( pBt->inTransaction==TRANS_WRITE );
assert( pBt->nTransaction>0 );
rc = sqlite3PagerCommitPhaseTwo(pBt->pPager);