aboutsummaryrefslogtreecommitdiff
path: root/zenserver/cache
Commit message (Collapse)AuthorAgeFilesLines
* always keep full log but read from index snapshot location if availableDan Engelbrecht2022-04-041-16/+18
|
* rename EMode to ModeDan Engelbrecht2022-04-011-6/+6
|
* linux compilation fixesDan Engelbrecht2022-04-011-1/+1
|
* linux fixesDan Engelbrecht2022-04-011-2/+2
|
* Don hard fail on removing files we no longer care aboutDan Engelbrecht2022-03-311-1/+2
|
* improved logging for gc/migrationDan Engelbrecht2022-03-311-1/+12
|
* Migration now works in larger disk IO chunksDan Engelbrecht2022-03-311-6/+6
| | | | BasicFile and CasLogFile now has new explicit modes instead of create true/false
* Retain flags for small objects in structured cache (#68)Dan Engelbrecht2022-03-302-2/+3
|
* Merge pull request #67 from EpicGames/de/cache-lock-fixesDan Engelbrecht2022-03-301-6/+11
|\ | | | | de/cache lock fixes
| * cleanupDan Engelbrecht2022-03-301-7/+4
| |
| * Fix bucket creation race condition in ZenCacheMemoryLayer::PutDan Engelbrecht2022-03-301-1/+9
| |
| * No need to take exclusive lock while gathering referencesDan Engelbrecht2022-03-301-1/+1
| |
* | Clear gathered Cid array periodically and add just the new onesDan Engelbrecht2022-03-291-3/+6
|/
* Value propagation fix - Read/Write ValueAPI as CompressedBinary type when ↵mattpetersepic2022-02-181-27/+44
| | | | | | writing to zen and horde upstreams. Return failure from HandleGetCacheRecord if the requested type does not match the cachetype. (#55) * Fix bug with getting values PUT to Jupiter as CompressedBinary. When getting CompressedBinary records from Jupiter, they are expected to now be a record with a reference to the compact binary. This has to be accounted for when performing upstream GETs. * HandleGetCacheRecord: avoid crashing on invalid type, and avoid sending back data that doesn't match the AcceptType.
* Fixed "Record* Record;" non-conformant compile errors from GCCMartin Ridgers2022-02-112-13/+13
|
* Merge pull request #52 from EpicGames/ValuePropagationFixzousar2022-02-091-1/+1
|\ | | | | Change Value propagation to Zen or Jupiter
| * Change Value propagation to Zen or Jupiterzousar2022-02-081-1/+1
| | | | | | | | This change ensures we retain the right content type of kCompressedBinary when propagating values from Zen->UpstreamZen. This is done via an RPC that posts a CbPackage. Furthermore when propagating from Zen->Jupiter, it composes its own referencing CbObject for them instead of sending a octet content type and Jupiter defining the referencing CbObject. When fetching Values from Jupiter, this new composed CbObject is still interpreted correctly by Zen.
* | Simplify HandleRpcGetCacheChunks (#53)mattpetersepic2022-02-092-270/+319
| | | | | | Refactor HandleRpcGetCacheChunks to reduce complexity. Port CacheStore tests from Unreal.
* | Remove the backwards compatibility for the Zen CachePolicy changes no… (#49)mattpetersepic2022-02-082-234/+45
|/ | | Remove the backwards compatibility for the Zen CachePolicy changes now that there has been enough time for all internal users of the old protocol to update.
* clang-formatStefan Boberg2022-02-021-7/+7
|
* Cache policy support (#47)mattpetersepic2022-02-012-223/+989
| | | | | | | | Add HandleRpc methods for the remaining ICacheStore requests from unreal: PutCacheValues/GetCacheValues. We now have batched versions for PutCacheRecords,GetCacheRecords,PutCacheValues,GetCacheValues,GetCacheChunks. Add support for CachePolicy flags to all of these batched methods. * Add Batched PutCacheValues/GetCacheValues. Rename old GetCacheValues to GetCacheChunks. * HandleRpcGetCacheRecords: Receive a CacheRecordPolicy with each key, and skipdata on attachments we already have. * Changes to CachePolicy copied from Release-5.0 depot. Change serialization to use the key BasePolicy instead of DefaultValuePolicy. * GetChunks: Read CacheRecords from remote if necessary to find ContentId. Implement QueryLocal, StoreLocal, and SkipData.
* Merge branch 'main' of https://github.com/EpicGames/zenStefan Boberg2022-01-282-159/+420
|\
| * Compile fixMartin Ridgers2022-01-281-1/+0
| |
| * Rename Paylod to Value to match the client side: missing file from previous ↵Matt Peters2022-01-271-1/+1
| | | | | | | | commit.
| * Rename Paylod to Value to match the client side. Rename PayloadId to ↵mattpetersepic2022-01-272-52/+57
| | | | | | | | ValueContentId where its a hash instead of an oid.
| * Add batched CacheRecord put rpc (#38)mattpetersepic2022-01-272-17/+187
| | | | | | * Add batched CacheRecord put rpc
| * Implement SkipData,QueryLocal,StoreLocal for HandleRpcGetCacheRecords (#41)mattpetersepic2022-01-261-51/+103
| | | | | | * Implement SkipData,QueryLocal,StoreLocal for HandleRpcGetCacheRecords.
| * Implement SkipData,QueryLocal,StoreLocal for GET-verb CacheGet requests (#39)mattpetersepic2022-01-261-40/+75
| | | | | | * Implement SkipData,QueryLocal,StoreLocal for GET-verb CacheGet requests
* | Structured cache PUTs now preserve content type for binary and compressed binaryStefan Boberg2022-01-281-2/+2
|/
* Merge branch 'main' of https://github.com/EpicGames/zenStefan Boberg2022-01-252-174/+137
|\
| * Cachepolicy (#36)mattpetersepic2022-01-252-174/+137
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Copy CachePolicy implementation from UE5/Release-5.0. Add backwards compatability for clients and upstreams that are using the old protocol. * Add RefPtr templated move operator and constructor, so that RefPtr<const Foo*> A = std::move(RefPtr<Foo*>()) will do a move. * Fix broken CachePolicy tests and add tests for new Save/Load. * Remove TODO comments * CachePolicy Save/Load Fixes from codereview * Fix comment to match code change. * Remove backwards compatibility for CachePolicy change. Convert policy string tokens to PascalCase. Fix tests for new policy text. Change ParseCachePolicy to assert string is non-empty and always succeed. * Fix release build: use ZEN_WITH_TESTS define
* | Implemented support for storing compressed buffers as values in structured ↵Stefan Boberg2022-01-252-4/+14
|/ | | | cache store
* Refactored upstream cache to better handle different states in prep for ↵Per Larsson2022-01-242-45/+38
| | | | dynamic auth tokens.
* Format fix.Per Larsson2022-01-221-1/+1
|
* Use ExtendablePathBuilderszousar2022-01-211-3/+3
| | | | Remove uses of non-extendable path builders to avoid limitations around path length outside of the low level file access layer.
* Fixed missing object in cache bucket manifest.Per Larsson2022-01-211-1/+5
|
* Support chunk requests with no ValueId, and interpret them as requested for ↵mattpetersepic2022-01-171-22/+33
| | | | values put with the PutValue API, which sends a package with RawHash and RawSize on the root object. (#35)
* Moved "concepts" include to zencore.h as toolchain support is spottyMartin Ridgers2022-01-131-2/+0
|
* Handle PartialOnError cache policy when using z$ rest endpoint.Per Larsson2022-01-121-63/+71
|
* Fixed missing content type when storing cache values.Per Larsson2022-01-111-7/+7
|
* LLVM-12 C++ lib's emplace_back() doesn't like classes all that muchMartin Ridgers2022-01-101-1/+4
|
* Fixed unused-lambda-capture compile errorsMartin Ridgers2022-01-101-3/+3
|
* Removed ZEN_UNUSED() statement that is unnecessaryMartin Ridgers2022-01-101-1/+0
|
* Compiler support for C++20's using-enum is wildly incompleteMartin Ridgers2022-01-101-18/+10
|
* Deleted two unused include statementsMartin Ridgers2022-01-101-2/+0
|
* Converted use of _format UDL to fmt::formatMartin Ridgers2022-01-103-19/+10
|
* Allow for "Values" member of structured cache records that is equivalent to ↵Zousar Shaker2022-01-041-0/+11
| | | | "Attachments".
* Changed timestamp to atomic int64.Per Larsson2022-01-032-29/+55
|
* Added trace scopes.Per Larsson2021-12-152-0/+14
|
* Commented out unused local variablesMartin Ridgers2021-12-151-2/+2
|