aboutsummaryrefslogtreecommitdiff
path: root/zenserver/cache/structuredcachestore.h
Commit message (Collapse)AuthorAgeFilesLines
* moved source directories into `/src` (#264)Stefan Boberg2023-05-021-535/+0
| | | | | | * moved source directories into `/src` * updated bundle.lua for new `src` path * moved some docs, icon * removed old test trees
* save cache rawsize and rawhash in manifest file instead of log file (#251)Dan Engelbrecht2023-04-211-5/+2
| | | | * save cache rawsize and rawhash in manifest file instead of log file * don't use # as prefix for counts in log
* oplog and cache stats (#244)Dan Engelbrecht2023-04-211-14/+49
| | | | | | | | | | | | | | | | * basic oplog stats * add GetValueStats to cache store * RwLock::ExclusiveLockScope -> RwLock::SharedLockScope * add rawhash and attachment count to CacheValueStats * added cache-stats and project-stats commands * add cast to make Mac overload detection happy * fix accept type in cache-stats command * Add options to project-stats command * use resource paths for stats in project store * use resource paths for stats in cache * fix cache-info and project-info url discriminator * more control over details$ output * cleanup * changelog
* store cache rawhash and rawsize for unstructured cache values (#234)Dan Engelbrecht2023-02-231-8/+13
| | | | | | | | | * refactored MemoryCacheBucket to allow for storing RawHash/RawSize. * remove redundant conversions in AccessTime * reduce max count for memory cache bucket to 32-bit value * refactored DiskCacheBucket to allow for storing RawHash/RawSize. * Use CompressedBuffer::ValidateCompressedHeader when applicable * Make sure we rewrite the snapshot if we read an legacy existing index/log * changelog
* Refactor CacheBuckets to allow for storing RawHash/RawSize (#232)v0.2.4-pre0v0.2.4Dan Engelbrecht2023-02-201-42/+65
| | | | | | * refactored MemoryCacheBucket to allow for storing RawHash/RawSize. * remove redundant conversions in AccessTime * reduce max count for memory cache bucket to 32-bit value * refactored DiskCacheBucket to allow for storing RawHash/RawSize.
* Add info (GET) endpoints for structured cache (#211)Dan Engelbrecht2023-01-111-21/+98
| | | | | | | * Add GET requests on cache/namespace/bucket level * Add root route for project store requests (same as /list) * Add markerpath to oplog info object * Add totalsize, opcount and expired to oplog info * Changelog
* Fix log index snapshot (#210)Dan Engelbrecht2022-12-161-0/+1
| | | | | | * Fix log reading for structured cache store Make sure cache is flushed at exit * dont flush index to disk unless new entries have been written * changelog
* Fix disk usage stats (#194)Dan Engelbrecht2022-11-241-6/+4
| | | | | | | | * Improve tracking of used disk space for filecas and compactcas Add tracking of used disk space for project store Remove ZenCacheStore as GcStorage/GcContributor - underlying ZenCacheNamespace instances register themselves directly - removing this also fixes double reporting of GcStorageSize for namespaces * changelog
* bump cache large object size limit to 128Kb (#191)Dan Engelbrecht2022-11-211-1/+1
| | | | * bump cache large object size limit to 128Kb * changelog
* move BasicFile to zenutil to remove zenstore dependency from zen command (#190)Dan Engelbrecht2022-11-171-1/+0
|
* Remove legacy code (#161)Dan Engelbrecht2022-09-081-12/+10
| | | | * changelog * remove obsolete legacy code
* Make cas storage an hidden implementation detail of CidStore (#130)v0.1.4-pre6v0.1.4-pre5Dan Engelbrecht2022-06-171-5/+5
| | | | | | | | | | | | | | | | | | - Bumped ZEN_SCHEMA_VERSION - CasStore no longer a public API, it is hidden behind CidStore - Moved cas.h from public header folder - CidStore no longer maps from Cid -> Cas, we store entries in Cas under RawHash - CasStore now decompresses data to validate content (matching against RawHash) - CasChunkSet renames to HashKeySet and put in separate header/cpp file - Disabled "Chunk" command for now as it relied on CAS being exposed as a service - Changed CAS http service to Cid http server - Moved "Run" command completely inside ZEN_WITH_EXEC_SERVICES define - Removed "cas.basic" test - Uncommented ".exec.basic" test and added return-skip at start of test - Moved ScrubContext to separate header file - Renamed CasGC to GcManager - Cleaned up configuration passing in cas store classes - Removed CAS stuff from GcContext and clarified naming in class - Remove migration code
* removed unnecessary CasStore forward declarationsStefan Boberg2022-06-131-1/+0
|
* NameSpaceMap -> NamespaceMapDan Engelbrecht2022-05-251-2/+2
|
* namespace dropDan Engelbrecht2022-05-251-2/+5
|
* Make sure ZenCacheMemoryLayer handles dropped buckets correctly (just like ↵Dan Engelbrecht2022-05-251-4/+8
| | | | ZenCacheDiskLayer)
* If a bucket is in m_BucketMap it is OK, no need for separate flagDan Engelbrecht2022-05-251-3/+1
|
* Use rename/delete and keep pointer for dropped bucketsDan Engelbrecht2022-05-241-24/+25
|
* Automatically create namespaces on requests (if enabled via configuration)Dan Engelbrecht2022-05-201-1/+10
|
* migrate legacy cache folders to ue4.ddc namespaceDan Engelbrecht2022-05-191-1/+2
| | | | | map default namespace to at runtime ue4.ddc use a non-valid name for the default namespace so we avoid any collision or accidental creation of folder for that
* use ns_ prefix on disk onlyDan Engelbrecht2022-05-161-2/+2
|
* use "default" as the default namespaceDan Engelbrecht2022-05-161-2/+2
| | | | remove ns_ prefix for namespaces on disk and in requests
* Tests for HttpRequestParseRelativeUriDan Engelbrecht2022-05-121-0/+1
|
* remove use of Ref<> in ZenCacheStoreDan Engelbrecht2022-05-061-3/+3
| | | | naming cleanup
* review feedback and cleanupDan Engelbrecht2022-05-061-4/+7
|
* revert back constructor order for ZenCacheStoreDan Engelbrecht2022-05-051-1/+1
|
* cleanup and review feedbackDan Engelbrecht2022-05-051-4/+6
|
* cleanupDan Engelbrecht2022-05-041-5/+28
|
* collectgarbage for compactcas and structured cache uses shared implementationDan Engelbrecht2022-05-011-8/+4
|
* correct expire vs contributeDan Engelbrecht2022-04-121-1/+3
|
* cleaner GatherReferencesDan Engelbrecht2022-04-121-1/+1
|
* structured cache with block storeDan Engelbrecht2022-04-121-40/+53
|
* Retain flags for small objects in structured cache (#68)Dan Engelbrecht2022-03-301-0/+1
|
* clang-formatStefan Boberg2022-02-021-7/+7
|
* Implemented support for storing compressed buffers as values in structured ↵Stefan Boberg2022-01-251-4/+10
| | | | cache store
* Changed timestamp to atomic int64.Per Larsson2022-01-031-7/+36
|
* Fixed "incomplete type" error.Martin Ridgers2021-12-151-1/+120
| | | | | GCC throws this error when using forward-declared type as a value type for an std::pair (implicitly via a std::map).
* Merged main.Per Larsson2021-12-141-1/+1
|\
| * Merged mainMartin Ridgers2021-11-121-3/+3
| |\
| * | CacheBucket::BuildPath() uses a PathBuilder instead of a WideStrBuilderMartin Ridgers2021-11-021-2/+2
| | |
| * | Merged mainMartin Ridgers2021-11-011-1/+85
| |\ \
| * | | CacheBucket is going to get defined else where in an upcoming mergeMartin Ridgers2021-11-011-3/+1
| | | |
| * | | Merged mainMartin Ridgers2021-11-011-3/+4
| |\ \ \
| * | | | Gave ZenCacheDiskLayer::CacheBucket a bodyMartin Ridgers2021-10-291-1/+3
| | | | |
| * | | | Use THIRDPARTY_START/END instead of MSVC pragmasMartin Ridgers2021-10-291-3/+2
| | | | |
* | | | | Refactored z$ GC.Per Larsson2021-12-131-6/+19
| | | | |
* | | | | Added size to GcStorage.Per Larsson2021-12-101-16/+10
| | | | |
* | | | | Disabled cache tracker.Per Larsson2021-12-091-5/+10
| | | | |
* | | | | First pass of z$ garbage collection.Per Larsson2021-12-071-1/+4
| | | | |
* | | | | Added support for time based eviction policy in structured cache.Per Larsson2021-12-071-5/+2
| | | | |