aboutsummaryrefslogtreecommitdiff
path: root/src/main.c
diff options
context:
space:
mode:
authordan <dan@noemail.net>2010-08-02 10:47:05 +0000
committerdan <dan@noemail.net>2010-08-02 10:47:05 +0000
commita550f2decd6c9a7d4fa309d2272b4ea0ec195a3c (patch)
tree4c4bffb39c6b592bac7fc9cbd0999b61961a14dc /src/main.c
parent1c320a4366c9a1da926de879fc14f0838021b044 (diff)
downloadsqlite-a550f2decd6c9a7d4fa309d2272b4ea0ec195a3c.tar.gz
sqlite-a550f2decd6c9a7d4fa309d2272b4ea0ec195a3c.zip
In shared-cache mode, do not allow one connection to checkpoint a database while a second connection is reading or writing the same shared-cache.
FossilOrigin-Name: e75b52d156905ce16bedb94f65c01a4640bdfa75
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c11
1 files changed, 1 insertions, 10 deletions
diff --git a/src/main.c b/src/main.c
index c3828d5d9..b233c8473 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1308,16 +1308,7 @@ int sqlite3Checkpoint(sqlite3 *db, int iDb){
for(i=0; i<db->nDb && rc==SQLITE_OK; i++){
if( i==iDb || iDb==SQLITE_MAX_ATTACHED ){
- Btree *pBt = db->aDb[i].pBt;
- if( pBt ){
- if( sqlite3BtreeIsInReadTrans(pBt) ){
- rc = SQLITE_LOCKED;
- }else{
- sqlite3BtreeEnter(pBt);
- rc = sqlite3PagerCheckpoint(sqlite3BtreePager(pBt));
- sqlite3BtreeLeave(pBt);
- }
- }
+ rc = sqlite3BtreeCheckpoint(db->aDb[i].pBt);
}
}