1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-14 00:22:38 +03:00
Commit Graph

832 Commits

Author SHA1 Message Date
danielk1977
31fab4f30b Updates to mem6.c allocator. (CVS 5473)
FossilOrigin-Name: 43a4cae2acea33d1a17c0037516e9c27fb7e8e91
2008-07-25 08:48:59 +00:00
danielk1977
2d34081de9 Add mem6.c, a new allocator. More to come. (CVS 5467)
FossilOrigin-Name: 192bc192185a7b475ef9331e2a4a0dc68083ec03
2008-07-24 08:20:40 +00:00
shane
dfb7b37dc0 Add assertion check for NaN support at startup. (CVS 5447)
FossilOrigin-Name: 8474cde34b3fcb99cd5908fddb8528d0db331cdf
2008-07-22 05:13:30 +00:00
drh
118640bdad Fix a bug in the error reporting of sqlite3_table_column_metadata(). (CVS 5422)
FossilOrigin-Name: 7eba18c3a5c91be2ca2b6cf9e4e04a2791e1f7b2
2008-07-16 14:02:32 +00:00
drh
7830cd41ba Activate testing of mem3 and mem5. Fix problems found. Tickets #3223
and #3225.  Other test configuration changes. (CVS 5419)

FossilOrigin-Name: a3a7820540f6f2285e6c83cac84383fc7d60d267
2008-07-16 12:25:32 +00:00
drh
5d414839f5 Continuing work on improved test coverage. (CVS 5415)
FossilOrigin-Name: c942a38e9aa80770e7e2819e51b43fa7aa854d71
2008-07-15 14:47:18 +00:00
drh
34004cebb6 Additional test coverage for the btree module. Remove the failsafe() macro
and replace it with ALWAYS() and NEVER(). (CVS 5395)

FossilOrigin-Name: d7e2f0d2d45574d6191c1b191c0daf5260696f27
2008-07-11 16:15:17 +00:00
drh
8a42cbd3f0 Enhancements to the testing logic for malloc and mutex. Only permit one
of MEMSYS3/5 to be compiled-in at a time.  Omit the SQLITE_CONFIG_MEMSYS3/5
configuration options. (CVS 5389)

FossilOrigin-Name: ed8b2525006ae7f8cacd01b291760513fdbdff57
2008-07-10 18:13:42 +00:00
danielk1977
9a6284c1bb Add the SQLITE_OPEN_NOMUTEX flag. Used for opening connections that are not protected by an internal mutex. (CVS 5387)
FossilOrigin-Name: 7e58b78712420b3bd4320192a58d89eb71eecc9c
2008-07-10 17:52:49 +00:00
drh
22c2403a1c Begin adding the failsafe() macro. (CVS 5383)
FossilOrigin-Name: 8aae4fe7e702b7636fba1fd609a0ca22fdcc3371
2008-07-09 13:28:53 +00:00
drh
f089aa459e Completely rework the sqlite3SetString() primitive so that it honors the
SQLITE_LIMIT_LENGTH and avoids the use of strlen(). (CVS 5374)

FossilOrigin-Name: 8ed04b1e26a55306e4baf3e93fb084514134d603
2008-07-08 19:34:06 +00:00
drh
0a687d123e Improved enforcement of the SQLITE_LIMIT_LENGTH limit. (CVS 5368)
FossilOrigin-Name: ee93150878436ce6e992ea8a1d348fb58b03b5e2
2008-07-08 14:52:07 +00:00
danielk1977
fb437278bb Make sqlite3_shutdown() a no-op if the library is not initialized. (CVS 5364)
FossilOrigin-Name: d725d3bbcef6a8093a246f8ef5b11bf690662393
2008-07-08 12:02:35 +00:00
drh
bd0b1b50f4 Make check-in (5356) compatible with builds that do not enable memory
management.  Remove unnecessary code from main.c.  Add out-of-memory
tests for sqlite3_complete16(). (CVS 5357)

FossilOrigin-Name: 28f8b6bfcc3e169f8a54a6681395f2c85bf99cab
2008-07-07 19:52:09 +00:00
drh
d55d57ed5e When sqlite3_create_collation is called with an invalid encoding, return
SQLITE_MISUSE. (CVS 5354)

FossilOrigin-Name: eae4105d8a162ba80ca6fde40ae24fdc6c3eccdf
2008-07-07 17:53:07 +00:00
drh
24b58dd717 Additional test cases added on the sqlite3_create_function() interface. (CVS 5349)
FossilOrigin-Name: 4e941f3d43556d8a503bb96e8a74451de36d243e
2008-07-07 14:50:14 +00:00
danielk1977
5099be5e85 Change mem5.c so that the minimum allocation size is runtime configurable. (CVS 5320)
FossilOrigin-Name: 4f95f4cdf77e134fab42148e10198c7b008d4ae6
2008-06-27 13:27:03 +00:00
danielk1977
b06a0b67c4 Change the TEMP_STORE preprocessor symbol to SQLITE_TEMP_STORE. (CVS 5312)
FossilOrigin-Name: 1e3b8308021107d983d2152663f62b369cca091d
2008-06-26 10:54:12 +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
danielk1977
c66c0e14a6 Fix the allocator in mem5.c so that it can be enabled at run time using the sqlite3_config() function. (CVS 5304)
FossilOrigin-Name: 30ff6bb0b2d1068d28e86ac90bb9f454e4537a2d
2008-06-25 14:26:07 +00:00
danielk1977
32155ef0ff Fix up some details to do with the mem3.c (memsys3) allocator. If the library is compiled with SQLITE_ENABLE_MEMSYS3, the memsys3 allocator can be selected at runtime. (CVS 5303)
FossilOrigin-Name: 9c6c8e01b31abfe2bc8e650bbfdb504021dc7e59
2008-06-25 10:34:34 +00:00
danielk1977
57e5ea9327 Modify the memory allocation system in mem3.c so to fit in with the new sqlite3_mem_methods scheme. At this point it only "mostly" works. (CVS 5297)
FossilOrigin-Name: 3febef548fb1c314336fe4bc359d72a4fe84e84e
2008-06-24 19:02:55 +00:00
danielk1977
ca02679635 Avoid passing "void(*)(void)" as an argument to va_arg(). Codewarrior doesn't like it. (CVS 5279)
FossilOrigin-Name: edae76d6ff5918007c0a802a34e65412f8f0ebb6
2008-06-23 14:15:52 +00:00
mihailim
bda2e62c55 Fixed wrong type in sqlite3_create_collation16 declaration and definition (UTF-16 string had been passed as const char* instead of const void*) (CVS 5276)
FossilOrigin-Name: 4215e3e5ae3376bd46e5e12eec14b8209c164830
2008-06-23 11:23:14 +00:00
danielk1977
171bfed311 Fix a bug whereby opening a connection to an existing shared-cache caused the cache-size (the value configured by "PRAGMA cache_size") to revert to its default value. (CVS 5274)
FossilOrigin-Name: 0492aa8ed3c35dd2cdfc69c9cb87e43ef0460826
2008-06-23 09:50:50 +00:00
danielk1977
2d1d86fbbe Add a mode to the sqlite3_test_control() interface to register hooks called at the beginning and end of "benign malloc failure" blocks. This allows malloc() failure testing to be done using public APIs only. (CVS 5254)
FossilOrigin-Name: 56c8af1452dfdc8da858a2411bd6f3663a8a9326
2008-06-20 14:59:51 +00:00
danielk1977
ef05f2dfe3 Move (almost all) malloc failure test logic from fault.c to test_malloc.c. (CVS 5253)
FossilOrigin-Name: 4ae21e3419ad7e69dd735ca45fdc5a2de93d1840
2008-06-20 11:05:37 +00:00
danielk1977
d09414cdd6 Move the malloc() failure simulation out of malloc.c and into a separate sqlite3_mem_methods interface. Still some related changes to come. (CVS 5250)
FossilOrigin-Name: d22cd2a59f472f4eaf80aa9f55fbff2514ca428d
2008-06-19 18:17:49 +00:00
drh
65bbf29ee3 Bug fixes: Plug a memory leak introduced by the previous check-in. Get
the amalgamation to the point where it will compile. (CVS 5241)

FossilOrigin-Name: 005f8eaef5ae05cef5c76f3afe299eaa2cf8af2f
2008-06-19 01:03:17 +00:00
drh
f714199054 Add some test logic to the new memory allocation subsystem. (Lots more needed.)
The test suite is currently indicating memory leaks, though it is unclear if
this is a true code problem or just an instrumentation problem. (CVS 5240)

FossilOrigin-Name: cb1f11cd9764cf0275e88e1f6342e366e5536bfd
2008-06-19 00:16:08 +00:00
danielk1977
d025174f0b Remove public APIs sqlite3_mutex_init() and sqlite3_mutex_end(). This commit only changes the code, documentation is not updated yet. (CVS 5238)
FossilOrigin-Name: 42a2a8f49324e2e07b81fd08e24f636a2d98a961
2008-06-18 18:57:42 +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
335897970c Added new configuration options to query the low-level malloc interface
and to provide memory buffers for scratch, page-cache, and heap memory
allocators. (CVS 5231)

FossilOrigin-Name: e36201a352f832c97c5c0fcb872c1f094cac03d2
2008-06-18 13:27:46 +00:00
danielk1977
1a9ed0b27a Add some test infrastructure and cases for the new mutex api. (CVS 5230)
FossilOrigin-Name: 262baee9952b28afe5dc77eb7365ebb11a480906
2008-06-18 09:45:56 +00:00
danielk1977
b2e36222af Add the SQLITE_CONFIG_MUTEX symbol for use with sqlite3_config(). (CVS 5228)
FossilOrigin-Name: af1835bb5f5e3fb78d782c7c287e20db169e883f
2008-06-17 18:57:49 +00:00
drh
9be071664d Clean up obfuscated code in sqlite3_table_column_meta_data().
Be sure to invoke sqlite3_initialize() within sqlite3_mprintf(). (CVS 5224)

FossilOrigin-Name: bb4edb53964559fc1cd69700beb72ecc29b58f37
2008-06-16 20:51:15 +00:00
drh
fec00eabb3 Continuing progress on the new memory allocation subsystem. Added the
sqlite3_mem_methods structure for defining new memory allocators at
run-time. (CVS 5219)

FossilOrigin-Name: f00305f4cd2f487f660f34a21c1c24a0b37c7275
2008-06-14 16:56:21 +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
drh
58f1c8b773 Update the amalgamation builder to incorporate the RTREE extension. (CVS 5160)
FossilOrigin-Name: aa8eba3360c31182f5238e96b83a382374f40fab
2008-05-26 20:19:25 +00:00
danielk1977
ebaecc148f Import 'rtree' extension. (CVS 5159)
FossilOrigin-Name: b104dcd6adadbd3fe15a348fe9d4d290119e139e
2008-05-26 18:41:54 +00:00
danielk1977
131c8bc0c2 Ensure that the db.mallocFailed flag is cleared before sqlite3_errmsg16() returns. (CVS 5154)
FossilOrigin-Name: 0d47653a3c39b7cd41c7e6edd8c4b4543658412d
2008-05-22 13:56:17 +00:00
drh
4873d5f614 Make the benign-fault setting recursive. Make all malloc failures
during a rollback benign since there is nothing we can do about them. (CVS 5128)

FossilOrigin-Name: a9d1d931358637a6f039723a053098f65530de4b
2008-05-13 13:27:33 +00:00
drh
65594045d0 Better error messages when trying to open a large file using a version
of SQLite that omits large file support.  Tickets #3096 and #3094. (CVS 5085)

FossilOrigin-Name: bdd89cd231745e6bd498b2751d7ff2cf6169b3eb
2008-05-05 16:56:34 +00:00
drh
e265b08458 Fix harmless compiler warnings. (CVS 5073)
FossilOrigin-Name: 227a6f67c21c87a7cf98f84b9d57a6dc9da93ebb
2008-05-01 17:03:49 +00:00
drh
7d133d8889 Allow SQLITE_MAX_COLUMN to be set to zero at compile-time in order to
disable the checks.  Also SQLITE_MAX_EXPR_DEPTH.  Ticket #3069. (CVS 5065)

FossilOrigin-Name: e6f71abb22fb74e5910d817caec98fa44070fc5f
2008-04-28 20:35:48 +00:00
danielk1977
f51bf48b32 Fix a shared-cache mode problem triggered when sqlite3_open16() was used to open the second or subsequent connections to a utf-8 database. (CVS 5059)
FossilOrigin-Name: 20946bf6dd704416c41edd863103e85fc7ab4ef2
2008-04-28 16:19:35 +00:00
drh
a0af99f91c Make sure the database connection mutex is held before calling
sqlite3SafetyOn() or sqlite3SafetyOff().  Ticket #3059. (CVS 5016)

FossilOrigin-Name: d35dea059e2cb936e4277f513f036b9b0bdfc4a5
2008-04-16 00:49:12 +00:00
drh
5f3a367bf3 Fix a bug in the RTRIM collating sequence discovered while working
on condition/decision branch coverage.  Increase test coverage of
the date/time functions. (CVS 5010)

FossilOrigin-Name: c5435f71efa0b34c759bac4a15fdf43abf39ddfc
2008-04-15 04:02:40 +00:00