Index: src/test_config.c ================================================================== --- src/test_config.c +++ src/test_config.c @@ -552,10 +552,16 @@ #ifdef YYTRACKMAXSTACKDEPTH Tcl_SetVar2(interp, "sqlite_options", "yytrackmaxstackdepth", "1", TCL_GLOBAL_ONLY); #else Tcl_SetVar2(interp, "sqlite_options", "yytrackmaxstackdepth", "0", TCL_GLOBAL_ONLY); #endif + +#ifdef SQLITE_PAGECACHE_BLOCKALLOC + Tcl_SetVar2(interp, "sqlite_options", "blockalloc", "1", TCL_GLOBAL_ONLY); +#else + Tcl_SetVar2(interp, "sqlite_options", "blockalloc", "0", TCL_GLOBAL_ONLY); +#endif #define LINKVAR(x) { \ static const int cv_ ## x = SQLITE_ ## x; \ Tcl_LinkVar(interp, "SQLITE_" #x, (char *)&(cv_ ## x), \ TCL_LINK_INT | TCL_LINK_READ_ONLY); } Index: test/memdb.test ================================================================== --- test/memdb.test +++ test/memdb.test @@ -405,11 +405,11 @@ } } 0 # Test that auto-vacuum works with in-memory databases. # -ifcapable autovacuum { +ifcapable autovacuum&&!blockalloc { do_test memdb-9.1 { db close sqlite3 db test.db db cache size 0 execsql { Index: test/memsubsys1.test ================================================================== --- test/memsubsys1.test +++ test/memsubsys1.test @@ -22,10 +22,17 @@ # if {[permutation] == "memsubsys1"} { finish_test return } + +# Nor will it work if the pager is allocating memory in blocks. +# +ifcapable blockalloc { + finish_test + return +} # This procedure constructs a new database in test.db. It fills # this database with many small records (enough to force multiple # rebalance operations in the btree-layer and to require a large # page cache), verifies correct results, then returns. Index: test/pcache2.test ================================================================== --- test/pcache2.test +++ test/pcache2.test @@ -14,10 +14,17 @@ # $Id: pcache2.test,v 1.5 2009/07/18 14:36:24 danielk1977 Exp $ set testdir [file dirname $argv0] source $testdir/tester.tcl +# If compiled with blockalloc, pagecache memory is not used. Which +# causes these tests to fail. +# +ifcapable blockalloc { + finish_test + return +} # Set up a pcache memory pool so that we can easily track how many # pages are being used for cache. # do_test pcache2-1.1 {