From fbcdd7adb875794c0974182888b5a1e3259ba9dd Mon Sep 17 00:00:00 2001 From: Sebastian Stehle Date: Mon, 24 Aug 2026 14:34:12 +0200 Subject: [PATCH] Improve cache keys --- .../HandleRules/EventEnricher.cs | 2 +- .../Scripting/Internal/CacheParser.cs | 4 +- .../AppProvider.cs | 42 +++++------ .../Billing/UsageGate.cs | 13 ++-- .../GraphQL/CachingGraphQLResolver.cs | 9 +-- .../Squidex.Domain.Apps.Entities/Context.cs | 4 +- .../Rules/RuleEnqueuer.cs | 13 +--- .../Security/Extensions.cs | 10 ++- .../UsageTracking/CachingUsageTracker.cs | 5 +- resolved.md | 72 +++++++++++++++++++ todo.md | 22 +----- 11 files changed, 121 insertions(+), 75 deletions(-) diff --git a/backend/src/Squidex.Domain.Apps.Core.Operations/HandleRules/EventEnricher.cs b/backend/src/Squidex.Domain.Apps.Core.Operations/HandleRules/EventEnricher.cs index bffed50c5..f5225bb04 100644 --- a/backend/src/Squidex.Domain.Apps.Core.Operations/HandleRules/EventEnricher.cs +++ b/backend/src/Squidex.Domain.Apps.Core.Operations/HandleRules/EventEnricher.cs @@ -43,7 +43,7 @@ public sealed class EventEnricher(IMemoryCache userCache, IUserResolver userReso private Task FindUserAsync(RefToken actor) { - var cacheKey = $"{typeof(EventEnricher)}_Users_{actor.Identifier}"; + var cacheKey = (typeof(EventEnricher), actor.Identifier); return userCache.GetOrCreateAsync(cacheKey, async x => { diff --git a/backend/src/Squidex.Domain.Apps.Core.Operations/Scripting/Internal/CacheParser.cs b/backend/src/Squidex.Domain.Apps.Core.Operations/Scripting/Internal/CacheParser.cs index 5e731f32c..5d9bb3bb3 100644 --- a/backend/src/Squidex.Domain.Apps.Core.Operations/Scripting/Internal/CacheParser.cs +++ b/backend/src/Squidex.Domain.Apps.Core.Operations/Scripting/Internal/CacheParser.cs @@ -17,7 +17,9 @@ internal sealed class CacheParser(IMemoryCache cache) public Prepared