/ Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

2013-04-04
00:40
Try to use mmap() to speed access to the database file on windows, linux, and mac. check-in: fff2be6077 user: drh tags: trunk
2013-04-03
21:23
Release resources prior to bailing out of the btreeCreateTable() routine following an OOM error. Closed-Leaf check-in: b2a72be9ba user: drh tags: experimental-mmap
20:04
Remove an unreachable branch in the direct blob I/O logic of btree.c. check-in: f97d7274f4 user: drh tags: experimental-mmap
13:38
Fix a bug in the detection of iOS when setting the default mmap_limit. check-in: ac1432b3a8 user: drh tags: experimental-mmap
13:09
Change the mmap_limit pragma to report the new limit, or to report the existing limit if called with no arguments. Report the default mmap_limit as part of PRAGMA compile_options. Set the default mmmap_limit to 0 for all systems other than linux, mac, windows, and solaris. check-in: 2d9f1327fe user: drh tags: experimental-mmap
11:52
Remove the restriction on using xFetch to load the root pages of tables and indexes. It appears to have been based on a misconception. check-in: 5b082efead user: dan tags: experimental-mmap
11:38
When moving a page to make way for the root page of a new table or index in an auto-vacuum database, save the positions of any cursors that may be holding xFetch references to the page being moved. check-in: 9d9b1da54a user: dan tags: experimental-mmap
11:17
In btree.c, save the positions of other cursors open on the same table when writing via an incremental blob handle. Otherwise, they may be left holding an out-of-date xFetch page reference. check-in: 3f09fba18f user: dan tags: experimental-mmap
10:50
Initialize the mmap_limit of temporary files to the configured mmap_limit. check-in: 24bab7596b user: drh tags: experimental-mmap
03:53
Make use of xFetch, if it is available when doing a VACUUM or a backup. check-in: 83bc37af07 user: drh tags: experimental-mmap
01:26
Add the -mmap option to the command-line shell, for setting the default mmap_limit. check-in: fc30d06c94 user: drh tags: experimental-mmap
00:42
Fix the unix driver to check defined(_BSD_SOURCE) rather than just the plain _BSD_SOURCE macro. This fixes the build for OpenBSD. check-in: 1dd42ef414 user: drh tags: experimental-mmap
2013-04-02
20:55
Fix a resource leak in os_unix.c. check-in: b29cda03fe user: dan tags: experimental-mmap
20:29
Adjustments to mmap1.test so that it works better on windows. It still gets some answers wrong, but it no longer crashes. check-in: ee8d3ceeec user: drh tags: experimental-mmap
20:19
Fix a bug in mmap2.test that was leaving an invalid sqlite3_log() callback installed, causing a crash. check-in: c0cdaa0735 user: dan tags: experimental-mmap
20:13
Add assert to the Windows VFS pertaining to the size of the SIZE_T type. check-in: 4eeea58354 user: mistachkin tags: experimental-mmap
18:33
Add test cases to mmap1.test and pagerfault.test. check-in: 3050136be9 user: dan tags: experimental-mmap
18:31
Change an assert in pager.c to acknowledge that it is possible for sqlite3PagerRollback() to return SQLITE_CORRUPT. check-in: d641d3d20d user: dan tags: experimental-mmap
18:25
Fix the build for Mac. check-in: d36ce0bbad user: drh tags: experimental-mmap
15:37
Add new test file btreefault.test. check-in: 7fe908afeb user: dan tags: experimental-mmap
14:37
Fix a faulty assert() in the os_win.c VFS. check-in: fd6ee54969 user: drh tags: experimental-mmap
12:04
Add test cases for errors in mmap() or mremap() is os_unix.c. check-in: 3098a3c1e7 user: dan tags: experimental-mmap
10:29
Proposed template preprocessor magic for activating mmap only on platforms where we know it works. check-in: d96272f031 user: drh tags: experimental-mmap
01:45
Reorder two conditions to make coverage testing easier. check-in: 793ba4e996 user: drh tags: experimental-mmap
00:41
Remove an unreachable condition from pager.c. check-in: 3628e86bf1 user: drh tags: experimental-mmap
00:15
Always send the SQLITE_FCNTL_MMAP_LIMIT pragma to the VFS, even if the limit is zero and even if the VFS does not support xFetch(). check-in: 01ffdabbad user: drh tags: experimental-mmap
2013-04-01
22:42
Remove a debugging printf() accidently left in the previous check-in. check-in: 8198cdd8ac user: drh tags: experimental-mmap
22:38
Add the SQLITE_CONFIG_MMAP_LIMIT configuration option for overriding the SQLITE_DEFAULT_MMAP_LIMIT compile-time setting. Enhance "PRAGMA mmap_limit" so that without a specific database name, it sets the limit on all database files and changes the default for any future databases that might be added using ATTACH. check-in: 78141d0a16 user: drh tags: experimental-mmap
18:25
Add a comment to xUnfetch on windows to say that the call to winUnmapfile() might be unnecessary. check-in: e3c63c31a2 user: drh tags: experimental-mmap
18:15
In windows, round down the size of the memory mapped region to the next smaller multiple of the page size. check-in: 0e44ed1bad user: drh tags: experimental-mmap
17:58
Merge accidental fork. check-in: 5f4437c0e3 user: dan tags: experimental-mmap
17:56
Attempt to emulate mremap() on non-Linux systems by allocating a second mapping immediately following the first in virtual memory. check-in: 4d67433db8 user: dan tags: experimental-mmap
17:56
Bug fix in the winMapfile() subroutine: Be sure to record the map object handle in the sqlite3_file object. check-in: ee4d188e20 user: drh tags: experimental-mmap
17:22
Add xFetch and xUnfetch methods to the os_win.c VFS. check-in: a1653a257d user: drh tags: experimental-mmap
16:56
Ensure that a checkpoint does not use an out-of-date mapping. check-in: a1040f0397 user: dan tags: experimental-mmap
14:35
Fix a typo in a log message in wal.c. check-in: 83fc48d165 user: dan tags: experimental-mmap
14:29
Fix a problem in btree.c that could cause a crash following an OOM. check-in: b724aa5889 user: dan tags: experimental-mmap
2013-03-26
20:32
Change os_unix.c to use either one or two mappings internally. check-in: e7698cba9b user: dan tags: two-mappings
18:48
Fix a comment in os_unix.c. No code changes. check-in: 72813b8ec9 user: drh tags: experimental-mmap
14:36
Change the name of the Pager.pFree field to Pager.pMmapFreelist. check-in: 611bd824c2 user: drh tags: experimental-mmap
14:16
In btree.c, save the positions of any open cursors before moving any pages around to auto-vacuum the database on commit. check-in: 30c0a69363 user: dan tags: experimental-mmap
01:07
Previous check-in accidently left mmap turned off by default. This checkin fixes that. Unfortunately, shared.test is now segfaulting. All other veryquick tests appear to work, however. check-in: a850c7319c user: drh tags: experimental-mmap
2013-03-25
23:09
Memory-mapped I/O is now on by default. The "PRAGMA mmap_limit(N)" can be used to issue a hint to the VFS to limit mmap space to N bytes. The VFS is free to ignore that hint if desired. However, if "PRAGMA mmap_limit(0)" is used, xFetch is never called. check-in: 1b37c4effd user: drh tags: experimental-mmap
20:50
Add munmap and mremap to the set of os interfaces that can be overloaded in os_unix.c. check-in: 8776047bd7 user: drh tags: experimental-mmap
20:30
Use mremap() on Linux. check-in: 431aecc860 user: dan tags: experimental-mmap
19:57
Merge all recent trunk changes into the experimental-mmap branch. check-in: a607d63f0b user: drh tags: experimental-mmap
19:05
Add a test that simulates an error in mmap(). check-in: 6ec7367d8e user: dan tags: experimental-mmap
18:25
Simulate OOM errors in the sqlite3OsFetch() function. Run malloc.test as part of the "mmap" permutation. check-in: 77443ef2cd user: dan tags: experimental-mmap
17:00
Change the signature of the xUnfetch method to "int (*xUnfetch)(sqlite3_file*, sqlite3_int64 iOfst, void *p)". check-in: 115b830509 user: dan tags: experimental-mmap
16:28
Remove unnecessary code to round the size of a memory mapping to 4KB from os_unix.c. Rename SQLITE_IOERR_MREMAP to SQLITE_IOERR_MMAP. Fix other small issues in os_unix.c. check-in: dce35c01a5 user: dan tags: experimental-mmap