From 259b4d481e16c3880abae2076f0002d59ab1e851 Mon Sep 17 00:00:00 2001 From: Erik Darling <2136037+erikdarlingdata@users.noreply.github.com> Date: Sun, 15 Feb 2026 16:42:01 -0500 Subject: [PATCH] Fix chart X-axis double-converting custom range to server time (#49) The custom date range was already in server time (from LocalToServerTime), but the chart axis limit code added UtcOffsetMinutes again, shifting the X-axis by the server's UTC offset. With UTC-8 this caused an 8-hour shift (e.g. picking 8 AM-12 PM showed 12 AM-4 AM on the axis). Fixed in all 4 chart methods: blocking trend, deadlock trend, wait stats, and perfmon. Co-Authored-By: Claude Opus 4.6 --- Lite/Controls/ServerTab.xaml.cs | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Lite/Controls/ServerTab.xaml.cs b/Lite/Controls/ServerTab.xaml.cs index 40f7877a..0bc4c36e 100644 --- a/Lite/Controls/ServerTab.xaml.cs +++ b/Lite/Controls/ServerTab.xaml.cs @@ -811,8 +811,8 @@ private void UpdateBlockingTrendChart(List data, int hoursBack, Date DateTime rangeStart, rangeEnd; if (fromDate.HasValue && toDate.HasValue) { - rangeStart = fromDate.Value.AddMinutes(UtcOffsetMinutes); - rangeEnd = toDate.Value.AddMinutes(UtcOffsetMinutes); + rangeStart = fromDate.Value; + rangeEnd = toDate.Value; } else { @@ -881,8 +881,8 @@ private void UpdateDeadlockTrendChart(List data, int hoursBack, Date DateTime rangeStart, rangeEnd; if (fromDate.HasValue && toDate.HasValue) { - rangeStart = fromDate.Value.AddMinutes(UtcOffsetMinutes); - rangeEnd = toDate.Value.AddMinutes(UtcOffsetMinutes); + rangeStart = fromDate.Value; + rangeEnd = toDate.Value; } else { @@ -1184,8 +1184,8 @@ private async System.Threading.Tasks.Task UpdateWaitStatsChartFromPickerAsync() DateTime rangeStart, rangeEnd; if (IsCustomRange && fromDate.HasValue && toDate.HasValue) { - rangeStart = fromDate.Value.AddMinutes(UtcOffsetMinutes); - rangeEnd = toDate.Value.AddMinutes(UtcOffsetMinutes); + rangeStart = fromDate.Value; + rangeEnd = toDate.Value; } else { @@ -1325,8 +1325,8 @@ private async System.Threading.Tasks.Task UpdatePerfmonChartFromPickerAsync() DateTime rangeStart, rangeEnd; if (IsCustomRange && fromDate.HasValue && toDate.HasValue) { - rangeStart = fromDate.Value.AddMinutes(UtcOffsetMinutes); - rangeEnd = toDate.Value.AddMinutes(UtcOffsetMinutes); + rangeStart = fromDate.Value; + rangeEnd = toDate.Value; } else {