aboutsummaryrefslogtreecommitdiff
path: root/src/zenserver/cache/cachememorylayer.cpp
Commit message (Collapse)AuthorAgeFilesLines
* merge disk and memory layers (#493)Dan Engelbrecht2023-10-241-521/+0
| | | | - Feature: Added `--cache-memlayer-sizethreshold` option to zenserver to control at which size cache entries get cached in memory - Changed: Merged cache memory layer with cache disk layer to reduce memory and cpu overhead
* removed unnecessary vector in ZenCacheMemoryLayer::DropStefan Boberg2023-10-171-3/+2
|
* fix mem layer total count (#480)Dan Engelbrecht2023-10-171-5/+16
| | | * fix calculation of ZenCacheMemoryLayer::m_TotalSize
* fix memory usage in memlayer (#454)Dan Engelbrecht2023-10-061-14/+3
| | | * Bugfix: Remove double counting of memory usage in memcachelayer
* ZenCacheMemoryLayer should always store values using memory buffers (#451)Stefan Boberg2023-10-051-3/+4
| | | | | | | | this change fixes a problem where the memory cache layer can inadvertently prevent underlying block store files from being deleted * ensure we get memory buffers on all paths * added more context to error in IoBufferBuilder::ReadFromFileMaybe * fixed problematic pread call success check in IoBufferBuilder::ReadFromFileMaybe which would always report failure on Linux/MacOS
* Limit size of memory cache layer (#423)Dan Engelbrecht2023-10-021-15/+206
| | | | | | | | - Feature: Limit the size ZenCacheMemoryLayer may use - `--cache-memlayer-targetfootprint` option to set which size (in bytes) it should be limited to, zero to have it unbounded - `--cache-memlayer-maxage` option to set how long (in seconds) cache items should be kept in the memory cache Do more "standard" GC rather than clearing everything. Tries to purge memory on Get/Put on the fly if exceeding limit - not sure if we should have a polling thread instead of adding overhead to Get/Put (however light it may be).
* adding more stats (#429)Dan Engelbrecht2023-09-281-0/+4
| | | | | - Feature: Add detailed stats on requests and data sizes on a per-bucket level, use parameter `cachestorestats=true` on the `/stats/z$` endpoint to enable - Feature: Add detailed stats on requests and data sizes on cidstore, use parameter `cidstorestats=true` on the `/stats/z$` endpoint to enable - Feature: Dashboard now accepts parameters in the URL which is passed on to the `/stats/z$` endpoint
* add more trace scopes (#362)Dan Engelbrecht2023-09-151-0/+9
| | | | | * more trace scopes * Make sure ReplayLogEntries uses the correct size for oplog buffer * changelog
* Restructured structured cache store (#314)Stefan Boberg2023-05-171-0/+317
This change separates out the disk and memory storage strategies into separate cpp/h files to improve maintainability.