]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Do not attempt to modify the page_size when running VACUUM on a WAL database.
authordrh <drh@noemail.net>
Wed, 5 May 2010 03:39:53 +0000 (03:39 +0000)
committerdrh <drh@noemail.net>
Wed, 5 May 2010 03:39:53 +0000 (03:39 +0000)
FossilOrigin-Name: 58a1a59be89b33c6d5fa8b43571037d7d96625a1

manifest
manifest.uuid
src/vacuum.c

index da3fe6ab5d0bddbd893b6a570c1e93bffefb2d7c..94333332421a2c26a15149c8f77b2a956636318c 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,8 +1,8 @@
 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA1
 
-C Get\sthe\sprevious\smutex\sfix\sworking\swith\sSQLITE_DEBUG\sand\swith\sthe\samalgamation.
-D 2010-05-05T00:22:21
+C Do\snot\sattempt\sto\smodify\sthe\spage_size\swhen\srunning\sVACUUM\son\sa\sWAL\sdatabase.
+D 2010-05-05T03:39:53
 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
 F Makefile.in d83a0ffef3dcbfb08b410a6c6dd6c009ec9167fb
 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
@@ -214,7 +214,7 @@ F src/trigger.c 8927588cb9e6d47f933b53bfe74200fbb504100d
 F src/update.c c0dc6b75ad28b76b619042d934f337b02acee208
 F src/utf.c 1baeeac91707a4df97ccc6141ec0f808278af685
 F src/util.c 32aebf04c10e51ad3977a928b7416bed671b620b
-F src/vacuum.c 8e7d9a6fd076774bb6e211cad335c7337948a164
+F src/vacuum.c 15db45c738d8c4414e535d027a35f15d5edff0a4
 F src/vdbe.c 8be37a1b18786b5c026adcb2e9edc93e3a940885
 F src/vdbe.h 471f6a3dcec4817ca33596fe7f6654d56c0e75f3
 F src/vdbeInt.h 19ebc8c2a2e938340051ee65af3f377fb99102d1
@@ -812,14 +812,14 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
 F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
 F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
-P 451fd175758983c335aab449fdc4cb838156c4cb
-R 045e2e841d66b6071070228cb0d8c719
+P df19928f7ee94bca3989313ff16507c15d6efe2b
+R 069bb5f53fdfcba24cfeb576b63f1beb
 U drh
-Z 28121b315f3da7a423e5bbc25a4e7e69
+Z 8a5d544d9196499f84a43f63f2529a8f
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.6 (GNU/Linux)
 
-iD8DBQFL4LpAoxKgR168RlERAs4JAJ9mYm8FUjs24AAvPT3+A1OTbH8RHACdFekG
-3tezMw8gAYDoEh0uXo6E0oE=
-=HyII
+iD8DBQFL4OiMoxKgR168RlERAjEXAJ9ODmY13dc7A8c10DMd/YLHkGk71QCePYVs
+bLofxrhxIuLx1i3pAamMk0s=
+=gO6s
 -----END PGP SIGNATURE-----
index 808289d2790f632346354f4f17a68d049a611fe0..b7e6560c9040f1278744c6159c128fc2f760e95e 100644 (file)
@@ -1 +1 @@
-df19928f7ee94bca3989313ff16507c15d6efe2b
\ No newline at end of file
+58a1a59be89b33c6d5fa8b43571037d7d96625a1
\ No newline at end of file
index 12a07e9c87c1abaaa0c01bdacb013bc5ac169866..b5eb7789a2ac622c4f50eb16c92078c499a4fc2a 100644 (file)
@@ -168,6 +168,12 @@ int sqlite3RunVacuum(char **pzErrMsg, sqlite3 *db){
   }
 #endif
 
+  /* Do not attempt to change the page size for a WAL database */
+  if( sqlite3PagerJournalMode(sqlite3BtreePager(pMain),
+                              PAGER_JOURNALMODE_QUERY)==PAGER_JOURNALMODE_WAL ){
+    db->nextPagesize = 0;
+  }
+
   if( sqlite3BtreeSetPageSize(pTemp, sqlite3BtreeGetPageSize(pMain), nRes, 0)
    || (!isMemDb && sqlite3BtreeSetPageSize(pTemp, db->nextPagesize, nRes, 0))
    || NEVER(db->mallocFailed)