diff options
| author | Stefan Boberg <[email protected]> | 2021-11-03 14:28:14 +0100 |
|---|---|---|
| committer | Stefan Boberg <[email protected]> | 2021-11-03 14:28:14 +0100 |
| commit | 3de4c9e930a3357b93c46a6c9144a36e2f073ec7 (patch) | |
| tree | d3010a672680fcc07d6479ef20ebcf903f0f3a39 /zenserver/cache/structuredcache.cpp | |
| parent | Fixed unused variable warning (diff) | |
| download | zen-3de4c9e930a3357b93c46a6c9144a36e2f073ec7.tar.xz zen-3de4c9e930a3357b93c46a6c9144a36e2f073ec7.zip | |
Add /vsxmake* to .gitignore
Diffstat (limited to 'zenserver/cache/structuredcache.cpp')
| -rw-r--r-- | zenserver/cache/structuredcache.cpp | 38 |
1 files changed, 35 insertions, 3 deletions
diff --git a/zenserver/cache/structuredcache.cpp b/zenserver/cache/structuredcache.cpp index ffb6f563a..d71329a4b 100644 --- a/zenserver/cache/structuredcache.cpp +++ b/zenserver/cache/structuredcache.cpp @@ -1,7 +1,10 @@ // Copyright Epic Games, Inc. All Rights Reserved. +#include "structuredcache.h" + #include <zencore/compactbinary.h> #include <zencore/compactbinarybuilder.h> +#include <zencore/compactbinarypackage.h> #include <zencore/compactbinaryvalidation.h> #include <zencore/compress.h> #include <zencore/fmtutils.h> @@ -13,15 +16,12 @@ #include <zenstore/CAS.h> #include "monitoring/httpstats.h" -#include "structuredcache.h" #include "structuredcachestore.h" #include "upstream/jupiter.h" #include "upstream/upstreamcache.h" #include "upstream/zen.h" #include "zenstore/cidstore.h" -#include <zencore/compactbinarypackage.h> - #include <algorithm> #include <atomic> #include <filesystem> @@ -147,6 +147,36 @@ ParseCachePolicy(const HttpServerRequest::QueryParams& QueryParams) ////////////////////////////////////////////////////////////////////////// +class CacheAccessTracker +{ +public: + CacheAccessTracker(); + ~CacheAccessTracker(); + + void TrackAccess(std::string_view BucketSegment, const IoHash& HashKey); + +private: + RwLock m_Lock; +}; + +CacheAccessTracker::CacheAccessTracker() +{ +} + +CacheAccessTracker::~CacheAccessTracker() +{ +} + +void +CacheAccessTracker::TrackAccess(std::string_view BucketSegment, const IoHash& HashKey) +{ + ZEN_UNUSED(BucketSegment, HashKey); +} + +CacheAccessTracker g_AccessTracker; + +////////////////////////////////////////////////////////////////////////// + HttpStructuredCacheService::HttpStructuredCacheService(ZenCacheStore& InCacheStore, CidStore& InCidStore, HttpStatsService& StatsService, @@ -299,6 +329,8 @@ HttpStructuredCacheService::HandleGetCacheRecord(zen::HttpServerRequest& Request { Success = true; + g_AccessTracker.TrackAccess(Ref.BucketSegment, Ref.HashKey); + if (!SkipData && AcceptType == ZenContentType::kCbPackage) { CbPackage Package; |