drh
73b64e4d2e
Initial code for incremental checkpoint in WAL mode. This check-in compiles
...
on unix and runs as long as you do not engage WAL mode. WAL mode crashes and
burns. Consider this check-in a baseline implementation for getting the new
capability up and running.
FossilOrigin-Name: ef3ba7a17ff90674d702e5694b9e792851ab6998
2010-05-30 19:55:15 +00:00
drh
286a288493
Add a new xShmBarrier method to the VFS - a shared-memory fence operation.
...
Implement the same in both unix and win32. Use it to make the WAL subsystem
more robust.
FossilOrigin-Name: 1bd011c9fed5ef29fb616b4d0a52df3b82221b1f
2010-05-20 23:51:06 +00:00
drh
5939f44375
Mark the shared-memory in the WAL implementation as volatile.
...
FossilOrigin-Name: 0a6787908e989bd5e6af25acbdc59ebc8fa61d6d
2010-05-18 13:27:12 +00:00
drh
d9e5c4f6ed
Refactoring the VFS-SHM methods used by WAL. This version compiles and
...
runs non-WAL test cases but crashes and burns on wal.test.
FossilOrigin-Name: 2b00152c1ac0b3735aa6cfab61259ff04d81c701
2010-05-12 18:01:39 +00:00
drh
b7e8ea2015
Use VFS method xCurrentTimeInt64 instead of xCurrentTime when it is available.
...
Provide an implementation of xCurrentTimeInt64 for os_unix.c.
FossilOrigin-Name: ab77b3ae6da3370d8bc3b2c9c0edc723b69f5a95
2010-05-03 14:32:30 +00:00
drh
10a76c90e4
Make the TEMP file tables use the page size set for the main database.
...
Ticket [b80eeab588c4].
Also copy over the changes from apple-osx check-in [7c3bede3f2].
FossilOrigin-Name: 5dcfb0c9e420d27e54a299b3991b98776651a507
2010-01-26 01:25:26 +00:00
drh
68ff78b1b0
Make sure the output of sqlite3OsFullPathname is initialized even if the
...
fails due to I/O or OOM errors.
FossilOrigin-Name: e4943adb83819dee06e2e9da25ff6d967ca170de
2009-11-16 23:36:33 +00:00
drh
c81c11f62c
Remove the obsolete "$Id:$" RCS identifier strings from the source code.
...
FossilOrigin-Name: f6c045f649036958078cb15cd9d5453680c82b0c
2009-11-10 01:30:52 +00:00
drh
f1f12688d8
Added SQLITE_OPEN_SHAREDCACHE and SQLITE_OPEN_PRIVATECACHE flags as
...
possibilities to sqlite3_open_v2(), to override the global shared
cache mode setting. Ticket [9fd0bc36639c15]
FossilOrigin-Name: f509eb8b488bb39deda4ca88f66ed40c6784af02
2009-09-09 14:17:52 +00:00
drh
adad77a6c6
Always call sqlite3_malloc() in sqlite3OsInit(), even when not compiled
...
with SQLITE_TEST.
FossilOrigin-Name: b98a8706a61ad27c881b6820eee10d06bfb27417
2009-08-17 16:01:11 +00:00
dan
3d6e060b48
Move error simulation code from the sqlite3_os_init() functions into a wrapper.
...
FossilOrigin-Name: 67ad21abf88abb7a3e2eacddcaf1ab5d54149807
2009-08-17 15:52:25 +00:00
danielk1977
b5a1920816
Do not simulate OOM conditions in the sqlite3OsXXX() calls if the underlying file is an in-memory journal file. (CVS 6946)
...
FossilOrigin-Name: d486811715350f315374cc41f3d808a75d140afb
2009-07-27 11:41:20 +00:00
drh
072db2fb13
When a VFS.xOpen fails, make sure the pMethods pointer is zeroed on the
...
sqlite3_file object so that subsequent xClose() operations against that
same file handler are no-ops. Bug in the test_async.c module only - not
in the core library. Ticket #3744 . (CVS 6384)
FossilOrigin-Name: c32b454118f4b0cc615edb9b35f749db45f6b36d
2009-03-25 14:24:41 +00:00
drh
1875f7a3db
The amalgamation now compiles cleanly on GCC with options
...
-pedantic-errors -Wno-long-long. (CVS 5991)
FossilOrigin-Name: 73c7302c5f76a2f61ecd75f8bda69bb500d3119c
2008-12-08 18:19:17 +00:00
drh
18472fa7b8
Remove the SQLITE_MUTEX_APPDEF compile-time option. The SQLITE_THREADSAFE=0
...
option always removes all mutex code. For application-defined mutexes only,
use SQLITE_THREADSAFE=1 with SQLITE_MUTEX_NOOP=1. Ticket #3421 . (CVS 5779)
FossilOrigin-Name: 02a12eb1cfe9307c66556105a1a99d657cc01ab5
2008-10-07 15:25:48 +00:00
danielk1977
98c21903bd
Always transform error code SQLITE_IOERR_NOMEM to SQLITE_NOMEM before returning. This was already happening in most places. (CVS 5738)
...
FossilOrigin-Name: 046ef07261d520c9399bd8cdfdfd5281956b7a27
2008-09-23 16:41:29 +00:00
danielk1977
95e80d61af
Fix the position of the SQLITE_WSD macro in the declaration of global variable vfsList. (CVS 5665)
...
FossilOrigin-Name: e869446119724b9b1568b1f8e56e9f29ff6d3816
2008-09-02 17:18:51 +00:00
danielk1977
5c8f858790
Change some more global variables to work with OMIT_WSD. (CVS 5660)
...
FossilOrigin-Name: 46acaf58e11ebe69e4fb5f171d3ee29f056d8e68
2008-09-02 10:22:00 +00:00
drh
633e6d57d9
Implement the "lookaside" memory allocation cache. Use of this cache makes
...
the speed1.test script run about 15% faster. Added new interfaces to
control the cache. (CVS 5488)
FossilOrigin-Name: e48f9697e9fea339e150ddc32940760027dd07d9
2008-07-28 19:34:53 +00:00
drh
4ead1482d8
Documentation updates in sqlite.h.in. No changes to code. (CVS 5315)
...
FossilOrigin-Name: 168fd6f83e2c837e91d02fa49fff3fe2f9538928
2008-06-26 18:16:05 +00:00
danielk1977
29bafeabcd
Change the OS_XXX pre-processor symbols to SQLITE_OS_XXX. Symbols "OS_UNIX", "OS_WIN", "OS_WINCE", "OS_OS2" and "OS_OTHER" are now "SQLITE_OS_UNIX", "SQLITE_OS_WIN", "SQLITE_OS_WINCE", "SQLITE_OS_OS2" and "SQLITE_OS_OTHER", respectively. (CVS 5311)
...
FossilOrigin-Name: cdd4cf4ce2ab363ddc3f27c5e44896e17269a161
2008-06-26 10:41:19 +00:00
danielk1977
71bc31c68d
Fix a race condition in sqlite3_initialize(). (CVS 5310)
...
FossilOrigin-Name: 70b2ed2afcf1757d1c58f3a83dad4a5fb226ae63
2008-06-26 08:29:34 +00:00
danielk1977
c0fa4c5f32
Remove internal function sqlite3OsDefaultVfs(). The built-in VFS layers now register their VFS implementations by calling sqlite3_vfs_register() from within sqlite3_os_init(). (CVS 5307)
...
FossilOrigin-Name: 8fa33b79d7369ec5777fd9ad3349f0fa31b98fd6
2008-06-25 17:19:00 +00:00
drh
a418980be0
Fix some minor compile problems. (CVS 5248)
...
FossilOrigin-Name: 7d38da3eea9ce93f32e90fce0af5101e2cf12462
2008-06-19 16:07:07 +00:00
danielk1977
59f8c08ecc
Implement the 'CONFIG_SINGLETHREAD' and 'CONFIG_MULTITHREAD' configuration modes. (CVS 5234)
...
FossilOrigin-Name: 5059644c4bc5f6679afd939e0bc26080f42a9918
2008-06-18 17:09:10 +00:00
drh
e5ae5735c0
Continuing work on the new memory allocation subsystem.
...
Added routines for temporary memory allocation. Right the btree
balance mechanism to only do one temporary allocation at a time. (CVS 5220)
FossilOrigin-Name: 65fe7b62cfe7d11cd667681a64c96fe7b2fe5685
2008-06-15 02:51:47 +00:00
drh
40257ffd0a
Progress toward implementation of sqlite3_config() and a rework of the
...
mutex and memory allocation subsystems. This is an incremental check-in. (CVS 5218)
FossilOrigin-Name: a03c5af115889f477e17187a198a7d2d40bc76bf
2008-06-13 18:24:27 +00:00
danielk1977
17b90b5316
Remove the xGetTempname() method from the vfs structure. Temp files are now opened by passing a NULL pointer as the filename to xOpen(). (CVS 5190)
...
FossilOrigin-Name: 5173b3e816c7eb711cd21a9068bbafb9ebb7cff1
2008-06-06 11:11:25 +00:00
danielk1977
861f74563d
Modify the signatures of the sqlite3_vfs.xAccess and sqlite3_vfs.xCheckReservedLock functions. (CVS 5188)
...
FossilOrigin-Name: 4226ac54beea1b58de8ab7b9d768d999f50438a6
2008-06-05 11:39:11 +00:00
shane
75998ab3d9
sqlite3OsDl*() APIs can be omitted if SQLITE_OMIT_LOAD_EXTENSION defined. (CVS 5171)
...
FossilOrigin-Name: 7c51a97dc11f20f7323a9dc5c04a3b84380cf8fb
2008-05-29 02:52:59 +00:00
danielk1977
822a51628f
Add more version tags to files that lack them. Ticket #3120 . (CVS 5137)
...
FossilOrigin-Name: 81a8c70ed7a86abf286706fdbc251f31c9c53382
2008-05-16 04:51:54 +00:00
shane
d3638aef0b
On instruction from DRH, only do malloc failure tests for O/S ops on non-Windows systems. Better test fixture code will be introduced in 3.6.0 to add this coverage back in for Windows. (CVS 5130)
...
FossilOrigin-Name: e4aab150042bd22868ab02645151cb69a1c02ba0
2008-05-13 19:41:53 +00:00
danielk1977
2a8ce735d1
If an error occurs within xAccess(), it should return -1. Remove an assert()
...
that was preventing it from doing so. (CVS 5098)
FossilOrigin-Name: 3fbcef46f7b6dcd20c1137692aa5bc0f64eaa3dd
2008-05-07 14:49:21 +00:00
mlcreech
4003298ba2
Replace always-true condition with assertion (CVS 4970)
...
FossilOrigin-Name: be7f3240c21c01509263005af2ccc3d7626fe729
2008-04-08 03:09:22 +00:00
drh
19db935225
Allow the xAccess method in the VFS to return -1 to signal an I/O
...
error, and in particular an SQLITE_IOERR_NOMEM. (CVS 4925)
FossilOrigin-Name: 3cb704c4c439425781644b1b653b7e50f02fd91e
2008-03-27 22:42:51 +00:00
drh
7e2e6dc950
Work around problems with compilers that do not allow C preprocessor
...
macros with empty arguments. (CVS 4921)
FossilOrigin-Name: afe1963ec5588d2195f027fa438cf63d49c89cd9
2008-03-26 17:18:48 +00:00
danielk1977
a7a8e14bf2
Where possible, avoid freeing buffers allocated for vdbe memory cells in case they can be reused. (CVS 4783)
...
FossilOrigin-Name: 990237e27e417aff3dbf05784b716c21f3761a3a
2008-02-13 18:25:27 +00:00
drh
7e8b848a60
Make sqlite3SafetyOn() and sqlite3SafetyOff() macros which disappear when
...
compiling without -DSQLITE_DEBUG=1. (CVS 4744)
FossilOrigin-Name: 5375ad6b4b652f388469b0ce4e8e78b3f49169bd
2008-01-23 03:03:05 +00:00
danielk1977
bf2609781b
Move the test (sqlite3_simulate_device) functionality out of the main code and into a test vfs. (CVS 4737)
...
FossilOrigin-Name: 17e7bd6c3f507ffc6b56f54ae8c70730e8246f39
2008-01-22 11:50:13 +00:00
drh
9bc5449f9d
Make sure the sqlite3_vfs_register() and sqlite3_vfs_unregister() APIs
...
work right even if not VFS is currently registered. Ticket #2738 . (CVS 4505)
FossilOrigin-Name: c36500871e85b55cb0804d5c9e88fa6861a507a9
2007-10-23 14:49:59 +00:00
danielk1977
ae72d98252
Add automatic recovery from the pager "error-state". Also add a new error code - SQLITE_IOERR_NOMEM. (CVS 4454)
...
FossilOrigin-Name: 12eca32a6a3d68d5b20eed03afdffe7599e66014
2007-10-03 08:46:44 +00:00
danielk1977
adfb9b0501
Add a parameter to specify the size of the output buffer passed to xGetTempname() and xFullPathname(). This, and the previous commit, are changes to the public vfs API introduced in 3.5.0. (CVS 4433)
...
FossilOrigin-Name: 8b29f5fbfc723cdf67cf3410cd01f7c17ea39a4b
2007-09-17 07:02:56 +00:00
danielk1977
76ee37f9bb
Change the names of xGetTempName and sqlite3OsGetTempName to xGetTempname. To be consistent with xFullPathname and sqlite3OsFullPathname. (CVS 4432)
...
FossilOrigin-Name: ad3687b16e9420d8bbaa3a645aaf803813b36061
2007-09-17 06:06:39 +00:00
drh
e9bb50ae50
The sqlite3_vfs_register() interface now calls sqlite3_vfs_find(0) to make
...
sure the VFS subsystem is initialized. Ticket #2611 . (CVS 4369)
FossilOrigin-Name: 4a9999a36d01a8c6490792605a6f7e233cc4402c
2007-09-02 17:52:04 +00:00
danielk1977
95c8a54c7d
Fix for registration of non-default vfs objects. (CVS 4360)
...
FossilOrigin-Name: 5f48fb95c26a713b3259ee49fd444108030376dc
2007-09-01 06:51:27 +00:00
drh
9e33c2c108
Remove the xLockState method for sqlite3_io_methods. Replace it with
...
a defined call to xFileControl(). This simplifies the interface and
also gives us coverage testing of sqlite3_file_control(). (CVS 4355)
FossilOrigin-Name: 306586c412b87c6d12bac796641517afa3f9eb6a
2007-08-31 18:34:59 +00:00
drh
cc6bb3eaeb
Initial implementation of the sqlite3_file_control() interface.
...
Compiles and passes all historical tests but the new method is itself
untested. (CVS 4353)
FossilOrigin-Name: d3ab3e3911f10b17d0859a34f4f007c790a0cd82
2007-08-31 16:11:35 +00:00
drh
1cc8c448b5
Remove nRef and vfsMutex from the sqlite3_vfs structure. Omit the
...
sqlite3_vfs_release() interface. Less memory allocated for a pager
in the common case where the size of the pathname is less than MAX_PATH. (CVS 4287)
FossilOrigin-Name: b8451da378179d43f25d9a014480c0f13dd1dc37
2007-08-24 16:08:29 +00:00
drh
153c62c461
The win32 driver compiles but does not yet work well. Many bugs
...
fixed. (CVS 4282)
FossilOrigin-Name: 3a68fcddfa9184e4b310ce0a21312c54b9462ec8
2007-08-24 03:51:33 +00:00
danielk1977
2ca0f86354
Add some tests for the atomic-write optimization. (CVS 4275)
...
FossilOrigin-Name: e2cc7b4a3476a733b2701546f6b4ec9abc18152b
2007-08-23 08:06:44 +00:00