Skip to content

Fix deadlock charts not populating data#80

Merged
erikdarlingdata merged 1 commit intodevfrom
feature/fix-deadlock-charts
Feb 16, 2026
Merged

Fix deadlock charts not populating data#80
erikdarlingdata merged 1 commit intodevfrom
feature/fix-deadlock-charts

Conversation

@erikdarlingdata
Copy link
Owner

Summary

  • Fix Locking > Trends deadlock charts showing empty when deadlock data exists
  • Four-layer fix across Dashboard charts, XAML titles, and two SQL collectors

Changes

Dashboard (ServerTab.xaml.cs): Plot raw per-interval columns (DeadlockCount, BlockingEventCount, etc.) instead of delta columns. The delta framework incorrectly computed current - previous = 0 for values that are already per-interval counts.

Dashboard (ServerTab.xaml): Remove "(Delta)" from all four Locking > Trends chart titles.

Analyzer (26_blocking_deadlock_analyzer.sql): Filter collect.deadlocks on collection_time instead of event_date. Deadlock XE events have significant collection lag (e.g., 170+ minutes), so filtering on event_date missed late-arriving rows.

Process XML (25_process_deadlock_xml.sql): Add +1 second buffer to @end_date when derived from a single unprocessed row. sp_BlitzLock uses strict < @EndDate, so when @start_date = @end_date (single event), nothing matched.

Test Plan

  • Generated test deadlock on sql2022, verified full pipeline: XE capture → deadlock_xml → sp_BlitzLock → collect.deadlocks → blocking_deadlock_stats → Dashboard charts
  • Verified analyzer correctly picks up late-arriving deadlocks using collection_time filter
  • Dashboard Locking > Trends shows deadlock data in both Deadlock Count and Deadlock Wait Time charts
  • Chart titles no longer say "(Delta)"
  • Build succeeds with no errors

Closes #73

Generated with Claude Code

Four fixes for the deadlock chart pipeline:

- Dashboard charts: plot raw per-interval columns instead of delta columns
  (blocking_event_count, deadlock_count, etc.) since delta framework
  incorrectly computed current-previous=0 for per-interval values
- XAML: remove "(Delta)" from all four Locking > Trends chart titles
- Analyzer: filter collect.deadlocks on collection_time instead of
  event_date so late-arriving XE deadlock events are not missed
- Process XML: add +1 second buffer to @end_date so sp_BlitzLock's
  strict less-than filter works when processing a single deadlock event

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@erikdarlingdata erikdarlingdata merged commit 3932bb5 into dev Feb 16, 2026
6 checks passed
@erikdarlingdata erikdarlingdata deleted the feature/fix-deadlock-charts branch February 16, 2026 22:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant