Artifact 3c6adcbc50b991866855f1977ff172eb6d901271:
- File mptest/config01.test — part of check-in [ea1404a1] at 2013-04-15 17:03:42 on branch trunk — Refactoring the mmap interface. The controlling pragma is now "mmap_size" instead of "mmap_limit". Also change SQLITE_CONFIG_MMAP_LIMIT and SQLITE_FCNTL_MMAP_LIMIT to SQLITE_CONFIG_MMAP_SIZE and SQLITE_FCNTL_MMAP_SIZE, respecctively. The default mmap_size is now always 0, meaning that memory mapped I/O is off by default. There is a new compile-time option SQLITE_MAX_MMAP_SIZE that determines a hard upper bound on the mmap_size. Setting SQLITE_MAX_MMAP_SIZE to zero disables the memory-mapped I/O logic and causes it to be omitted from the build. An extra argument is added to SQLITE_CONFIG_MMAP_SIZE that can optionally lower the SQLITE_MAX_MMAP_SIZE at start-time. The SQLITE_MAX_MMAP_SIZE is zero for platforms where we know that it does not work, meaning that it cannot be turned on by mistake on those platforms. (user: drh size: 950) [more...]
/* ** Configure five tasks in different ways, then run tests. */ --if vfsname() GLOB 'unix' PRAGMA page_size=8192; --task 1 PRAGMA journal_mode=PERSIST; PRAGMA mmap_size=0; --end --task 2 PRAGMA journal_mode=TRUNCATE; PRAGMA mmap_size=28672; --end --task 3 PRAGMA journal_mode=MEMORY; --end --task 4 PRAGMA journal_mode=OFF; --end --task 4 PRAGMA mmap_size(268435456); --end --source multiwrite01.test --wait all PRAGMA page_size=16384; VACUUM; CREATE TABLE pgsz(taskid, sz INTEGER); --task 1 INSERT INTO pgsz VALUES(1, eval('PRAGMA page_size')); --end --task 2 INSERT INTO pgsz VALUES(2, eval('PRAGMA page_size')); --end --task 3 INSERT INTO pgsz VALUES(3, eval('PRAGMA page_size')); --end --task 4 INSERT INTO pgsz VALUES(4, eval('PRAGMA page_size')); --end --task 5 INSERT INTO pgsz VALUES(5, eval('PRAGMA page_size')); --end --source multiwrite01.test --wait all SELECT sz FROM pgsz; --match 16384 16384 16384 16384 16384