/ File History
Login
SQLite training in Houston TX on 2019-11-05 (details)
Part of the 2019 Tcl Conference

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History of src/mem5.c

2016-01-25
01:07
Small simplification and performance improvement in memsys5Free(). file: [9bf95593] check-in: [0a9cff5c] user: drh branch: trunk, size: 17144
2016-01-07
21:12
Omit performance tracking from the memsys5 memory allocator if neither SQLITE_DEBUG nor SQLITE_TEST are defined. file: [71f81a11] check-in: [af5c7714] user: drh branch: trunk, size: 17155
2015-12-18
16:29
Micro-optimizations and comment fixes on the mem5.c memory allocator module. file: [262055c2] check-in: [8bf5e056] user: drh branch: trunk, size: 17033
2015-11-21
17:27
Fix over-length source code lines. No logic changes. file: [5c267678] check-in: [198d191b] user: drh branch: trunk, size: 17194
2015-10-15
16:20
Performance optimizations to the sqlite3MallocSize() by requiring the argument to always be non-NULL. file: [c1ab1153] check-in: [cb65989b] user: drh branch: trunk, size: 17198
2014-09-06
16:39
Fix typos in comments. No code changes. file: [61eeb901] check-in: [e62aab5e] user: peter.d.reid branch: trunk, size: 17206
2014-03-31
13:42
Avoid a (harmless) buffer overread that is possible on an OOM when MEMSYS5 is engaged. file: [74670012] check-in: [b3296267] user: drh branch: trunk, size: 17205
2014-02-24
19:07
In memsys5, initialize new allocations to non-zero bytes. Change the content of freed allocations to prevent use after free. These changes in SQLITE_DEBUG only. file: [aeb019f2] check-in: [ba5f0a55] user: drh branch: trunk, size: 17205
2013-12-03
22:33
Fix harmless compiler warnings. file: [19d9271c] check-in: [a12d214e] user: mistachkin branch: memTests, size: 16801
2013-11-24
00:46
The MEMSYS5 algorithm does not have to return the block with the lowest address. Any block of the appropriate size will do. Use the first block found on the freelist for the appropriate size for a performance improvement. file: [2221f7e4] check-in: [12e612e8] user: drh branch: trunk, size: 16787
2013-11-23
22:45
A much simpler fix is to simply change MEMSYS5 so that it takes any free block of the appropriate size (the first on the list of free blocks) rather than searching for the one with the smallest address. This is also faster than using the min-heap algorithm. Need to research to verify that the allocator still satisfies the Robson proof, however. file: [77a525e6] check-in: [8191b512] user: drh branch: memsys5-performance, size: 17215
21:30
Use a heap-based primary queue rather than a linked list to store the available free blocks of each size in MEMSYS5, since this provides faster access to the first available block. file: [21c55e7d] check-in: [7d2cdfad] user: drh branch: memsys5-performance, size: 23051
2013-08-14
00:20
Fix a few more minor comment typos. No changes to code. file: [0025308a] check-in: [9e999081] user: mistachkin branch: trunk, size: 17177
2011-04-05
22:08
Suppress many harmless compiler warnings, mostly signed/unsigned comparisons within asserts or unused parameters in extensions. file: [c2c63b70] check-in: [3eeb0ff7] user: drh branch: trunk, size: 17171
2011-03-10
03:54
Minor clean-up of previous mem5 allocator fix. file: [72e0bc40] check-in: [36438423] user: shaneh branch: trunk, size: 17174
2011-03-09
21:36
Fix issue with mem5 allocator when min request size is larger thatn 2^30. file: [ebc25307] check-in: [d7dae06f] user: shaneh branch: trunk, size: 17238
2010-08-31
15:27
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. file: [6fe00f46] check-in: [53b0c03f] user: drh branch: trunk, size: 17063
2010-02-24
21:44
Add testcase() macros beside each sqlite3_log() call to make sure it is tested with both logging enable and disabled. file: [eb7a5cb9] check-in: [1168763d] user: drh branch: trunk, size: 17038
2010-02-23
20:11
Continuing improvements to error reporting and the sqlite3_log() routine. file: [7060e51b] check-in: [edea3bb7] user: drh branch: trunk, size: 16993
2009-08-20
20:05
Simplifications to the range-scan logic in support of structural testing. file: [4837b795] check-in: [bbbee810] user: drh branch: trunk, size: 16915
2009-08-18
15:33
Move the allocation of the memsys5 mutex into the initializer. file: [eb96124e] check-in: [4e377a09] user: drh branch: trunk, size: 16932
14:48
Fix obscure issues with the memsys5 memory allocator. Arrange that the xRealloc() interface to memory allocators is only called with a value that has been through xRoundup(). file: [c2633895] check-in: [577bd6f1] user: drh branch: trunk, size: 16649
12:16
When shutting down the memsys5 memory allocator, be sure to clear the mutex pointer in case the next startup does not use a mutex because it is configured differently. file: [985413fc] check-in: [d4e7e2d8] user: drh branch: trunk, size: 15311
01:54
Fix a bug in mem5.c which would cause an infinite loop on an attempt to allocate more than 1073741824 bytes of contiguous memory. Also, some cleanup of mem5.c. More work to do on this. file: [51f22f47] check-in: [783b751a] user: drh branch: trunk, size: 15293
2008-11-19
16:52
Fix some compiler warnings that show up when building the amalgamation only. (CVS 5927) file: [838309b5] check-in: [d1abe8a1] user: danielk1977 branch: trunk, size: 13163
14:35
Fix a few more compiler warnings. (CVS 5926) file: [d0f78521] check-in: [70b2f683] user: danielk1977 branch: trunk, size: 13126
2008-11-17
19:18
Modifications to avoid unsigned/signed comparisons in various files. (CVS 5914) file: [528adcfa] check-in: [8009220c] user: danielk1977 branch: trunk, size: 13067
2008-11-13
16:21
Minor changes to get memsys5 compiling and its tests passing. Ticket #3495. (CVS 5901) file: [e7c814fd] check-in: [96453ca1] user: danielk1977 branch: trunk, size: 13036
2008-10-28
18:58
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) file: [8cb9dfac] check-in: [4651f590] user: drh branch: trunk, size: 13061
2008-09-02
17:52
Explicitly initialize at least the first field of every struct. This is to work around compilers that don't like the syntax "struct XXX { ... } yyy = {};". (CVS 5666) file: [706d462c] check-in: [88bfdc87] user: danielk1977 branch: trunk, size: 13624
10:22
Change some more global variables to work with OMIT_WSD. (CVS 5660) file: [6ec2795f] check-in: [46acaf58] user: danielk1977 branch: trunk, size: 14026
2008-09-01
18:34
Begin adding support for the SQLITE_OMIT_WSD macro. Some (many) WSD variables still need wrappers added to them. (CVS 5652) file: [7a8e54fd] check-in: [573d92ab] user: danielk1977 branch: trunk, size: 13953
2008-07-16
12:25
Activate testing of mem3 and mem5. Fix problems found. Tickets #3223 and #3225. Other test configuration changes. (CVS 5419) file: [0b0ba1c2] check-in: [a3a78205] user: drh branch: trunk, size: 13915
2008-06-27
14:05
Fix mem3.c (broken by (5320)). (CVS 5321) file: [6c711af2] check-in: [fef90a21] user: danielk1977 branch: trunk, size: 13923
13:27
Change mem5.c so that the minimum allocation size is runtime configurable. (CVS 5320) file: [2ad92d6a] check-in: [4f95f4cd] user: danielk1977 branch: trunk, size: 13876
2008-06-25
14:57
Have mem3.c and mem5.c grab a mutex when required. Include them both in the amalgamation again. (CVS 5306) file: [d0c7c850] check-in: [9e3c95ff] user: danielk1977 branch: trunk, size: 13200
14:26
Fix the allocator in mem5.c so that it can be enabled at run time using the sqlite3_config() function. (CVS 5304) file: [604b5989] check-in: [30ff6bb0] user: danielk1977 branch: trunk, size: 13021
2008-06-18
17:09
Implement the 'CONFIG_SINGLETHREAD' and 'CONFIG_MULTITHREAD' configuration modes. (CVS 5234) file: [ad31a0a4] check-in: [5059644c] user: danielk1977 branch: trunk, size: 13912
2008-06-13
18:24
Progress toward implementation of sqlite3_config() and a rework of the mutex and memory allocation subsystems. This is an incremental check-in. (CVS 5218) file: [3d2ff00c] check-in: [a03c5af1] user: drh branch: trunk, size: 13906
2008-02-19
15:15
Change non-exported memory interfaces to following the naming conventions. (CVS 4797) file: [11d98b76] check-in: [94774b41] user: drh branch: trunk, size: 13800
2008-02-18
22:24
Add the memory fault simulator to mem5.c. Enable soft heap limit on mem5.c. Limit the size of hash tables and the vdbefifo when using mem5.c. (CVS 4795) file: [13ddb307] check-in: [63da5d97] user: drh branch: trunk, size: 13802
2008-02-16
16:21
The power-of-two first-fit memory allocator is now working. (CVS 4793) file: [e15148be] check-in: [d134d29c] user: drh branch: trunk, size: 12436
2008-02-14
23:26
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) file: [addb464d] check-in: [669ece8c] user: drh branch: trunk, size: 19358 Added