diff --git a/manifest b/manifest index d90834e888..f1957e3058 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Additional\stests\sdesigned\sto\sdetect\sfuture\sperformance\sregressions.\s(CVS\s3840) -D 2007-04-13T03:23:21 +C Fix\sa\sbug\sin\sautovacuum\sintroduced\sby\s(3839).\s(CVS\s3841) +D 2007-04-13T04:01:59 F Makefile.in 8cab54f7c9f5af8f22fd97ddf1ecfd1e1860de62 F Makefile.linux-gcc 2d8574d1ba75f129aba2019f0b959db380a90935 F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028 @@ -86,7 +86,7 @@ F src/os_unix.c 426b4c03c304ad78746d65d9ba101e0b72e18e23 F src/os_unix.h 5768d56d28240d3fe4537fac08cc85e4fb52279e F src/os_win.c e94903c7dc1c0599c8ddce42efa0b6928068ddc5 F src/os_win.h 41a946bea10f61c158ce8645e7646b29d44f122b -F src/pager.c 2a5df21f1fc4acfa51815305892df13c7f90bc76 +F src/pager.c 4fb7253edc2377b12f16fa33adffda79f070c1b4 F src/pager.h d652ddf092d2318d00e41f8539760fe8e57c157c F src/parse.y b6cfbadb6d5b21b5087d30698ee5af0ebb098767 F src/pragma.c 3b992b5b2640d6ae25cef05aa6a42cd1d6c43234 @@ -458,7 +458,7 @@ F www/tclsqlite.tcl bb0d1357328a42b1993d78573e587c6dcbc964b9 F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0 F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513 -P 32bb2d5859906b4fb0f6083eedd7f3a81b9cf5e2 -R f21c4290ab1b521d34c9501951f30b4e +P 764e7262b93a7a5073128ecd4db265b0c728a701 +R 31c090858c1e13005c3e16c77f0df139 U drh -Z 50dc4d00733590998717efbb4db67cac +Z 533934c267007014330b5ce7d6a0b1a1 diff --git a/manifest.uuid b/manifest.uuid index ee66bf249e..52e8e0649f 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -764e7262b93a7a5073128ecd4db265b0c728a701 \ No newline at end of file +e39efa195a28f1cd7431b0811bd908dc7af3c8b1 \ No newline at end of file diff --git a/src/pager.c b/src/pager.c index 478a7014d7..57cf9a6373 100644 --- a/src/pager.c +++ b/src/pager.c @@ -18,7 +18,7 @@ ** file simultaneously, or one process from reading the database while ** another is writing. ** -** @(#) $Id: pager.c,v 1.327 2007/04/13 02:14:30 drh Exp $ +** @(#) $Id: pager.c,v 1.328 2007/04/13 04:01:59 drh Exp $ */ #ifndef SQLITE_OMIT_DISKIO #include "sqliteInt.h" @@ -3017,9 +3017,9 @@ int sqlite3PagerAcquire( /* Populate the page with data, either by reading from the database ** file, or by setting the entire page to zero. */ - if( nMax<(int)pgno || MEMDB || noContent ){ + if( nMax<(int)pgno || MEMDB || (noContent && !pPager->alwaysRollback) ){ memset(PGHDR_TO_DATA(pPg), 0, pPager->pageSize); - pPg->needRead = noContent; + pPg->needRead = noContent && !pPager->alwaysRollback; IOTRACE(("ZERO %p %d\n", pPager, pgno)); }else{ rc = readDbPage(pPager, pPg, pgno);