Changes to the backup functionality so that it works better with codecs. (CVS 6783)

FossilOrigin-Name: 87d6796d986e4d5238252e704d936ab4407a0265
This commit is contained in:
drh 2009-06-18 20:52:47 +00:00
parent fa9601a9a6
commit 0719ee29b6
3 changed files with 14 additions and 10 deletions

View File

@ -1,5 +1,5 @@
C Move\scodec\smanagement\sfrom\sdatabase\sconnections\sinto\sthe\spager\sso\sthat\sit\nwill\swork\stogether\swith\sshared\scache.\s(CVS\s6782)
D 2009-06-18T17:22:39
C Changes\sto\sthe\sbackup\sfunctionality\sso\sthat\sit\sworks\sbetter\swith\scodecs.\s(CVS\s6783)
D 2009-06-18T20:52:47
F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
F Makefile.in 8b8fb7823264331210cddf103831816c286ba446
F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
@ -146,7 +146,7 @@ F src/os_common.h 8c61457df58f1a4bd5f5adc3e90e01b37bf7afbc
F src/os_os2.c bed77dc26e3a95ce4a204936b9a1ca6fe612fcc5
F src/os_unix.c b64129c296e480c2827606e206ea51bb30904626
F src/os_win.c 725c38a524d168ce280446ad8761d731bc516405
F src/pager.c 5fee0ea97b1bd12a97006d64ddc9224f83fdbfde
F src/pager.c 4c21c7ac6777cca4efa1855070b099d2f964ec64
F src/pager.h 5aec418bf99f568b92ae82816a1463400513726d
F src/parse.y bab89225c2543a350ef96995926520bbbd781aba
F src/pcache.c 395f752a13574120bd7513a400ba02a265aaa76d
@ -736,7 +736,7 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
F tool/vdbe-compress.tcl 672f81d693a03f80f5ae60bfefacd8a349e76746
P 40a40e81b3ad80114422d6a48146e5fb27e2551d
R 9e4b8b3ab226d1138a21e4657cb77ee7
P ed08b53cd64c4ff2c94ef4e48441c5236041c9ca
R 398bd4d99486dbc4ce2de243d75a2f75
U drh
Z 5171f5cb6ff49910af6921574145401f
Z c91ffb1e85d44ff0c9e62c342254c34c

View File

@ -1 +1 @@
ed08b53cd64c4ff2c94ef4e48441c5236041c9ca
87d6796d986e4d5238252e704d936ab4407a0265

View File

@ -18,7 +18,7 @@
** file simultaneously, or one process from reading the database while
** another is writing.
**
** @(#) $Id: pager.c,v 1.594 2009/06/18 17:22:39 drh Exp $
** @(#) $Id: pager.c,v 1.595 2009/06/18 20:52:47 drh Exp $
*/
#ifndef SQLITE_OMIT_DISKIO
#include "sqliteInt.h"
@ -1532,7 +1532,11 @@ static int pager_playback_one_page(
if( pgno>pPager->dbFileSize ){
pPager->dbFileSize = pgno;
}
if( pPager->pBackup ){
CODEC1(pPager, aData, pPg->pgno, 3, rc=SQLITE_NOMEM);
sqlite3BackupUpdate(pPager->pBackup, pgno, aData);
CODEC1(pPager, aData, pPg->pgno, 0, rc=SQLITE_NOMEM);
}
}else if( !isMainJrnl && pPg==0 ){
/* If this is a rollback of a savepoint and data was not written to
** the database and the page is not in-memory, there is a potential
@ -2937,7 +2941,7 @@ static int pager_write_pagelist(PgHdr *pList){
}
/* Update any backup objects copying the contents of this pager. */
sqlite3BackupUpdate(pPager->pBackup, pgno, (u8 *)pData);
sqlite3BackupUpdate(pPager->pBackup, pgno, (u8*)pList->pData);
PAGERTRACE(("STORE %d page %d hash(%08x)\n",
PAGERID(pPager), pgno, pager_pagehash(pList)));