]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Avoid doing IO purely to check assert() constraints. (CVS 5526)
authordanielk1977 <danielk1977@noemail.net>
Sat, 2 Aug 2008 17:03:31 +0000 (17:03 +0000)
committerdanielk1977 <danielk1977@noemail.net>
Sat, 2 Aug 2008 17:03:31 +0000 (17:03 +0000)
FossilOrigin-Name: fb26ae723959390a716f221af93c6c29eec16955

manifest
manifest.uuid
src/btree.c

index 3a456339bcf7997609702f9156f22ca2e3154355..73252961e4c1dd999375ac2af05f8aae7480f9b3 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\sa\sbug\sintroduced\sby\s(5519)\scausing\sbuilds\swith\sSQLITE_OMIT_VIRTUALTABLE\sto\smalfunction.\s(CVS\s5525)
-D 2008-08-02T15:32:40
+C Avoid\sdoing\sIO\spurely\sto\scheck\sassert()\sconstraints.\s(CVS\s5526)
+D 2008-08-02T17:03:32
 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
 F Makefile.in bbb62eecc851379aef5a48a1bf8787eb13e6ec06
 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
@@ -96,7 +96,7 @@ F src/attach.c a85c14612e7e3410e0c3d2e0241832fa9688bd14
 F src/auth.c c8b2ab5c8bad4bd90ed7c294694f48269162c627
 F src/bitvec.c 95c86bd18d8fedf0533f5af196192546e10a7e7d
 F src/btmutex.c 709cad2cdca0afd013f0f612363810e53f59ec53
-F src/btree.c 0be00cb6a5cd130127a06eb5f661cb5e4a9d0259
+F src/btree.c ff5ff00d1780ee1cd5bfbe5fb282f62a99c41466
 F src/btree.h 03256ed7ee42b5ecacbe887070b0f8249e7d069d
 F src/btreeInt.h ab18c7b4980314e9e4b402e5dcde09f3c2545576
 F src/build.c 05be60b1edc70bb8b354778facfb0ad5137c679a
@@ -617,7 +617,7 @@ F tool/speedtest16.c c8a9c793df96db7e4933f0852abb7a03d48f2e81
 F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
 F tool/speedtest8.c 1dbced29de5f59ba2ebf877edcadf171540374d1
 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
-P 6e41455f2c7ee57c60578541040631b899e1481f
-R 64bcb91d2e65178562a0c2ac681cf755
+P 761e73ceab77f965d58546ecf493f65cf52456fc
+R fdf59fb8d6897d3f2b38734b8b43cb6c
 U danielk1977
-Z 4436b1d6c098cf208dd2f40f4e63d6d7
+Z a95b43c0298b566b87fa8289070bfdc0
index 85085cff9852948283f02e0d15f0c1af129a22df..1206dec2a3d3d5877545bfc716e50a21fa3ffc60 100644 (file)
@@ -1 +1 @@
-761e73ceab77f965d58546ecf493f65cf52456fc
\ No newline at end of file
+fb26ae723959390a716f221af93c6c29eec16955
\ No newline at end of file
index fc20190ce7447a852827ae7280e03d47493de0d6..09d476b5a9bc027cffd9f657a2cf0d16a7313ce2 100644 (file)
@@ -9,7 +9,7 @@
 **    May you share freely, never taking more than you give.
 **
 *************************************************************************
-** $Id: btree.c,v 1.493 2008/08/01 20:10:08 drh Exp $
+** $Id: btree.c,v 1.494 2008/08/02 17:03:32 danielk1977 Exp $
 **
 ** This file implements a external (disk-based) database using BTrees.
 ** See the header comment on "btreeInt.h" for additional information.
@@ -4524,6 +4524,7 @@ static int fillInCell(
   return SQLITE_OK;
 }
 
+
 /*
 ** Change the MemPage.pParent pointer on the page whose number is
 ** given in the second argument so that MemPage.pParent holds the
@@ -4570,11 +4571,12 @@ static int reparentPage(
   /* If the updatePtrmap flag was clear, assert that the entry in the
   ** pointer-map is already correct.
   */
-  if( ISAUTOVACUUM ){
+  if( ISAUTOVACUUM && sqlite3PagerLookup(pBt->pPager,PTRMAP_PAGENO(pBt,pgno)) ){
     u8 eType;
     Pgno ii;
-    ptrmapGet(pBt, pgno, &eType, &ii);
-    assert( ii==pNewParent->pgno && eType==PTRMAP_BTREE );
+    int rc;
+    rc = ptrmapGet(pBt, pgno, &eType, &ii);
+    assert( rc==SQLITE_OK && ii==pNewParent->pgno && eType==PTRMAP_BTREE );
   }
 #endif