/ History for src/pcache1.c
Login

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

History for src/pcache1.c

2020-01-15
12:49
[33a0577e] part of check-in [dadedf41] Merge all recent enhancements and fixes from trunk into the apple-osx branch. (check-in: [dadedf41] user: drh branch: apple-osx, size: 43508)
2019-12-13
21:24
[6596e10b] part of check-in [c29fc212] Patch to the page cache to avoid harmless pointer arithmetic that due to bugs in the STD-C spec is technically UB. This is to fix a harmless UBSAN complaint that OSSFuzz is hitting. (check-in: [c29fc212] user: drh branch: trunk, size: 43526)
2019-09-16
12:02
[80e8d7fc] part of check-in [a95191de] Merge the latest changes from trunk into the apple-osx branch. (check-in: [a95191de] user: drh branch: apple-osx, size: 43463)
2019-07-16
19:44
[62714cbd] part of check-in [9e664585] Add new assert() statements in an attempt to help static analyzers avoid false-positives. (check-in: [9e664585] user: drh branch: trunk, size: 43481)
2019-07-08
20:59
[c7555fac] part of check-in [de88ed86] Merge recent enhancements from trunk into apple-osx. (check-in: [de88ed86] user: drh branch: apple-osx, size: 43431)
2019-07-04
16:05
[e6373934] part of check-in [5ea3f6fc] Fix a race condition that could occur in SQLITE_ENABLE_MEMORY_MANAGEMENT builds when two threads simultaneously open the first two database connections in the process. (check-in: [5ea3f6fc] user: dan branch: trunk, size: 43449)
2019-04-15
14:49
[b041f554] part of check-in [378230ae] Bring in the latest enhancements from trunk. (check-in: [378230ae] user: drh branch: apple-osx, size: 43431)
2019-04-14
00:34
[be64b2f3] part of check-in [cd084427] Fix an obsolete comment and other minor issues from code inspection. (check-in: [cd084427] user: drh branch: trunk, size: 43449)
2019-02-07
18:49
[8035ab76] part of check-in [62829164] Merge the offical 3.27.0 release. (check-in: [62829164] user: drh branch: apple-osx, size: 43593)
2019-02-06
20:49
[a7280448] part of check-in [a505e34d] Ensure all bytes of the PgHdr1 structure are initialized. This avoids a valgrind error when running corruptI.test. (check-in: [a505e34d] user: dan branch: trunk, size: 43611)
2019-01-17
15:47
[31f019eb] part of check-in [475a179a] Sync up with the latest enhancements on trunk. (check-in: [475a179a] user: drh branch: apple-osx, size: 42889)
2019-01-09
14:49
[fffd5250] part of check-in [383437be] Adjustments to the page cache to try to avoid harmless TSAN warnings. (check-in: [383437be] user: drh branch: trunk, size: 42907)
2018-12-14
16:20
[ddc9fc7d] part of check-in [8ba3d9f3] Back out the expansion of the temporary buffer size from [32754ca6f86da816] and replace it with an explicit test for buffer overreads. (check-in: [8ba3d9f3] user: drh branch: trunk, size: 42863)
13:35
[4ac06e82] part of check-in [32754ca6] Expand the size of the temporary page used during btree rebalancing by a few bytes, to avoid problems with small buffer overreads that can occur on corrupted database files. (check-in: [32754ca6] user: drh branch: trunk, size: 42868)
2018-12-05
18:28
[79fa98a1] part of check-in [edfc2acf] Merge enhancements and the ALTER TABLE bug fix from trunk. (check-in: [edfc2acf] user: drh branch: apple-osx, size: 42613)
2018-12-03
01:58
[ad0ffc5b] part of check-in [15824ccd] Remove two lines of unnecessary code, for a very small performance increase and size decrease. (check-in: [15824ccd] user: drh branch: trunk, size: 42631)
2018-11-30
18:22
[526fbd54] part of check-in [2c76ce4f] Merge the pre-3.26.0 fixes from trunk. (check-in: [2c76ce4f] user: drh branch: apple-osx, size: 42395)
2018-11-28
11:09
[bf9fcea6] part of check-in [5c040fdb] Follow-up to [0bf0fd242b93c3bd30]: only reset the pager when adding a new codec, not when overwriting an existing codec. Also, improve a comment in the pcache1 subsystem. (check-in: [5c040fdb] user: drh branch: trunk, size: 42413)
2017-09-09
06:10
[77a8848b] part of check-in [6a0b9d9d] Merge trunk enhancements (check-in: [6a0b9d9d] user: drh branch: apple-osx, size: 42308)
2017-08-30
04:44
[71697556] part of check-in [ffd437da] Small performance optimization in pcache1. (check-in: [ffd437da] user: drh branch: trunk, size: 42326)
2017-08-28
17:30
[af539553] part of check-in [5cd9ff87] Avoid unnecessary mutexes in the pcache1 implementation in the common case where no auxiliary page cache memory is configured. (check-in: [5cd9ff87] user: drh branch: begin-concurrent-branch-3.19, size: 42096)
16:11
[ad5bc717] part of check-in [1ba051e3] Avoid unnecessary mutexes in the pcache1 implementation in the common case where no auxiliary page cache memory is configured. (check-in: [1ba051e3] user: drh branch: trunk, size: 42119)
2017-08-27
10:55
[e7114d2e] part of check-in [c93298d5] Instrumentation and changes in an effort to reduce thread contention. (check-in: [c93298d5] user: drh branch: reduced-thread-contention, size: 42104)
2017-08-05
15:49
[0b793738] part of check-in [422cd9f3] Microoptimization in pcache1.c makes the code slightly smaller and faster. (check-in: [422cd9f3] user: drh branch: trunk, size: 42096)
2017-04-08
00:25
[4d201a7e] part of check-in [dd16439e] Merge the latest trunk changes. (check-in: [dd16439e] user: drh branch: apple-osx, size: 42055)
2017-03-29
17:06
[1195a21f] part of check-in [06c2b685] Slightly smaller and faster implementation of pcache1InitBulk(). (check-in: [06c2b685] user: drh branch: trunk, size: 42073)
15:18
[7eaf916c] part of check-in [5d902b7f] Fix the sqlite3_release_memory() interface so that it works even if SQLITE_DEFAULT_PCACHE_INITSZ is non-zero. (check-in: [5d902b7f] user: drh branch: trunk, size: 42087)
2016-12-30
13:40
[26a72c84] part of check-in [5550e815] Improved detection of zero page numbers in the page cache. (check-in: [5550e815] user: drh branch: pcache1-zero-page, size: 42095)
2016-11-04
19:09
[6d8c7bc6] part of check-in [0e5ffd91] Merge recent trunk changes, including all the fixes that appeared in version 3.15.1. (check-in: [0e5ffd91] user: drh branch: apple-osx, size: 42069)
2016-10-13
12:56
[e3967219] part of check-in [4d66ac98] Take care to avoid integer overflow when doing the initial page cache allocation with an excessively large cache_size setting. (check-in: [4d66ac98] user: drh branch: trunk, size: 42087)
2016-09-07
18:20
[42fc9916] part of check-in [00759af0] Merge recent enhancements from trunk. (check-in: [00759af0] user: drh branch: apple-osx, size: 42064)
2016-08-10
15:02
[4bb7a6a5] part of check-in [059f4e2e] Tweaks to pcache1TruncateUnsafe() to make it slightly smaller and faster and easier to test. (check-in: [059f4e2e] user: drh branch: trunk, size: 42082)
11:50
[dc8a6052] part of check-in [b07a26df] Fix pcache1TruncateUnsafe() run faster for the case where iLimit is very close to iMaxKey. (check-in: [b07a26df] user: drh branch: trunk, size: 42088)
03:35
[04279e6c] part of check-in [9ab53605] Try to make pcache1TruncateUnsafe() run faster for the case where iLimit is very close to iMaxKey. (check-in: [9ab53605] user: drh branch: debug, size: 34941)
02:54
[938bc830] part of check-in [5980e625] Remove all timers and other debugging logs except for the one timer on pcache1TruncateUnsafe(). (check-in: [5980e625] user: drh branch: debug, size: 34119)
2016-08-09
11:44
[eeb485ca] part of check-in [42ce53f6] Add another timer on pcache1TruncateUnsafe(). (check-in: [42ce53f6] user: drh branch: debug, size: 34180)
11:23
[12c155d0] part of check-in [7d0af4b5] Add a debug timer to pcache1Truncate(). Change the formatting of some other messages to make them easier to read. (check-in: [7d0af4b5] user: dan branch: debug, size: 33961)
2016-04-29
15:52
[9c2f4333] part of check-in [81b76901] Merge enhancements from trunk, and in particular the TEMP file deferred I/O enhancements. (check-in: [81b76901] user: drh branch: apple-osx, size: 41248)
2016-04-26
18:58
[7f51d2b5] part of check-in [12418b10] The pcache and the built-in VFSes should not use mutexes when SQLITE_CONFIG_SINGLETHREAD is set. (check-in: [12418b10] user: drh branch: trunk, size: 41266)
2016-03-17
23:16
[c40cdb93] part of check-in [65ba2f0b] Fix harmless compiler warnings that arise with -DSQLITE_OMIT_LOAD_EXTENSION (check-in: [65ba2f0b] user: drh branch: trunk, size: 41270)
2016-03-08
16:35
[dc4ad9b3] part of check-in [29741941] Merge changes from trunk, especially the SQLITE_DEFAULT_SYNCHRONOUS enhancements. (check-in: [29741941] user: drh branch: apple-osx, size: 41252)
2015-12-16
13:07
[72f644dc] part of check-in [f2fc3aed] Make greater use of the SQLITE_WITHIN macro. (check-in: [f2fc3aed] user: drh branch: trunk, size: 41246)
2015-11-26
22:12
[46a110be] part of check-in [5e14cadf] The first argument to SQLITE_CONFIG_PAGECACHE, SQLITE_CONFIG_SCRATCH, and SQLITE_CONFIG_HEAP must always be a pointer. (check-in: [5e14cadf] user: drh branch: trunk, size: 41235)
2015-10-15
15:28
[902e1bc7] part of check-in [6422d223] Change sqlite3StatusSet() into sqlite3StatusHighwater() so that only the highwater mark is recorded. This gives a small size reduction and performance improvement. (check-in: [6422d223] user: drh branch: trunk, size: 41228)
2015-09-25
16:29
[7f8630a2] part of check-in [2c57b2f3] Disable the SQLITE_TESTCTRL_BENIGN_MALLOC_HOOKS mechanism and replace it with SQLITE_TESTCTRL_BENIGN_MALLOC_CTRL, which gives better control. (check-in: [2c57b2f3] user: drh branch: malloc-testing, size: 41205)
2015-09-19
18:08
[e8220071] part of check-in [5c31ee62] Fix compiler warnings. (check-in: [5c31ee62] user: drh branch: trunk, size: 41216)
2015-09-10
19:22
[a0c0bb29] part of check-in [f5580f08] Fix a potential NULL pointer deref in the testing logic of pcache1. NB: The -DSQLITE_TEST compile-time option is needed to hit the problem. (check-in: [f5580f08] user: drh branch: trunk, size: 41210)
2015-09-09
19:27
[ca0eeaaf] part of check-in [89bfdbfe] Fix a possible NULL pointer deref when using SQLITE_ENABLE_MEMORY_MANAGEMENT. (check-in: [89bfdbfe] user: drh branch: trunk, size: 41205)
2015-09-04
04:31
[bf2afe64] part of check-in [05a3a2cd] Simplification of the LRU list handling in pcache1. (check-in: [05a3a2cd] user: drh branch: trunk, size: 41189)
2015-09-03
20:43
[e1529369] part of check-in [f00a9e1e] Change the pcache module to keep track of the total number of references to all pages rather than the number of pages references, for a performance improvement and size reduction. (check-in: [f00a9e1e] user: drh branch: trunk, size: 41107)
2015-09-01
19:51
[b31af9db] part of check-in [0bee6583] Reduce the number of calls to sqlite3BeginBenignMalloc(). (check-in: [0bee6583] user: drh branch: trunk, size: 40919)
2015-08-21
12:37
[a3fe31b1] part of check-in [7b8d17dd] Fix typo in comment. No changes to code. (check-in: [7b8d17dd] user: drh branch: trunk, size: 40894)
2015-07-16
18:37
[d0893980] part of check-in [9a592cf9] Fix harmless compiler warnings. (check-in: [9a592cf9] user: drh branch: trunk, size: 40891)
18:18
[6c1e5957] part of check-in [b79a4aff] Defer the bulk pcache1 memory allocation until the first page allocation request. Limit the size of the pcache1 bulk allocation to the cache_size setting. Deallocate the bulk allocation on a sqlite3_db_release_memory() request, if the bulk allocation is completely unused. (check-in: [b79a4aff] user: drh branch: trunk, size: 40874)
2015-07-08
14:13
[3f4c87cf] part of check-in [c1e2ed0e] Comment fix. No changes to code. (check-in: [c1e2ed0e] user: drh branch: pcache-bulk-local, size: 40285)
13:40
[1f88fe63] part of check-in [75d98dae] Do not do the bulk pcache1 allocations if SQLITE_CONFIG_PAGECACHE specifies a global page cache buffer. (check-in: [75d98dae] user: drh branch: pcache-bulk-local, size: 40220)
2015-07-07
15:14
[e3b0de83] part of check-in [26db0fee] No need to test sqlite3GlobalConfig.bCoreMutex when SQLITE_THREADSAFE==0. (check-in: [26db0fee] user: drh branch: pcache-bulk-local, size: 40174)
14:06
[1b6bc285] part of check-in [5b60df55] Simplify the page recycling condition in pcache1. Fix test cases to work with the latest changes. (check-in: [5b60df55] user: drh branch: pcache-bulk-local, size: 40094)
2015-07-06
20:57
[17c392b4] part of check-in [d5ff1d69] A unified cache is now only used for SQLITE_ENABLE_MEMORY_MANAGEMENT, or if SQLITE_CONFIG_PAGECACHE defines a shared start-time page cache buffer and the application is single-threaded. (check-in: [d5ff1d69] user: drh branch: pcache-bulk-local, size: 40152)
18:54
[28f34347] part of check-in [aa7341c8] Enhance separate pcache1 to allocate a block of pages from heap on startup, if possible, for a 5.2% performance improvement. (check-in: [aa7341c8] user: drh branch: pcache-bulk-local, size: 39844)
2015-07-04
18:15
[b800e908] part of check-in [dacb2a61] Preserve the number of requested PAGECACHE pages even if the memory pointer or size is zero. Enhance the pcache1.c header comment to explain the memory layout of a page cache line. (check-in: [dacb2a61] user: drh branch: trunk, size: 37546)
2015-06-29
00:21
[9ec20f98] part of check-in [fde70472] Use tail recursion in pcache1Unpin() to get a small size reduction and speed improvement. (check-in: [fde70472] user: drh branch: trunk, size: 35569)
2015-06-15
14:43
[8e3799b3] part of check-in [b0badb99] Fix harmless compiler warnings. (check-in: [b0badb99] user: drh branch: trunk, size: 35537)
2015-06-13
11:10
[7ca0caf7] part of check-in [dcf4fb8d] Avoid unnecessary mutex usage in pcache1, for a significant speedup. (check-in: [dcf4fb8d] user: drh branch: faster-pcache1-fetch, size: 35531)
2015-06-12
13:49
[0324126d] part of check-in [760700ed] Add a fast-path implementation of pcache1Fetch() for the common case of separate caches that do not use a mutex. (check-in: [760700ed] user: drh branch: faster-pcache1-fetch, size: 35078)
13:04
[0f2c218d] part of check-in [2e8ad2ea] Minor performance optimization in pcache1.c. (check-in: [2e8ad2ea] user: drh branch: trunk, size: 34207)
2015-03-23
17:25
[69d13762] part of check-in [1ce8e8fa] Add the sqlite3_status64() interface. Make the new interface and the legacy sqlite3_status() both atomic and threadsafe. Check threadsafety using assert()s. (check-in: [1ce8e8fa] user: drh branch: status64, size: 34212)
2014-12-30
13:04
[1e77432b] part of check-in [340b3477] Make SQLITE_CONFIG_PCACHE_HDRSZ accurate (not an over-estimate) on 32-bit systems. (check-in: [340b3477] user: drh branch: trunk, size: 33950)
00:57
[ff599891] part of check-in [b28ce75f] Round all object sizes that go into computing SQLITE_CONFIG_PCACHE_HDRSZ up to a multiple of 8 bytes. (check-in: [b28ce75f] user: drh branch: trunk, size: 33942)
2014-11-04
12:11
[facbdd3e] part of check-in [6eb03e62] Add the SQLITE_CONFIG_PCACHE_HDRSZ option for sqlite3_config(). (check-in: [6eb03e62] user: drh branch: trunk, size: 33934)
2014-10-10
19:10
[e412cb58] part of check-in [8541dfb3] Fix a failing test case in index5.test. Also tweak the way cache memory is divided between read-only and dirty pages when using SQLITE_CONFIG_PAGECACHE to reduce IO in some cases. (check-in: [8541dfb3] user: dan branch: trunk, size: 33789)
2014-09-06
16:39
[dab8ab93] part of check-in [e62aab5e] Fix typos in comments. No code changes. (check-in: [e62aab5e] user: peter.d.reid branch: trunk, size: 33756)
2014-08-23
23:15
[c5af6403] part of check-in [0371cc3b] Faster implementation of pcache1Fetch() (check-in: [0371cc3b] user: drh branch: trunk, size: 33754)
2014-08-15
22:37
[9bb5fb78] part of check-in [c8ade949] Aborted merge. (check-in: [c8ade949] user: numist branch: obsolete, size: 33547)
2014-05-19
15:16
[fed7cd28] part of check-in [17349a49] Changes to help ensure that a multiplication does not overflow when computing the number of bytes needed for a memory allocation, and cause a malfunction. No problems existing problems were discovered. However, these changes should help to ensure that no problems arise in the future. (check-in: [17349a49] user: drh branch: safer-malloc, size: 33469)
2014-01-24
22:58
[102e6f5a] part of check-in [87bf6063] Fixes for various clang warnings. (check-in: [87bf6063] user: drh branch: trunk, size: 33464)
2013-12-13
18:50
[57fee9a9] part of check-in [a845779c] Enhance the pcache1PinPage() routine so that it called much less often and runs much faster in the cases when it is actually called. (check-in: [a845779c] user: drh branch: trunk, size: 33411)
2013-08-19
18:17
[a4673939] part of check-in [1c63e951] Add some extra assert() statements to silence a few clang warnings. (check-in: [1c63e951] user: dan branch: trunk, size: 33093)
2013-05-28
12:11
[d23d0771] part of check-in [a0d5cc93] Many small harmless comment changes. Removal of obsolete comments and fixing misspelled words. No changes to code. (check-in: [a0d5cc93] user: drh branch: trunk, size: 33046)
2012-07-30
14:53
[9fd22671] part of check-in [305b6667] Replace a few sqlite3_malloc()+memset() sequences with calls to sqlite3MallocZero(). (check-in: [305b6667] user: dan branch: trunk, size: 33046)
2012-06-07
02:35
[2234d84f] part of check-in [208825cd] Provide an (undocumented) compile-time option to disable the page cache overflow counter, in order to avoid a mutex. (check-in: [208825cd] user: drh branch: trunk, size: 33112)
2012-02-02
19:37
[b30b1c35] part of check-in [21695c34] Reduce the size of the MemPage object by about 32 bytes. Other structure size optimizations. (check-in: [21695c34] user: drh branch: trunk, size: 33002)
2012-01-08
22:18
[281822d2] part of check-in [fc9179e1] Fix typos in commands. Combine the ExpandBlob and expandBlob macros into one. (check-in: [fc9179e1] user: drh branch: trunk, size: 33003)
2012-01-02
18:00
[e1aaa3bc] part of check-in [da52e6e8] Change page quantities in pcache1.c to unsigned. (check-in: [da52e6e8] user: drh branch: trunk, size: 33007)
2011-11-16
19:29
[9d735349] part of check-in [3f58e7c8] Add the sqlite3_db_release_memory() interface and the shrink_memory pragma. (check-in: [3f58e7c8] user: drh branch: trunk, size: 32875)
2011-11-13
21:44
[0ac7b63d] part of check-in [9f839ac0] Add a version number to the sqlite3_pcache_methods2 object. Other PCACHE2 documentation improvements. (check-in: [9f839ac0] user: drh branch: experimental-pcache, size: 32334)
2011-11-09
16:12
[7a3ce2dc] part of check-in [bc10a753] Minor changes needed to restore full branch test coverage. (check-in: [bc10a753] user: drh branch: experimental-pcache, size: 32290)
00:06
[9a42ace8] part of check-in [4da70956] Update the API documentation for the new pcache2 interface. Change the order of parameters on the xCreate method of pcache2. (check-in: [4da70956] user: drh branch: experimental-pcache, size: 31839)
2011-11-08
20:08
[54fc4ed6] part of check-in [c275c9d3] Experimental change to the pcache interface to allow page buffers to be allocated separately from their associated container structures. (check-in: [c275c9d3] user: dan branch: experimental-pcache, size: 31840)
2011-09-22
14:56
[24f5e85a] part of check-in [4eb46898] Remove the SQLITE_PAGECACHE_BLOCKALLOC compilation option. (check-in: [4eb46898] user: dan branch: trunk, size: 31943)
2011-08-23
23:41
[c8982f70] part of check-in [d5d835fe] Simplifications to the SQLITE_PAGECACHE_BLOCKALLOC logic. Reduce the number of difficult-to-reach branches. (check-in: [d5d835fe] user: drh branch: trunk, size: 40622)
13:27
[a1d86075] part of check-in [0da292da] Ifdef out routines in pcache1.c that are used only when SQLITE_PAGECACHE_BLOCKALLOC is defined. (check-in: [0da292da] user: drh branch: trunk, size: 40254)
2011-08-19
18:15
[0a131cf9] part of check-in [63597097] Experimental change: If SQLITE_PAGECACHE_BLOCKALLOC is defined, instead of allocating pages one at a time, allocate blocks of between 15 and 63 pages in a single allocation. (check-in: [63597097] user: dan branch: pager-blockalloc, size: 40178)
2011-06-09
17:53
[912bd568] part of check-in [b11b2e1f] Fix a line in pcache1.c where a global data structure is accessed without using the GLOBAL() macro. This causes a subtle malfunction on test systems that use SQLITE_OMIT_WSD. (check-in: [b11b2e1f] user: dan branch: trunk, size: 31640)
2011-01-26
13:28
[d548e31b] part of check-in [e3b500fb] More mutexes around another sqlite3StatusAdd() call. (check-in: [e3b500fb] user: drh branch: trunk, size: 31642)
13:24
[a3665bec] part of check-in [3d8b298d] Add a mutex around an sqlite3StatusAdd() call to prevent the pagecount overflow measurements from getting off in multithreaded applications. (check-in: [3d8b298d] user: drh branch: trunk, size: 31562)
00:07
[69012293] part of check-in [c85202ba] Rename the PCache1.mxPinned field to n90pct (since it is 90% of nMax) in order to distinguish it from PGroup.mxPinned. Fix the computation of n90pct so that it does not overflow adversely on excessively large cache sizes. (check-in: [c85202ba] user: drh branch: trunk, size: 31478)
2011-01-25
18:30
[71948ab1] part of check-in [c17703ec] Fix new compiler warnings in pcache1.c that were introduced by the recent performance enhancement patches of [e14649301138b684]. (check-in: [c17703ec] user: drh branch: trunk, size: 31452)
04:34
[54401ef4] part of check-in [e1464930] Shave a few cycles so that performance is better than 3.7.4 in speed tests. (check-in: [e1464930] user: drh branch: trunk, size: 31456)
2011-01-19
21:58
[2610bceb] part of check-in [9660a0a2] Comment improvements in pcache1.c. No changes to code. (check-in: [9660a0a2] user: drh branch: trunk, size: 30322)
2011-01-18
15:17
[b02aafb8] part of check-in [f1cf02ef] Do not use SQLITE_MUTEX_STATIC_MEM2 since it has been reused as STATIC_OPEN. Instead, create a new static mutex STATIC_PMEM which is an alias for the unused STATIC_LRU2. (check-in: [f1cf02ef] user: drh branch: mutex-free-pcache, size: 30229)
2011-01-17
21:32
[35f4d8d3] part of check-in [d094a1bf] Here is a completely new implementation of the mutex-free-pcache. This one uses a common code base and automatically selects whether or not to use mutexes depending on compile-time and start-time options. (check-in: [d094a1bf] user: drh branch: mutex-free-pcache, size: 30229)
2011-01-14
16:12
[9beb404c] part of check-in [2ea5bd12] Provide an alternative and experimental pcache implementation that avoids the use of mutexes at the expense of using more memory. (check-in: [2ea5bd12] user: drh branch: mutex-free-pcache, size: 26509)
15:17
[306389ff] part of check-in [c80e9c1a] Fix comments, including some documentation comments, in the page cache logic. No code changes. (check-in: [c80e9c1a] user: drh branch: trunk, size: 26426)
2010-09-22
19:06
[e9578a3b] part of check-in [7ff3574b] Further tests and changes to make the r-tree module more robust. (check-in: [7ff3574b] user: dan branch: trunk, size: 26671)
2010-09-01
02:38
[d090673e] part of check-in [afdc82a9] Fix some compiler warnings under MSVC. (check-in: [afdc82a9] user: shaneh branch: trunk, size: 26599)
2010-08-27
12:21
[7d94fd17] part of check-in [51049479] Remove unnecessary code from malloc.c. Enhance pcache1.c so that is tries to reuse existing pages, rather than create new pages, when SQLite is under memory pressure. "Memory pressure" means that SQLITE_CONFIG_PAGECACHE memory is nearly exhausted or sqlite3_soft_heap_limit() has been reached. (check-in: [51049479] user: drh branch: trunk, size: 26594)
2010-08-24
18:06
[367d88f7] part of check-in [c2dc39c0] Comment enhancements and typo fixes in pcache1.c. (check-in: [c2dc39c0] user: drh branch: trunk, size: 24945)
2010-08-20
09:14
[e921e8a1] part of check-in [0426cd62] Fix the sqlite3_release_memory() interface so that it does not attempt to free SQLITE_CONFIG_PAGECACHE memory. (check-in: [0426cd62] user: drh branch: trunk, size: 24708)
2010-07-28
17:01
[638844c1] part of check-in [f9adf66a] Record the pcache allocation size statistics even for pcache overflow allocations. Adjust the wording on one of the stat output lines in the shell. (check-in: [f9adf66a] user: drh branch: trunk, size: 24193)
2010-06-02
05:53
[3a7c28f4] part of check-in [e7073e23] Add some 'const' markers to static data that is really constant. (check-in: [e7073e23] user: dan branch: trunk, size: 24195)
2010-03-12
16:32
[6dc1871c] part of check-in [c2af2164] 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. (check-in: [c2af2164] user: drh branch: trunk, size: 24189)
2009-11-20
13:18
[2bb22611] part of check-in [9a429349] Avoid unnecessary page cache allocations when move a page while autovacuuming an in-memory database, since the allocation might fail making it impossible to rollback the transaction. (check-in: [9a429349] user: drh branch: trunk, size: 24029)
2009-11-10
01:30
[db4a996e] part of check-in [f6c045f6] Remove the obsolete "$Id:$" RCS identifier strings from the source code. (check-in: [f6c045f6] user: drh branch: trunk, size: 24450)
2009-08-17
15:31
[211295a9] part of check-in [32509bc7] More documentation and comment updates for sqlite3_initialize/shutdown interface changes to handle failures. (check-in: [32509bc7] user: shane branch: trunk, size: 24513)
2009-07-17
11:44
[6dc833c8] part of check-in [fb1b955d] Code simplifications in support of structural testing. (CVS 6900) (check-in: [fb1b955d] user: drh branch: trunk, size: 24433)
2009-07-16
18:21
[daa2a58a] part of check-in [94525179] Code simplifications and comment improvements in support of structural coverage testing. (CVS 6899) (check-in: [94525179] user: drh branch: trunk, size: 23825)
2009-06-09
18:58
[97e7e8e6] part of check-in [0bd84e73] Fix compiler warnings with MSVC build. (CVS 6741) (check-in: [0bd84e73] user: shane branch: trunk, size: 23407)
2009-06-03
21:04
[3de4feb5] part of check-in [c54de1f5] Change the pcache1.c implementation so that the "header" occurs at the end of page buffer, not at the beginning. This insures that the 20 bytes immediately following the page buffer are mapped if a read of the page buffer overruns due to a malformed cell. (CVS 6711) (check-in: [c54de1f5] user: drh branch: trunk, size: 23396)
2009-05-22
11:12
[bed75f15] part of check-in [93369d91] Add an assert() to pcache1.c to double-check that page cache buffer memory is never allocated if pcache1 is not enabled. Ticket #3872 (CVS 6670) (check-in: [93369d91] user: drh branch: trunk, size: 23230)
11:10
[39a2c2fa] part of check-in [5153ad19] Additional changes to pcache1 to prevent the page buffer memory from being configured if pcache1 is not enabled. Ticket #3872. (CVS 6669) (check-in: [5153ad19] user: drh branch: trunk, size: 23200)
10:53
[88fbd238] part of check-in [6240992c] Make sure sqlite3_shutdown() completely disables the default pager cache mechanism in pcache1.c. Ticket #3872. Also fix some comments associated with configuring the page cache. (CVS 6668) (check-in: [6240992c] user: drh branch: trunk, size: 23000)
2009-05-18
16:14
[b08287d2] part of check-in [2a277c55] Port patches from the trunk into the 3.6.14.1 branch: the group_concat() fix of check-in (6616), ticket #3841 and the pcache fix of check-in (6619), ticket #3844. (CVS 6652) (check-in: [2a277c55] user: drh branch: branch_3_6_14, size: 22978)
2009-05-08
06:52
[a6138ee5] part of check-in [88211cee] Correctly update the cache page-count when discarding pages in the xTruncate() method of the default pcache implementation. Otherwise the effective configured size of the cache shrinks each time xTruncate() is called. Fix for #3844. (CVS 6619) (check-in: [88211cee] user: danielk1977 branch: trunk, size: 22982)
2009-04-14
18:44
[35f8601c] part of check-in [a117d82d] nMax can be zero and subtracting 1 from an unsigned zero produces undesirable results (CVS 6506) (check-in: [a117d82d] user: aswift branch: trunk, size: 22809)
2009-03-23
04:33
[f587565f] part of check-in [db1d4d2f] 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) (check-in: [db1d4d2f] user: danielk1977 branch: trunk, size: 22813)
2009-03-05
14:59
[f1251854] part of check-in [823fe7f5] Begin purging dirty pages from the cache once 90% of the cache is dirty (insteadof waiting until it is 100% dirty). This improves performance in some circumstances by effectively reserving 10% of the configured page-cache for frequently reused read-only pages. (CVS 6341) (check-in: [823fe7f5] user: danielk1977 branch: trunk, size: 22801)
2009-01-23
16:45
[dabb8ab1] part of check-in [9c0b9f88] Optimization: When loading a new page into the cache, avoid redundant memset() calls to zero it. (CVS 6201) (check-in: [9c0b9f88] user: danielk1977 branch: trunk, size: 22792)
2009-01-07
15:18
[c0aa84ff] part of check-in [83d1eafb] Fix for 'truncate file' operations on in-memory databases. (CVS 6131) (check-in: [83d1eafb] user: danielk1977 branch: trunk, size: 22779)
2008-12-10
18:03
[533b18aa] part of check-in [14e6d19c] More explicit type casting to silence VC++. (CVS 6006) (check-in: [14e6d19c] user: drh branch: trunk, size: 22486)
2008-12-06
14:34
[fb6cf5b8] part of check-in [5c0fe63a] Mark the hash table enlargement in pcache1.c as a benign-failure malloc. (CVS 5986) (check-in: [5c0fe63a] user: drh branch: trunk, size: 22480)
2008-11-24
20:05
[d8d41232] part of check-in [e93cec0a] Added cast to PAGE_TO_PGHDR1 macro to remove warning. It looks like despite the warning, the compiler (tested with VS2005 and GCC on Windows) was doing the right thing. Ticket #3510. (CVS 5953) (check-in: [e93cec0a] user: shane branch: trunk, size: 22388)
2008-11-19
09:05
[2453a3e9] part of check-in [88134322] Changes to avoid "unused parameter" compiler warnings. (CVS 5921) (check-in: [88134322] user: danielk1977 branch: trunk, size: 22389)
2008-11-15
11:22
[0fa9cce1] part of check-in [ce77ea98] Fix compiler warnings in pcache1.c related to comparison of unsigned and signed values. (CVS 5908) (check-in: [ce77ea98] user: danielk1977 branch: trunk, size: 22331)
2008-11-13
14:28
[7612a5d8] part of check-in [47866d67] Add an API to support custom page cache implementations. (CVS 5899) (check-in: [47866d67] user: danielk1977 branch: trunk, size: 22319) Added