mistachkin
5824e05315
Expand scope of the SQLITE_MAX_MMAP_SIZE define for the Win32 VFS.
...
FossilOrigin-Name: f4b8faab45e217f227bd7ce65d4741754731b8cd
2013-04-15 20:08:27 +00:00
drh
9b4c59fa1b
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.
FossilOrigin-Name: ea1404a10abd7f68e1f8e0708c8a3199d1f79665
2013-04-15 17:03:42 +00:00
drh
a1710cc2ea
Fix a formatting typo in a comment. No changes to code.
...
FossilOrigin-Name: 3412424990c93d2978e819e6099811f1cdde316d
2013-04-15 13:10:30 +00:00
drh
a3a5bd9b62
Only consider AS names from the result set as candidates for resolving
...
identifiers in the WHERE clause if there are no other matches. In the
ORDER BY clause, AS names take priority over any column names.
Candidate fix for ticket [2500cdb9be].
FossilOrigin-Name: ad53924dcadffb95c6497c46c228c67e8f5370e4
2013-04-13 19:59:58 +00:00
drh
e82c6c39f4
Fix the xCheckReservedLock() method on the windows VFS so that it cannot
...
return a false positive when two or more processes use it at the same time
on the same file. Ticket [7ff3120e4fa54abb55]
FossilOrigin-Name: dd3510bb20ade173c81c9874c05466011c8a249d
2013-04-11 18:28:55 +00:00
drh
ef8e986bde
Fix pragma code generation so that it always outputs an OP_Trace opcode so
...
that pragmas are shown in sqlite3_trace() output.
FossilOrigin-Name: 663f04bd48bc6f302230a22bd22b82bde2353943
2013-04-11 13:26:18 +00:00
drh
fbc7e8845d
Have the UNIX VFS issue warnings via sqlite3_log() if a database file is
...
renamed or unlinked or linked to more than one name while the file is open.
FossilOrigin-Name: e238dcf9189c029fbdcf89339e21d9cdd8fbf2c5
2013-04-11 01:16:15 +00:00
drh
d040e76442
Add new primary error codes SQLITE_NOTICE and SQLITE_WARNING for use with
...
sqlite3_log(). Add new extended error codes SQLITE_NOTICE_RECOVER_WAL and
SQLITE_NOTICE_RECOVER_ROLLBACK to use with sqlite3_log() messages that occur
on each recovery.
FossilOrigin-Name: be7d2c5482c41baf000d7fb5dccc31b974e91064
2013-04-10 23:48:37 +00:00
drh
56282a5bc7
Add the sqlite3_strglob() interface.
...
FossilOrigin-Name: 41d6ff32a6dd1311dc3aabe5156335a64a886919
2013-04-10 16:13:38 +00:00
drh
ab755ac81a
Change the rollback journal so that it invokes sqlite3_log() make a record
...
of a recovery, just as the WAL journal does.
FossilOrigin-Name: 7cd3f6cd3a39ed1c4bbf9e3508824150632c5bd9
2013-04-09 18:36:36 +00:00
drh
6e0b6d52da
Add extra #ifndef statements in os_unix.c and os_win.c to make sure the
...
memory mapped I/O really is disabled when SQLITE_DISABLE_MMAP is set.
FossilOrigin-Name: c1e2523c9051782569291fff998140f7e0b70b6d
2013-04-09 16:19:20 +00:00
drh
188d488409
Disable the use of memory-mapped I/O if the SQLITE_DISABLE_MMAP macro is
...
defined. Automatically define this macro for OpenBSD and QNX. Other
systems are likely to be added to the disabled list over time.
FossilOrigin-Name: 8a4314a398c6c6efb25e6993c826b7e60d9bb1f9
2013-04-08 20:47:49 +00:00
dan
bcb8a868ce
Handle the case in os_unix.c where SQLITE_FCNTL_MMAP_LIMIT requests that the mmap limit be set to a value smaller than the current mapping.
...
FossilOrigin-Name: 360473493ec1a7094a2b1c5436f3b70914a6dfdd
2013-04-08 15:30:41 +00:00
dan
fbfe388d31
Fix an incorrect type cast in an assignment in vdbe.c.
...
FossilOrigin-Name: 320b5295da57023399c7b9eed82eae40cf619803
2013-04-08 10:38:57 +00:00
drh
60625313b0
Increase the default SQLITE_MAX_SCHEMA_RETRY to 50. Make sure that macro
...
covers every case where a prepared statement might need to be reprepared due
to a schema change. The sqlite3_exec() interface now uses
sqlite3_prepare_v2().
FossilOrigin-Name: c1d7304c80c4a6244c8a9f6fad1eebd0f339c724
2013-04-06 18:06:51 +00:00
dan
d7a558a9fb
Improve the code coverage of "permutations.test coverage-pager".
...
FossilOrigin-Name: b095e2cdb61ca8487255687f58fb1024d40f3986
2013-04-05 20:40:43 +00:00
drh
67f7c780f3
Updates to the file-control documentation. No changes to code.
...
FossilOrigin-Name: 51fab480d0487107709e6c9e00bc0512b82ef1aa
2013-04-04 01:54:10 +00:00
drh
a478b3fa80
Try to use mmap() to speed access to the database file on windows, linux,
...
and mac.
FossilOrigin-Name: fff2be60779571c8fb89158db976ec3755e9a223
2013-04-04 00:40:17 +00:00
drh
b0a8ea046a
Release resources prior to bailing out of the btreeCreateTable() routine
...
following an OOM error.
FossilOrigin-Name: b2a72be9bab77f050bef75477a278a6294d3e854
2013-04-03 21:23:28 +00:00
drh
370c9f498d
Remove an unreachable branch in the direct blob I/O logic of btree.c.
...
FossilOrigin-Name: f97d7274f48e3bb98ed17eae11abb55064134874
2013-04-03 20:04:04 +00:00
drh
716d6d2da7
Fix a bug in the detection of iOS when setting the default mmap_limit.
...
FossilOrigin-Name: ac1432b3a8e968be4cbc138b4a35f34187c0c36f
2013-04-03 13:38:46 +00:00
drh
34f7490311
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.
FossilOrigin-Name: 2d9f1327fe79e40435ce1e2594d7cd9a5aea0ef2
2013-04-03 13:09:18 +00:00
dan
6c96946475
Remove the restriction on using xFetch to load the root pages of tables and indexes. It appears to have been based on a misconception.
...
FossilOrigin-Name: 5b082efead488a2fccc18171e640e0aa5252d1d0
2013-04-03 11:52:16 +00:00
dan
f7679ad19e
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.
...
FossilOrigin-Name: 9d9b1da54a555e8fb6037d63d1952458c12956d2
2013-04-03 11:38:36 +00:00
dan
227a1c482c
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.
...
FossilOrigin-Name: 3f09fba18f7e61e21381ffea13c31b968efd7d77
2013-04-03 11:17:39 +00:00
drh
2b8246e3e2
Initialize the mmap_limit of temporary files to the configured mmap_limit.
...
FossilOrigin-Name: 24bab7596bb7385981a5d331df5eeb05353547f7
2013-04-03 10:50:02 +00:00
drh
7e36962e6c
Make use of xFetch, if it is available when doing a VACUUM or a backup.
...
FossilOrigin-Name: 83bc37af07857960c11275891f853a358dcbbf05
2013-04-03 03:53:15 +00:00
drh
7d9f3943ba
Add the -mmap option to the command-line shell, for setting the default
...
mmap_limit.
FossilOrigin-Name: fc30d06c94c8212abb0477fb4cec4520d05bea34
2013-04-03 01:26:54 +00:00
drh
85830a70c2
Fix the unix driver to check defined(_BSD_SOURCE) rather than just the plain
...
_BSD_SOURCE macro. This fixes the build for OpenBSD.
FossilOrigin-Name: 1dd42ef4144ee08fb4ee1676d934a56a0e34bac2
2013-04-03 00:42:01 +00:00
dan
48ccef8059
Fix a resource leak in os_unix.c.
...
FossilOrigin-Name: b29cda03fe4e8d8f5b5acbbea2d69f284a2bdf23
2013-04-02 20:55:01 +00:00
mistachkin
a9d79ae95d
Add assert to the Windows VFS pertaining to the size of the SIZE_T type.
...
FossilOrigin-Name: 4eeea58354e21797ca1f4dc4ea785d0330381f0b
2013-04-02 20:13:04 +00:00
dan
d409792838
Change an assert in pager.c to acknowledge that it is possible for sqlite3PagerRollback() to return SQLITE_CORRUPT.
...
FossilOrigin-Name: d641d3d20d80fdb86d91de31fcf2eb5ca3c5c715
2013-04-02 18:31:29 +00:00
drh
a2c16c084a
Fix the build for Mac.
...
FossilOrigin-Name: d36ce0bbad58445c983597ee93438fe07b659cdc
2013-04-02 18:25:04 +00:00
drh
07fa864d15
Fix a faulty assert() in the os_win.c VFS.
...
FossilOrigin-Name: fd6ee54969322203c02ce9bd8744e095faf6a69c
2013-04-02 14:37:40 +00:00
drh
936c6d7e9e
If the SQLITE_TRACE_SIZE_LIMIT compile-time parameter is set to a positive
...
integer then limit the expansion of strings and blobs in trace output to
approximately that many bytes.
FossilOrigin-Name: e5b710849dd66673ba0e0d935b103cb29abfcc4b
2013-04-02 13:56:53 +00:00
dan
4ff7bc45c6
Add test cases for errors in mmap() or mremap() is os_unix.c.
...
FossilOrigin-Name: 3098a3c1e7305033904a496ef534cb312a876fab
2013-04-02 12:04:09 +00:00
drh
a3a2b3bdc0
Proposed template preprocessor magic for activating mmap only on platforms
...
where we know it works.
FossilOrigin-Name: d96272f031102514b02bd839aac9e37618872200
2013-04-02 10:29:13 +00:00
drh
6d81449fc6
Reorder two conditions to make coverage testing easier.
...
FossilOrigin-Name: 793ba4e996426522eeaa86589a9e974fa1fc1522
2013-04-02 01:45:10 +00:00
drh
092d993cb7
Remove an unreachable condition from pager.c.
...
FossilOrigin-Name: 3628e86bf131cb205f08a4b299d84007cd6b25c3
2013-04-02 00:41:18 +00:00
drh
98d2038fc2
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().
FossilOrigin-Name: 01ffdabbad30f1c157f2b33b1e85ee4d6c4632dd
2013-04-02 00:15:23 +00:00
drh
3861f546e3
Remove a debugging printf() accidently left in the previous check-in.
...
FossilOrigin-Name: 8198cdd8ac5dcc1c677fffa869ac965186b96abf
2013-04-01 22:42:48 +00:00
drh
a1f42c7c32
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.
FossilOrigin-Name: 78141d0a16dd1d56b575fccd149de7fa789cb06c
2013-04-01 22:38:06 +00:00
drh
a539c8a464
Add a comment to xUnfetch on windows to say that the call to winUnmapfile()
...
might be unnecessary.
FossilOrigin-Name: e3c63c31a21b27806592d066a013a111b280c61f
2013-04-01 18:25:48 +00:00
drh
db56bcbe42
In windows, round down the size of the memory mapped region to the next
...
smaller multiple of the page size.
FossilOrigin-Name: 0e44ed1badde6d766f18d1373d968e5b286b15bd
2013-04-01 18:15:50 +00:00
dan
57d6b25ec9
Merge accidental fork.
...
FossilOrigin-Name: 5f4437c0e35c8aa740515aac3e81e0146716d2bb
2013-04-01 17:58:10 +00:00
dan
e6ecd6630d
Attempt to emulate mremap() on non-Linux systems by allocating a second mapping immediately following the first in virtual memory.
...
FossilOrigin-Name: 4d67433db8fb4754ae6b192945e479f3d7bad579
2013-04-01 17:56:59 +00:00
drh
f9d18e472b
Bug fix in the winMapfile() subroutine: Be sure to record the map object
...
handle in the sqlite3_file object.
FossilOrigin-Name: ee4d188e207efa24a26776fa4f025c6ac39cce73
2013-04-01 17:56:28 +00:00
drh
5175b324b8
Add xFetch and xUnfetch methods to the os_win.c VFS.
...
FossilOrigin-Name: a1653a257d6af6e8b10c819e68b12f6c2f485811
2013-04-01 17:22:51 +00:00
dan
f55a4cf80c
Ensure that a checkpoint does not use an out-of-date mapping.
...
FossilOrigin-Name: a1040f0397d57855500926494c978623286ddc77
2013-04-01 16:56:41 +00:00
dan
0943f0bdc8
Fix a typo in a log message in wal.c.
...
FossilOrigin-Name: 83fc48d16572443373e5de62adbd4cd53c2f7786
2013-04-01 14:35:01 +00:00