From 086091a0fea2a0914bf4db1fc46e575e386f795e Mon Sep 17 00:00:00 2001 From: David Jang Date: Mon, 14 Sep 2026 01:32:04 +0900 Subject: [PATCH] fix(site): discard pending history when switching to live charts (#2333) --- internal/site/src/components/routes/system/use-system-data.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/site/src/components/routes/system/use-system-data.ts b/internal/site/src/components/routes/system/use-system-data.ts index c83d2dff..ef143637 100644 --- a/internal/site/src/components/routes/system/use-system-data.ts +++ b/internal/site/src/components/routes/system/use-system-data.ts @@ -171,6 +171,7 @@ export function useSystemData(id: string) { // get stats when system "changes." (Not just system to system, // also when new info comes in via systemManager realtime connection, indicating an update) useEffect(() => { + const requestId = ++statsRequestId.current if (!system.id || !chartTime || chartTime === "1m") { return } @@ -179,7 +180,6 @@ export function useSystemData(id: string) { const { expectedInterval } = chartTimeData[chartTime] const ss_cache_key = `${systemId}_${chartTime}_system_stats` const cs_cache_key = `${systemId}_${chartTime}_container_stats` - const requestId = ++statsRequestId.current const cachedSystemStats = cache.get(ss_cache_key) as SystemStatsRecord[] | undefined const cachedContainerData = cache.get(cs_cache_key) as ChartData["containerData"] | undefined @@ -203,7 +203,7 @@ export function useSystemData(id: string) { getStats("system_stats", systemId, chartTime), getStats("container_stats", systemId, chartTime), ]).then(([systemStats, containerStats]) => { - // If another request has been made since this one, ignore the results + // Ignore responses for a previous system or chart time if (requestId !== statsRequestId.current) { return }