]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix a bug in pager.c causing it to omit the xSync() call required following a hot...
authordan <dan@noemail.net>
Tue, 10 Aug 2010 15:46:06 +0000 (15:46 +0000)
committerdan <dan@noemail.net>
Tue, 10 Aug 2010 15:46:06 +0000 (15:46 +0000)
FossilOrigin-Name: 42ba43ac690dc800fb8b969ae257a79942918342

manifest
manifest.uuid
src/pager.c

index 4ff62443c91ed50dabd42726bde5341ddc733800..96901ca253497884c2831f58a29573447fce6e42 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Add\svariable\spager.dbHintSize,\sused\sto\slimit\sthe\snumber\sof\scalls\smade\sto\sthe\sxFileControl(FCNTL_SIZE_HINT)\smethod.
-D 2010-08-10T09:58:57
+C Fix\sa\sbug\sin\spager.c\scausing\sit\sto\somit\sthe\sxSync()\scall\srequired\sfollowing\sa\shot-journal\srollback.
+D 2010-08-10T15:46:07
 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
 F Makefile.in ec08dc838fd8110fe24c92e5130bcd91cbb1ff2e
 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@ -156,7 +156,7 @@ F src/os_common.h a8f95b81eca8a1ab8593d23e94f8a35f35d4078f
 F src/os_os2.c 72d0b2e562952a2464308c4ce5f7913ac10bef3e
 F src/os_unix.c ae5ca8a6031380708f3fec7be325233d49944914
 F src/os_win.c 51cb62f76262d961ea4249489383d714501315a7
-F src/pager.c 6e8316c94f4ce46480f7f628c3e819d922af2111
+F src/pager.c b3db762350ee71f5f8bde04f21ca2ffcccded483
 F src/pager.h 80726162dc3942f59ab27b738fb667b9ba0a89d5
 F src/parse.y 12b7ebd61ea54f0e1b1083ff69cc2c8ce9353d58
 F src/pcache.c 1e9aa2dbc0845b52e1b51cc39753b6d1e041cb07
@@ -843,7 +843,7 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
 F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
 F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
-P 5662da6d4f648e5d07d7cbea6bbd92fa684c02c9
-R 016b700a84062c14051dadc45f2eaff7
+P eb3ac895bd92c880ac6acca58de8cf9643c2b5e4
+R e4d9a3fc6619bf1654c442eda9a22d0e
 U dan
-Z bdf1c4ed8f87e806444ebc6f32ecd642
+Z d2fd5616e29600e0ee8548b4ff5a7e14
index 4d160d37cb0bd38384c6274ea8e1c0cd8c225a50..219b4e1fad6a5107b6b6631ada4327e5069fbd63 100644 (file)
@@ -1 +1 @@
-eb3ac895bd92c880ac6acca58de8cf9643c2b5e4
\ No newline at end of file
+42ba43ac690dc800fb8b969ae257a79942918342
\ No newline at end of file
index e2c2f715a31ddb56c1b48a17a9a914b845de28d6..4d9be40eb8d69cd48dcbfedbcc69ba32d17daf1c 100644 (file)
@@ -2723,10 +2723,9 @@ end_playback:
     rc = readMasterJournal(pPager->jfd, zMaster, pPager->pVfs->mxPathname+1);
     testcase( rc!=SQLITE_OK );
   }
-  if( rc==SQLITE_OK && !pPager->noSync && pPager->eState>=PAGER_WRITER_DBMOD ){
-    rc = sqlite3OsSync(pPager->fd, pPager->sync_flags);
-  }
-  if( rc==SQLITE_OK && !pPager->noSync && pPager->eState>=PAGER_WRITER_DBMOD ){
+  if( rc==SQLITE_OK && !pPager->noSync 
+   && (pPager->eState>=PAGER_WRITER_DBMOD || pPager->eState==PAGER_OPEN)
+  ){
     rc = sqlite3OsSync(pPager->fd, pPager->sync_flags);
   }
   if( rc==SQLITE_OK ){