aboutsummaryrefslogtreecommitdiff
path: root/src/mutex.c
Commit message (Collapse)AuthorAge
* Add new memory barriers during initialization.drh2020-01-29
| | | FossilOrigin-Name: a9b2adc5d61790abd86839d12e7ecb98a85d7e4cde5f94558530e32449d9e483
* Make the internal dynamic string interface available to extensions usingdrh2018-05-09
| | | | | | | the new sqlite3_str object and its associated methods. This is mostly just a renaming of internal objects and methods to use external names, through there are a few small wrapper functions. FossilOrigin-Name: 87f261f0cb800b06ad786f6df16f2c4dddd0d93dfdcc77b4a4eaa22920b56bf1
* Fix a compilation problem when both SQLITE_ENABLE_MULTITHREADED_CHECKS anddan2017-12-05
| | | | | SQLITE_ENABLE_API_ARMOUR are defined. FossilOrigin-Name: 0342ce510d2063a63839399a2cfa25b7fc02f4fde17764082676b332d6136241
* Use a symbolic constant instead of a literal (-1) to identify adan2017-11-28
| | | | | warn-on-contention mutex. FossilOrigin-Name: 12a23c0a66fac5c9674120b390f6abaeaba3f7ff04693b281af1eefb93d6f47c
* Add experimental feature to detect threading bugs in apps that usedan2017-11-25
| | | | | | SQLITE_CONFIG_MULTITHREADED. Enabled at compile time using SQLITE_ENABLE_MULTITHREADED_CHECKS. FossilOrigin-Name: a66886ac13aa6d8ccbb6d673ddd00267c93e3ee1fbc158236fce3157d150868d
* Import common changes from the mutex initialization branch.mistachkin2015-09-12
| | | FossilOrigin-Name: 334720c01722478af0d3dfd6fe8bafd88ba09f49
* Add a memory barrier to the mutex initialization logic, try to work arounddrh2015-09-06
| | | | | an issue reported by WebKit. FossilOrigin-Name: 11a9a786ec06403addb47f5c6fb142b382fae522
* Fix harmless compiler warnings.drh2015-06-15
| | | FossilOrigin-Name: b0badb99023e23bef0e2064cec58f2b279af0c0b
* Add special handling for static mutexes in sqlite3_mutex_alloc() when ↵mistachkin2014-10-27
| | | | | automatic calls to sqlite3_initialize() are enabled. FossilOrigin-Name: 7857d27caa845e5629d94c2e66587dc89016daca
* Add three new static mutexes for use by the application. This is a partialdrh2014-07-30
| | | | | import of changes from the threads branch. FossilOrigin-Name: 3aad01960f92c5e77dba64ac1a6c6b063378fb97
* Fix typos and comments and make minor changes to a few function names,drh2012-01-04
| | | | | as suggested by readership. FossilOrigin-Name: e9d05cbb7676cbda83f1b3b71447404d7edde898
* Add some 'const' markers to static data that is really constant.dan2010-06-02
| | | FossilOrigin-Name: e7073e23b80e7cae0c76d42f014ee9b2d40a8f2f
* When the in single-threaded mode, the sqlite3_mutex_alloc() interfacedrh2010-05-05
| | | | | | | still returns a non-NULL value. The mutex doesn't do anything, but it tests non-NULL. This way, extensions (or VFSes) that use sqlite3_mutex_alloc() can tell the difference between an OOM error and mutexes being disabled. FossilOrigin-Name: 451fd175758983c335aab449fdc4cb838156c4cb
* Fix the sqlite3_mutex_alloc() interface to return NULL (not segfault) whendrh2010-05-01
| | | | | | operating in threadsafe mode. (This is a general-purpose bug fix which really ought to be ported to trunk.) FossilOrigin-Name: 64840a3caf569959c9d5e63bdbc0cf675fda3882
* Remove the obsolete "$Id:$" RCS identifier strings from the source code.drh2009-11-10
| | | FossilOrigin-Name: f6c045f649036958078cb15cd9d5453680c82b0c
* Change a couple of comments to use "SQLITE_MUTEX_OMIT" instead of OMIT_MUTEX.dan2009-09-30
| | | FossilOrigin-Name: b733e939f785111eac987fe4a25ccfa512e4f0b4
* Omit the mutexIsInit test variable when mutexes are disabled.drh2009-09-10
| | | FossilOrigin-Name: 3ea10434434d27a1300ba2b58e2c47c54909f4ff
* Add assert() statement to verify that new mutexes are not allocated whendrh2009-09-10
| | | | | the mutex subsystem is uninitialized. FossilOrigin-Name: 1183c533571bc9c7ce56102b718f3e4f4e78019e
* Code simplifications and comment improvements in support of structuraldrh2009-07-16
| | | | | coverage testing. (CVS 6899) FossilOrigin-Name: 945251798144110787b197f9eb552a2dd4a25cb4
* Allow sqlite3_shutdown() to be called by a process before ↵danielk19772009-02-17
| | | | | sqlite3_initialize() is. Prior to this commit such a call could segfault. (CVS 6296) FossilOrigin-Name: 79431c58d964d6057c7f42f7c1df74f3df4493eb
* Remove the SQLITE_MUTEX_APPDEF compile-time option. The SQLITE_THREADSAFE=0drh2008-10-07
| | | | | | 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
* Begin adding support for the SQLITE_OMIT_WSD macro. Some (many) WSD ↵danielk19772008-09-01
| | | | | variables still need wrappers added to them. (CVS 5652) FossilOrigin-Name: 573d92abb9adb1c321ebc2fcadcf14374213b093
* Shuffle some of the mutex related documentation in sqlite.h.in to match the ↵danielk19772008-06-19
| | | | | new sqlite3_mutex_methods based API. (CVS 5244) FossilOrigin-Name: 9cd7f8669a59c6096331229df2e2ad87e628abab
* Remove public APIs sqlite3_mutex_init() and sqlite3_mutex_end(). This commit ↵danielk19772008-06-18
| | | | | only changes the code, documentation is not updated yet. (CVS 5238) FossilOrigin-Name: 42a2a8f49324e2e07b81fd08e24f636a2d98a961
* Add a call to sqlite3_initialize() to sqlite3_mutex_alloc() (CVS 5236)danielk19772008-06-18
| | | FossilOrigin-Name: 8b23b719440aca9fca7e8f409729c3318ff3f80c
* Implement the 'CONFIG_SINGLETHREAD' and 'CONFIG_MULTITHREAD' configuration ↵danielk19772008-06-18
| | | | | modes. (CVS 5234) FossilOrigin-Name: 5059644c4bc5f6679afd939e0bc26080f42a9918
* Add some test infrastructure and cases for the new mutex api. (CVS 5230)danielk19772008-06-18
| | | FossilOrigin-Name: 262baee9952b28afe5dc77eb7365ebb11a480906
* Add the SQLITE_CONFIG_MUTEX symbol for use with sqlite3_config(). (CVS 5228)danielk19772008-06-17
| | | FossilOrigin-Name: af1835bb5f5e3fb78d782c7c287e20db169e883f
* Change the mutex interface to be pluggable. This is an incremental checkin, ↵danielk19772008-06-17
| | | | | there are still changes to come. (CVS 5227) FossilOrigin-Name: 597283637bcdc2398bf249b2bbc6ded47ad2de22
* Continuing work on the new memory allocation subsystem.drh2008-06-15
| | | | | | 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
* Continuing progress on the new memory allocation subsystem. Added thedrh2008-06-14
| | | | | | sqlite3_mem_methods structure for defining new memory allocators at run-time. (CVS 5219) FossilOrigin-Name: f00305f4cd2f487f660f34a21c1c24a0b37c7275
* Progress toward implementation of sqlite3_config() and a rework of thedrh2008-06-13
| | | | | mutex and memory allocation subsystems. This is an incremental check-in. (CVS 5218) FossilOrigin-Name: a03c5af115889f477e17187a198a7d2d40bc76bf
* Changes to delay freeing buffers associated with vdbe memory cells until ↵danielk19772008-03-26
| | | | | either sqlite3_finalize() or sqlite3_release_memory() is called. (CVS 4922) FossilOrigin-Name: 8c2f69521f13bc24cf005520efbe0589eeadd763
* Fix a problem in the noop-mutexes used for testing. (CVS 4420)danielk19772007-09-10
| | | FossilOrigin-Name: 4dbeb915b3138194abd5554b52003162235f9a5f
* Break up the mutex implementation into separate source files, onedrh2007-08-28
| | | | | each for unix, w32, and os2. (CVS 4312) FossilOrigin-Name: fc5cd71aef5ac194f51d73350d773d532020967e
* Modify sqlite3_release_memory() to use a global LRU list of pages. Untested. ↵danielk19772007-08-27
| | | | | (CVS 4301) FossilOrigin-Name: 5626ce0b5e249d48b56fdc4561ef663941eb23dc
* Create a fresh pthread_mutexattr_t every time a recursive mutex isdrh2007-08-25
| | | | | allocated. Ticket #2588. (CVS 4300) FossilOrigin-Name: 3d746343add3feb9d208302a00b419d71d6ba246
* Documentation and comment updates in sqlite.h.in and mutex.c. (CVS 4299)drh2007-08-25
| | | FossilOrigin-Name: 7289079d6b4a7a160063e34c0f5e43637ef7476f
* Use recursive mutexes in pthreads. If the pthreads implementation does notdrh2007-08-25
| | | | | | support recursive mutexes, then you cannot compile SQLite with SQLITE_THREADSAFE=1. Ticket #2588. (CVS 4297) FossilOrigin-Name: 1668284d151e78d16b0d83bf55dfd9d349a452a7
* Bug fix in the implementation of recursive mutexes using non-recursivedrh2007-08-25
| | | | | pthreads mutexes. Ticket #2588. (CVS 4292) FossilOrigin-Name: 7d24c3a5a7641df2bbb8c91a0bc5aa75c96a73fe
* New mutex implementation for both Unix and windows. (CVS 4291)drh2007-08-24
| | | FossilOrigin-Name: e144b81f699ca991cc4fa12a487156391db0b367
* A complete run of quick.test with mutex debugging enabled. (CVS 4266)drh2007-08-22
| | | FossilOrigin-Name: 783e07d561d1f5509de9475f3b9f38315f247002
* Reenable the memory management logic. The quick.test script now runs withdrh2007-08-22
| | | | | SQLITE_MEMDEBUG and SQLITE_ENABLE_MEMORY_MANAGEMENT. 7 minor errors. (CVS 4265) FossilOrigin-Name: 1914044b8832041f13b20ead613bd13725425d7a
* Remove unnecessary #includes of "os.h". New mutex implementations. (CVS 4255)drh2007-08-21
| | | FossilOrigin-Name: fbbd5bda544ffec4e1b43407b12e546235dc7873
* Work toward multithreading support. Currently crashes quickly on a test. ↵drh2007-08-20
| | | | | (CVS 4253) FossilOrigin-Name: 1315bd8e125602275fb718780f9b2730bd37f6ab
* Begin adding mutexes. Compiles without SQLITE_OMIT_SHARED_CACHE but wedrh2007-08-17
| | | | | get an assertion fault on the shared cache testing. (CVS 4239) FossilOrigin-Name: 4c1e9ffebe7c611a8b6a89153ae97ab9bca19ea3
* Change the design of the mutex interface to allow fordrh2007-08-16
| | | | | both "fast" and "recursive" mutexes. (CVS 4238) FossilOrigin-Name: 160593dcc5690af715b775c81137c6e09cca6454
* More work on refactoring of malloc() interfaces. There are still many ↵danielk19772007-08-16
| | | | | errors. (CVS 4233) FossilOrigin-Name: 77b1671351fe94b0ebc126a63140643deae2aa64
* Add initial implementations of mutex and memory subsystem modules. (CVS 4226)drh2007-08-15
FossilOrigin-Name: c0fa3769790af199a4c8715c80bb8ff900730520