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

Make sure that when a connection is blocking on a RESERVED lock that it

continues after the lock is released.  Ticket #3093. (CVS 5078)

FossilOrigin-Name: 3dc334aa4a394e85858d2441225d64d73664b5b5
This commit is contained in:
drh
2008-05-02 14:23:54 +00:00
parent 8c23864c17
commit 8a9c17f1d5
4 changed files with 14 additions and 12 deletions

View File

@@ -9,7 +9,7 @@
** May you share freely, never taking more than you give.
**
*************************************************************************
** $Id: btree.c,v 1.452 2008/04/24 19:15:10 shane Exp $
** $Id: btree.c,v 1.453 2008/05/02 14:23:55 drh Exp $
**
** This file implements a external (disk-based) database using BTrees.
** See the header comment on "btreeInt.h" for additional information.
@@ -1899,8 +1899,10 @@ int sqlite3BtreeBeginTrans(Btree *p, int wrflag){
#endif
do {
while( rc==SQLITE_OK && pBt->pPage1==0 ){
rc = lockBtree(pBt);
if( pBt->pPage1==0 ){
do{
rc = lockBtree(pBt);
}while( pBt->pPage1==0 && rc==SQLITE_OK );
}
if( rc==SQLITE_OK && wrflag ){