1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-18 10:21:03 +03:00
Commit Graph

383 Commits

Author SHA1 Message Date
drh
6cf9d8d63a Add assert()s to the implementation of xRead() in the built-in VFSes to
verify that the offset parameter is always non-negative.

FossilOrigin-Name: cf5c3642247fdd34d87f0368594cd7b8f081636a
2013-05-09 18:12:40 +00:00
mistachkin
e84d8d3219 More refinements to Windows OSTRACE usage. Replace all usage of sqlite3TestErrorName() with sqlite3ErrName() and add missing return codes.
FossilOrigin-Name: 05ba5e23fcc5da416d47a8ad5e667ed6a0c7a34a
2013-04-29 03:09:10 +00:00
mistachkin
f2c1c99f15 Initial work on reforming usage of OSTRACE by the Windows VFS.
FossilOrigin-Name: b347b5d1a01301f44e6fd20ee03a9529ffd25788
2013-04-28 01:44:43 +00:00
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
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
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
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
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
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
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
drh
07fa864d15 Fix a faulty assert() in the os_win.c VFS.
FossilOrigin-Name: fd6ee54969322203c02ce9bd8744e095faf6a69c
2013-04-02 14:37:40 +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
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
drh
dee6554811 Merge all recent trunk changes into the experimental-mmap branch.
FossilOrigin-Name: a607d63f0b6a3d3785e9385187d3e6b92e14fc70
2013-03-25 19:57:26 +00:00
mistachkin
2753388e8a In the winMremap VFS function, unmap the region prior to attempting to truncate the file.
FossilOrigin-Name: 8870c4cc6cda07154936644f7df25bd81d6ba38a
2013-03-23 12:15:27 +00:00
mistachkin
46fce002d9 Do not unmap the mapped file region in winTruncate as there may be outstanding pointers to it.
FossilOrigin-Name: f57a9c91e993f76ce8b923e06e721414980e8e61
2013-03-23 10:09:46 +00:00
mistachkin
daf9a5a402 Preliminary changes to support the xMremap VFS method on Windows.
FossilOrigin-Name: 75a85a1c6ac59f2d021c28fa2161afb1118deea4
2013-03-23 09:56:39 +00:00
mistachkin
48864df97d Many spelling fixes in comments. No changes to code.
FossilOrigin-Name: 6f6e2d50941e444ebc83604daddcc034137a05b7
2013-03-21 21:20:32 +00:00
drh
1488052d38 Update the cygwin interface to use the newer 1.7 APIs instead of the
1.5 APIs.  Also shorten over-length source code lines in os_win.c.

FossilOrigin-Name: 6b2838336a31e34c540210ccc9c934d4ba94757c
2013-03-01 23:24:04 +00:00
mistachkin
4600255a88 Check for a NULL handle prior to manually calling winClose.
FossilOrigin-Name: 843e1c543aabab8cd62f28742d5818887d36bcb7
2013-02-15 04:21:01 +00:00
mistachkin
9ce59a947f On WinCE, fill in the winFile structure after winceCreateLock has succeeded.
FossilOrigin-Name: ec13544ce336e8a02b34d574ced5912b06c82c0e
2013-02-13 22:54:03 +00:00
mistachkin
7e87eae901 Improve memory allocation error handling on WinCE.
FossilOrigin-Name: 09dfc0c915ec2f0c5f633a3485d47cad15eec4dc
2013-02-12 09:46:48 +00:00
mistachkin
2bfe1df01b Add the ability to skip defining the localtime() function when being compiled for WinCE.
FossilOrigin-Name: e1640876df7ed6fb4e84292e5ce1f78635df64ab
2013-02-07 05:12:25 +00:00
drh
696b33e622 Add the SQLITE_FCNTL_TEMPFILENAME file control that asks the underlying VFS
to return a new temporary filename.  Per request from NSS team at Mozilla.

FossilOrigin-Name: 1a63b1d5fa5d79f96eddbda6d94bc10248863710
2012-12-06 19:01:42 +00:00
mistachkin
55fbc86981 In winDelete, determine that a file does not exist by checking for a last error of ERROR_FILE_NOT_FOUND or ERROR_PATH_NOT_FOUND.
FossilOrigin-Name: 692ad3c02b1af83f0419283fab9b800e361cdf31
2012-11-21 02:10:20 +00:00
drh
6d405c2cb7 Have the windows implementation of xDelete return SQLITE_IOERR_DELETE_NOENT
if the file to be deleted does not exist.  The unix implementation was
previously modified to behave this way.  The current changes simply brings
the two implementations into alignment.

FossilOrigin-Name: d4c36d4991b048133efb21b251ab57fa66764d9d
2012-11-20 15:06:57 +00:00
mistachkin
e1b461bd10 Fix harmless compiler warnings.
FossilOrigin-Name: 018e09c70347b9e0c76246ae65d57ef5d29a965a
2012-10-18 09:39:16 +00:00
mistachkin
31d72112fa Manually define the Win32 file-mapping APIs for WAL if SQLITE_WIN32_FILEMAPPING_API is defined.
FossilOrigin-Name: 1c2c0a2880dd0ee8862352e307142b8de7e80d13
2012-10-08 14:36:42 +00:00
mistachkin
f1dacbfc5b Manually define the Win32 file-mapping APIs for WAL if SQLITE_WIN32_FILEMAPPING_API is defined.
FossilOrigin-Name: 585e2070eef3bc273f23d8e384a1261ee5fff5bd
2012-10-07 00:52:22 +00:00
mistachkin
08c1c3150b Changes for WinRT compatibility. Also, allow version resource compilation and embedding to be disabled at compile-time.
FossilOrigin-Name: 4b0facc13b1026419f9b89dab3453ba43071455c
2012-10-06 03:48:25 +00:00
mistachkin
7ea11af2d6 Improved reporting of filename translation errors in the Windows VFS.
FossilOrigin-Name: eb0f1c292e6fb00c4d9dbb2317fdc4717c5be96b
2012-09-13 15:24:29 +00:00
mistachkin
c60941f814 Allow SQLite to work on Win32 with SQLITE_OS_WINNT=0 as long as WAL is disabled.
FossilOrigin-Name: c1a8557008e56aa9bcb4565e4178fc57295c563d
2012-09-13 01:51:02 +00:00
drh
19038f1b79 Changes for ERROR_PATH_NOT_FOUND in addition to ERROR_FILE_NOT_FOUND in
winAccess().

FossilOrigin-Name: 527340abff18aedbcb0f82ac1296a9f548e24ac4
2012-08-31 12:31:18 +00:00
mistachkin
af52973724 Issue a log message if the temporary directory has not been set when running on WinRT.
FossilOrigin-Name: 9ee39102942d4a4830417f61f0969f29ac0282a1
2012-08-28 04:20:56 +00:00
mistachkin
d5578433ff Fix all known instances of 'repeated the' style typos in comments. No changes to code.
FossilOrigin-Name: 9b19b847533f944f289d93dcdba29c0d67bf251c
2012-08-25 10:01:29 +00:00
mistachkin
484dbef5d9 Add assert to check that the memory block for the previous directory value was allocated via sqlite3_malloc or related function.
FossilOrigin-Name: 1246f15b146ebf6518fb8f5c92a1ebc9495cd9dc
2012-08-22 00:18:27 +00:00
mistachkin
6154068851 Added sqlite3_win32_set_directory API to assist in portability to WinRT.
FossilOrigin-Name: 600de08d40ceead24f425d20429d60f5732f8ba7
2012-08-21 23:33:45 +00:00
drh
6ddecb753a Cherry-pick [555fc07]:
Changes to the thread routines to disable them when threading is turned
off using sqlite3_config().  Also merge all recent trunk changes.

FossilOrigin-Name: c92b0fe1371e7c20a5fbdf5fa96e30da14c40880
2012-08-21 17:36:44 +00:00
mistachkin
6f92833f9d Skip defining some WAL specific things in the Win32 VFS code when compiling without WAL support. Also, fix an example command line in the MSVC makefile.
FossilOrigin-Name: 61b1ae121782525b37882a559d0fbb7c85237fd5
2012-08-17 11:47:32 +00:00
drh
e22724ee54 Update the threads branch to include all the latest trunk changes.
FossilOrigin-Name: f4125771e21f1ca29d5442b5441dacfc06b8032b
2012-08-16 11:24:22 +00:00
mistachkin
1700b1c65c Refer to the file mapping Win32 API functions only when absolutely necessary.
FossilOrigin-Name: 1de2237d005fa1a1e1d034820d17daf64a860f81
2012-08-14 01:45:12 +00:00
mistachkin
a0aa13b677 Refer to the WaitForSingleObjectEx and SetFilePointerEx Win32 functions only for platforms where they are going to be used.
FossilOrigin-Name: 9888ce9294c09749f5c958f965f949561867fea0
2012-08-13 22:05:22 +00:00
mistachkin
572df3b1e4 Enhance implementation of the Win32 thread wait function.
FossilOrigin-Name: 049b04117353c3e163ffc87916cbe121403a2821
2012-07-23 02:00:38 +00:00
mistachkin
da0e47109e Add Win32 support to the internal threads interface. Also, add several asserts and fix a few typos.
FossilOrigin-Name: 793195d37109c75eba84f7190c8fe0b8722f76f7
2012-07-21 22:49:08 +00:00
mistachkin
401e9153e9 When not compiling for WinRT, skip using a couple Win32 APIs unavailable when compiling with MinGW.
FossilOrigin-Name: eb29e2d93984c29756430b55c08501d7e1783df0
2012-06-04 05:18:32 +00:00
mistachkin
1e6eea9502 Update several APIs to enable compilation with newer revisions of WinRT.
FossilOrigin-Name: 54de739f056749b53b198f6b074d9e649520cf00
2012-05-31 22:12:26 +00:00
mistachkin
4ec0100f35 Merge updates from trunk.
FossilOrigin-Name: 224c65e4a5c6ede076c364c93933cedd17f1e70b
2012-05-17 21:04:26 +00:00