From 3a09799e45e3460cdd9a54a73e9932f58eb50e56 Mon Sep 17 00:00:00 2001 From: Stefan Boberg Date: Fri, 6 Oct 2023 10:27:47 +0200 Subject: reject known bad bucket names in structured cache (#452) * added string_view helpers for ParseHexBytes/ParseHexNumber * reject known bad buckets in structured cache put handler (32-character hex bucket names are rejected) * also added bucket rejection logic to bucket discovery * added rejected_writes stat to HttpStructuredCache --- src/zenserver/cache/httpstructuredcache.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/zenserver/cache/httpstructuredcache.cpp') diff --git a/src/zenserver/cache/httpstructuredcache.cpp b/src/zenserver/cache/httpstructuredcache.cpp index 4a3f5f269..d499ccd9f 100644 --- a/src/zenserver/cache/httpstructuredcache.cpp +++ b/src/zenserver/cache/httpstructuredcache.cpp @@ -3299,7 +3299,8 @@ HttpStructuredCacheService::HandleStatsRequest(HttpServerRequest& Request) if (ShowCacheStoreStats) { Cbo.BeginObject("store"); - Cbo << "hits" << CacheStoreStats.HitCount << "misses" << CacheStoreStats.MissCount << "writes" << CacheStoreStats.WriteCount; + Cbo << "hits" << CacheStoreStats.HitCount << "misses" << CacheStoreStats.MissCount << "writes" << CacheStoreStats.WriteCount + << "rejected_writes" << CacheStoreStats.RejectedWriteCount; const uint64_t StoreTotal = CacheStoreStats.HitCount + CacheStoreStats.MissCount; Cbo << "hit_ratio" << (StoreTotal > 0 ? (double(CacheStoreStats.HitCount) / double(StoreTotal)) : 0.0); EmitSnapshot("read", CacheStoreStats.GetOps, Cbo); -- cgit v1.2.3