aboutsummaryrefslogtreecommitdiff
path: root/zenserver/cache
Commit message (Collapse)AuthorAgeFilesLines
* Minor cleanup.Per Larsson2022-03-151-3/+3
|
* Stream response in batches.Per Larsson2022-03-151-165/+229
|
* Combine last stream response with stream complete message.Per Larsson2022-03-111-86/+113
|
* Added streaming version of GetCacheChunks.Per Larsson2022-03-081-1/+111
|
* Added streaming version of GetCacheRecords.Per Larsson2022-03-081-0/+212
|
* Initial attempt of a streaming websocket API.Per Larsson2022-02-252-1/+161
|
* 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
|
* GCC has trouble parsing this sizeof expression without parenthesesMartin Ridgers2021-12-151-1/+1
|
* Fixed "incomplete type" error.Martin Ridgers2021-12-152-120/+120
| | | | | GCC throws this error when using forward-declared type as a value type for an std::pair (implicitly via a std::map).
* Removed duplicate unguarded Windows include statementMartin Ridgers2021-12-151-1/+0
|
* Merged main.Per Larsson2021-12-145-60/+76
|\
| * Fixed unused variable warningsMartin Ridgers2021-11-151-2/+2
| |
| * GCC does not like CacheKey member being named the same as its typeMartin Ridgers2021-11-151-11/+11
| |
| * Merged mainMartin Ridgers2021-11-151-15/+35
| |\