aboutsummaryrefslogtreecommitdiff
path: root/zenserver/cache/structuredcachestore.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* structuredcache: add code to handle conflict which can occur when multiple ↵Stefan Boberg2021-10-131-8/+27
| | | | PUTs of the same value occur close enough to cause issues due to file system races
* structured cache: Added locking around large cache value updates to prevent ↵Stefan Boberg2021-10-061-13/+37
| | | | races leading to file sharing violations
* Merged from upstreamStefan Boberg2021-10-051-53/+141
|
* cas: added some GC stubsStefan Boberg2021-10-011-19/+22
|
* Eliminated use of ATL in StructuredCacheStore implementationStefan Boberg2021-09-261-41/+39
|
* Added scrubbing logic to ZenCacheDiskLayer/ZenCacheMemoryLayerStefan Boberg2021-09-231-49/+152
| | | | This currently only goes through the motions of hashing the data to verify it, but does not perform recovery nor does it validate referential integrity
* Wired up scrubbing to more higher level servicesStefan Boberg2021-09-211-0/+7
| | | | Also moved sharding logic for filecas into a function to redduce cut/pasta
* Added more scrub stubs in higher level servicesStefan Boberg2021-09-201-4/+32
|
* Moved more code into zen namespace, for consistencyStefan Boberg2021-09-201-45/+48
| | | | Also removed snapshot_manifest (remnants of vfs prototype)
* Changed logging implementationStefan Boberg2021-09-151-3/+3
| | | | | | * Code should no longer directly `#include spdlog/spdlog.h`, instead use `#include <zencore/logging.h>` * Instead of explicit calls to `spdlog::info(...)` and such please use the logging macros defined in `zencore/logging.h`. I.e `ZEN_INFO`, `ZEN_DEBUG`, `ZEN_TRACE`, `ZEN_ERROR`, `ZEN_CRITITCAL` * The macros will pick up the "most local" logger via a `Log()` call to retrieve a logger instance. To override the default logger in a class please implement your own `Log()` function
* Changed direct includes of spdlog/spdlog.h into zencore/logging.h to make it ↵Stefan Boberg2021-09-151-1/+1
| | | | easier to tweak implementation
* Fixed a race in bucket open/create logicStefan Boberg2021-08-311-10/+24
| | | | If two requests were sufficiently close, they could end up trying to initialize buckets twice which is not a good idea
* Asynchronous upstream caching to JupiterPer Larsson2021-08-311-0/+1
| | | | Co-authored-by: Stefan Boberg <[email protected]>
* clang-format fixStefan Boberg2021-08-241-2/+2
|
* Fixed up drop logic (short circuiting fail!)Stefan Boberg2021-08-241-3/+5
|
* Improved ZenCacheStore::DropBucket logic and added loggingStefan Boberg2021-08-231-4/+8
|
* clang-formatStefan Boberg2021-08-201-1/+1
|
* Implemented support for dropping z$ buckets while onlineStefan Boberg2021-08-171-0/+67
|
* Implemented flush operations for cache servicesStefan Boberg2021-08-121-0/+6
| | | | Also implemented basic upstream query interface, which needs a bit more work to be fully functional (chunk propagation / fetching and new propagation policies as per DDC requirements)
* Bumped large object threshold to 64k, improved disk bucket replay mutex logicStefan Boberg2021-05-251-8/+6
|
* Fixed index flags for standalone filesStefan Boberg2021-05-241-3/+15
|
* Eliminated sidx file since it's no longer necessaryStefan Boberg2021-05-241-4/+0
|
* Z$ now tracks content type for large objects as well as small. Large objects ↵Stefan Boberg2021-05-241-34/+92
| | | | are tracked in index
* Implemented new URI addressing scheme for the Zen cache endpoints, and ↵Stefan Boberg2021-05-231-12/+4
| | | | prepared for additional indexing capabilities
* Changed to tsl::robin_mapStefan Boberg2021-05-231-9/+23
| | | | Also added initial logic around attachment indexing (tactical check-in to continue on other computer)
* Tidied up some codeStefan Boberg2021-05-221-10/+9
|
* Split out structured cache store code into dedicated cpp/h pairStefan Boberg2021-05-221-0/+554