drh
d231aa3a42
Enhance (and fix) the MEMTYPE tags associated with heap memory allocations
...
when SQLITE_MEMDEBUG is used.
FossilOrigin-Name: ca5b789e33c4e5ce366d8f5372d086442f84e230
2014-10-07 15:46:54 +00:00
mistachkin
3fb4b6df07
Fix harmless MSVC compiler warning with MEMDEBUG defined.
...
FossilOrigin-Name: b48cfd2dfca70091a52deeeee16619237e1c270b
2013-08-31 05:13:22 +00:00
mistachkin
f64188910d
Fix several harmless compiler warnings. Fix a couple compiler issues with the shell.
...
FossilOrigin-Name: 8917e9f9a0802cbfb6f33e2ab1c2f98e4df5babd
2013-08-28 01:54:12 +00:00
drh
9f129f467e
Add evidence mark comments to source code. Add additional information to the
...
documentation of sqlite3_release_memory(). Fix a minor inefficiency in mem1.c
that was discovered while writing requirements tests.
FossilOrigin-Name: 53b0c03fd33d2d8141fd386de5493fec64456042
2010-08-31 15:27:32 +00:00
drh
96dd6a16af
Disable the MEMSYS2 auxiliary routines if MEMSYS2 is changed to an alternative
...
memory allocator using SQLITE_CONFIG_MALLOC.
FossilOrigin-Name: 541dd3b870f123a5fddf0b710474693566a1d659
2010-08-20 09:53:19 +00:00
drh
174b9a166d
Make sure all memory from sqlite3DbMalloc() is freed by sqlite3DbFree()
...
and all memory from sqlite3_malloc() is freed by sqlite3_free().
FossilOrigin-Name: 629e38a8c9e31111e351fe4625a5835576d23584
2010-07-26 11:07:20 +00:00
drh
b975598ea0
Make sure all memory from sqlite3DbMalloc() is freed by sqlite3DbFree() and
...
all memory from sqlite3_malloc() is freed by sqlite3_free().
FossilOrigin-Name: ac1f37a647e9ed1c00a901d26d9956a86c40117a
2010-07-24 16:34:37 +00:00
drh
107b56e86d
Add assert()s to mem2.c (activated by SQLITE_MEMDEBUG) which verify that
...
memory alloctions that might have come from lookaside are always freed
using a lookaside-aware free routine.
FossilOrigin-Name: c2af2164cf7b279ebb3e08201561348be6e765df
2010-03-12 16:32:53 +00:00
dan
3b4aae569a
Correct an assert() in mem2.c (test code only).
...
FossilOrigin-Name: 1a88e31b03e090732243a70bec082b32ecf77c43
2010-03-08 15:17:53 +00:00
drh
10f864e8ef
In the debugging memory allocator, initialize new memory allocations to
...
pseudo-randomness in an effort to find problems with memcmp() of structures
that have uninitialized pad bytes.
FossilOrigin-Name: 6462817b2f817a6105449b0ea3e1e336e42571d1
2010-01-05 03:30:15 +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
danielk1977
bc73971db6
Use the ROUND8() macro to round an integer up to the nearest multiple of 8 and ROUNDDOWN8() macro to round down to the nearest multiple of 8. This is a cosmetic change. (CVS 6372)
...
FossilOrigin-Name: db1d4d2f5083adf5438c7f387b115180800e7bd9
2009-03-23 04:33:32 +00:00
danielk1977
6ab3a2ec8a
Changes to reduce the heap space consumed by triggers, views and tables in the in-memory representation of the schema. Also to reduce the space used by prepared statements slightly. (CVS 6305)
...
FossilOrigin-Name: d9f6ffbc5ea090ba0daac571fc9a6c68b9c864e4
2009-02-19 14:39:25 +00:00
shane
d20010c70e
Improved overrun detection in mem2.c (SQLITE_MEMDEBUG). Previously was only checking up to 3 extra bytes allocated due to rounding. (CVS 6261)
...
FossilOrigin-Name: a6fe3d6b02734b23fe067a373c0232024a782a6c
2009-02-05 03:00:06 +00:00
drh
ea6788322e
Never use strlen(). Use our own internal sqlite3Strlen30() which is
...
guaranteed to never overflow an integer. Additional explicit casts to
avoid nuisance warning messages. (CVS 6007)
FossilOrigin-Name: c872d554930ecf221ac2be5f886d5d67bb35288c
2008-12-10 19:26:22 +00:00
drh
902b9ee436
Fix harmless compiler warnings. Improved comments in the query optimizer. (CVS 5982)
...
FossilOrigin-Name: adedd697b475dadaa2eeae0d0413603195c955cf
2008-12-05 17:17:07 +00:00
drh
d1370b6d92
Remove the vestigial mem4 and mem6 memory allocators. Add the
...
SQLITE_ZERO_MALLOC compile-time option and the mem0.c module to
handle memory allocation for that case. (CVS 5848)
FossilOrigin-Name: 4651f590f0b8bf13938b2b15d5082136e763af8d
2008-10-28 18:58:20 +00:00
danielk1977
075c23af26
Begin adding support for the SQLITE_OMIT_WSD macro. Some (many) WSD variables still need wrappers added to them. (CVS 5652)
...
FossilOrigin-Name: 573d92abb9adb1c321ebc2fcadcf14374213b093
2008-09-01 18:34:20 +00:00
danielk1977
44a376f6b4
Fix further warnings/compilation errors in test code. (CVS 5558)
...
FossilOrigin-Name: 42247b917ae5a5c0d81b934200810755d0040282
2008-08-12 15:04:58 +00:00
danielk1977
31fab4f30b
Updates to mem6.c allocator. (CVS 5473)
...
FossilOrigin-Name: 43a4cae2acea33d1a17c0037516e9c27fb7e8e91
2008-07-25 08:48:59 +00:00
drh
2abcd58f09
Reduce the size of the parser allocation. Add additional instrumentation
...
to mem2. speed1*.test uses scratch malloc. (CVS 5472)
FossilOrigin-Name: 599a9dea8fc97d0e7f09e67c9954de8cc1b8748e
2008-07-24 23:34:07 +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
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
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
danielk1977
59f8c08ecc
Implement the 'CONFIG_SINGLETHREAD' and 'CONFIG_MULTITHREAD' configuration modes. (CVS 5234)
...
FossilOrigin-Name: 5059644c4bc5f6679afd939e0bc26080f42a9918
2008-06-18 17:09:10 +00:00
danielk1977
6d2ab0e431
Change the mutex interface to be pluggable. This is an incremental checkin, there are still changes to come. (CVS 5227)
...
FossilOrigin-Name: 597283637bcdc2398bf249b2bbc6ded47ad2de22
2008-06-17 17:21:18 +00:00
drh
facf030792
Add internal interfaces: PageMalloc/PageFree and ScratchMalloc/ScratchFree. (CVS 5226)
...
FossilOrigin-Name: 3e797d0ffe1af6f7512b3fb7b387418ac05671e0
2008-06-17 15:12:00 +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
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
fab69597cc
Make sure all memory allocations are 8-byte aligned. Ticket #3040 .
...
Note that the mem3.c memory allocator returns 4-byte aligned memory
allocations. But as mem3.c is intended for use in 32-bit embedded
systems, we are not going to change that. (CVS 4978)
FossilOrigin-Name: d11e8e307af906db75ae7aede790464fabd06422
2008-04-10 14:57:24 +00:00
danielk1977
ce98bba24b
Change the allocator in mem2.c (used when SQLITE_MEMDEBUG is defined) so that allocations are not rounded up to the nearest 4 byte boundary. Fix a couple of errors in malloc.test related to sqlite3OsAccess() returning -1. (CVS 4956)
...
FossilOrigin-Name: fd97f8762cb1e4653c932402940f74d7c0ebf71f
2008-04-03 10:13:01 +00:00
danielk1977
dbdc4d49cb
If memory is leaked when running a test script with the --malloctrace option, write out a file called leaks.sql in the same format as mallocs.sql containing th e leaked applications. The same tools can then be used to examine the stack traces associated with leaked allocations. (CVS 4926)
...
FossilOrigin-Name: f1b97ed93183378ff56b4fe7ae8ea269c24092fc
2008-03-28 07:42:53 +00:00
danielk1977
6f332c18d9
Add some more logging to the malloc system used when SQLITE_MEMDEBUG is defined. (CVS 4901)
...
FossilOrigin-Name: 79738f582fbac87f2d335e0c6b7f53e3054b41ba
2008-03-21 14:22:44 +00:00
drh
49e4fd71a4
Change non-exported memory interfaces to following the naming conventions. (CVS 4797)
...
FossilOrigin-Name: 94774b41429c8bfa3582e30c09f414b9e5669575
2008-02-19 15:15:15 +00:00
drh
0d18020b80
Add the experimental mem5.c memory allocator. Allocate the content part
...
of cache pages separately from the header. (See check-ins (4495) and (4409)). (CVS 4789)
FossilOrigin-Name: 669ece8c82bfa69add852589dd1211751cb26fb2
2008-02-14 23:26:56 +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
643167ff21
Add the fault injector module in fault.c. Use it as a basis for memory
...
allocation failure testing. (CVS 4742)
FossilOrigin-Name: 1a335e180183b414fcc3510ce28b98b21cd134a6
2008-01-22 21:30:53 +00:00
drh
ace03d1b3a
Add the optional (and experimental) mmap() memory allocator in the
...
mem4.c module. (CVS 4581)
FossilOrigin-Name: cfd683ac80fd043343e0f0af90805058daa3818d
2007-11-29 18:36:49 +00:00
drh
d64621d68d
Drop support for the SQLITE_OMIT_MEMORY_ALLOCATION compile-time option. (CVS 4529)
...
FossilOrigin-Name: b57c89fed0b74c2e8fb68ccfdf5e5e7d4b2603a1
2007-11-05 17:54:17 +00:00
drh
9c7a60dfb2
Added an experimental malloc-free memory allocation subsystem, intended
...
for use on embedded systems. Runs 7% faster than when using system
malloc() on Linux. (CVS 4493)
FossilOrigin-Name: 8487ca82fade60b9fa63abf74e10f6ebcb48b98e
2007-10-19 17:47:24 +00:00
drh
d2bb3278e0
Add a malloc size histogram to the debugging malloc implementation
...
in mem2.c. (CVS 4490)
FossilOrigin-Name: 3e51696cb878063e4ebfdcc2a61ba94c9bebdfe3
2007-10-15 19:34:32 +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
ca0c89715e
Fix a problem handling a malloc() failure in printf.c. Also some other things to improve test coverage. (CVS 4361)
...
FossilOrigin-Name: 595bfe72f053bc6ecb58bb9044a4cdc53d30b404
2007-09-01 09:02:53 +00:00
danielk1977
cd03724cb2
Check in extra fixes for malloc4.test. (CVS 4341)
...
FossilOrigin-Name: 49ce3a838194f0316c883dbe1596d13c0c0fad1b
2007-08-30 15:46:06 +00:00
danielk1977
a1644fd863
Modifications to the malloc failure tests to test transient and persistent failures. (CVS 4321)
...
FossilOrigin-Name: e38ef81b85feb5bff2ad8448f3438ff0ab36571e
2007-08-29 12:31:25 +00:00
drh
d5499d648f
Bug fix in the memory leak trace output. (CVS 4283)
...
FossilOrigin-Name: a1b495c28a092c7eb79ffeeb6a217749acb4c12c
2007-08-24 04:15:00 +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
drh
4a50aac564
Improvements to memory leak detection. The --backtrace=NNN option is now
...
recognized by tester.tcl. Memory leak summaries are automatically written
to the file ./memleak.txt and each leak is tagged with the test in which
it occurred. The quick.test script runs on Linux with no errors and
no leaks. (CVS 4273)
FossilOrigin-Name: 21f6b31097692171c6493e6ca6de6acbd62dc595
2007-08-23 02:47:53 +00:00
drh
ed138fb3bc
All of the malloc test cases run. Still seeing failures in malloc4.test. (CVS 4272)
...
FossilOrigin-Name: 205d0b881d541db65837ce6cf44d58d607635bc2
2007-08-22 22:04:37 +00:00