| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
- Refactor so we can have more than one cas store for project store and cache.
- Refactor `UpstreamCacheClient` so it is not tied to a specific CidStore
- Refactor scrub to keep the GC interface ScrubStorage function separate from scrub accessor functions (renamed to Scrub).
- Refactor storage size to keep GC interface StorageSize function separate from size accessor functions (renamed to TotalSize)
- Refactor cache storage so `ZenCacheDiskLayer::CacheBucket` implements GcStorage interface rather than `ZenCacheNamespace`
|
| | |
|
| |\ |
|
| | |
| |
| | |
* Bugfix: Add explicit lambda capture in CasContainer::IterateChunks to avoid accessing state data references
|
| | |
| |
| |
| | |
* validate incoming CbObject to cache when receiving a package
* validate records when fetched from store in cache before parsing them
|
| | |
| |
| |
| |
| |
| | |
* Added EASTL to help with eliminating memory allocations
* Applied EASTL to eliminate memory allocations, primarily by using `fixed_vector` et al to use stack allocations / inline struct allocations
Reduces memory events in traces by close to a factor of 10 in test scenario (starting editor for project F)
|
| | |
| |
| |
| | |
Result structure contains status and a string message (may be empty)
|
| | | |
|
| |/
|
|
| |
Overwrite with differing value should be denied if QueryLocal is not present and StoreLocal is present. Overwrite with equal value should succeed regardless of policy flags.
|
| |
|
|
|
|
| |
move jupiter.h/cpp -> zenutil
move packageformat.h/.cpp -> zenhttp
zenutil now depends on zenhttp instead of the inverse
|
| |
|
|
|
|
| |
- Improvement: Batch fetch record attachments when appropriate
- Improvement: Reduce memory buffer allocation in BlockStore::IterateBlock
- Improvement: Tweaked BlockStore::IterateBlock logic when to use threaded work (at least 4 chunks requested)
- Bugfix: CasContainerStrategy::IterateChunks could give wrong payload/index when requesting 1 or 2 chunks
|
| |
|
|
|
| |
* eliminated allocation in SetCurrentThreadName
* reduced memory allocator activity in cache RPC response building
* reduced allocations in compact binary building
|
| |
|
|
|
| |
* added FLLMTag which can be used to register memory tags outside of core
* changed `UE_MEMSCOPE` -> `ZEN_MEMSCOPE` for consistency
* instrumented some subsystems with dynamic tags
|
| | |
|
| |
|
| |
This change adds support for a namespace-qualified RPC endpoint for z$ at `/z$/<namespace>/$rpc` which may be used to validate RPC requests by URL inspection. The old scheme is still supported.
|
| | |
|
| |
|
|
|
| |
miss (#122)
* If we fail to get compression info for a partial request - log and report a miss
|
| |
|
|
|
|
| |
* cache file size of block on open
* add ability to control size limit for small chunk callback when iterating block
* Add batch fetch of cache values in the GetCacheValues request
|
| |
|
|
|
| |
* message formatting optimizations
* bump iostorecompression small value threshold to 1MB
|
| |
|
|
| |
* fix partial cache miss logging
* Handle zero size partial requests safer
|
| |
|
|
|
|
| |
* fix argument order when logging missed partial chunk
* make partial value a temporary variable
helps with debugging as the warning on bad range can tell the original size
* add asserts
|
| |
|
| |
* treat invalid partial chunk request as a miss
|
| |
|
|
| |
* validate result when getting partial chunk and warn on failure
* changelog
|
| |
|
|
| |
- Bugfix: Don't try to respond with zero size partial cache value when partial size is zero
- Improvement: Added more validation of data read from cache / cas
|
| |
|
| |
- Improvement: Batch scope for put of cache values
|
| |
|
| |
- Improvement: Add batching when writing multiple small chunks to block store - decreases I/O load significantly on oplog import
|
| |
|
|
| |
* Separate chunk raw hash from section hash (how to find the fragment attachment)
* fix partial get cache value tests
|
| | |
|
| |
|
| |
* add support for responding with partial cache chunks
|
| |
|
|
|
|
|
| |
- Improvement: Add zenhttp-test and zenutil-test
- Improvement: Moved cachepolicy test to cachepolicy.cpp
- Improvement: Renamed cachestore tests from z$ to cachestore
- Improvement: Moved test linking so test for a lib is linked by <lib>-test
- Improvement: Removed HttpRequestParseRelativeUri in httpstructuredcache.cpp and use the one in cacherequests.h instead
|
| |
|
|
| |
input (#648)
|
|
|
* moved all RPC processing from HttpStructuredCacheService into separate CacheRpcHandler class in zenstore
* move package marshaling to zenutil. was previously in zenhttp/httpshared but it's useful in other contexts as well where we don't want to depend on zenhttp
* introduced UpstreamCacheClient, this provides a subset of functions on UpstreamCache and lives in zenstore
|