Skip to content

Plan viewer: edge tooltips, context menu, ManyToMany, DOP-aware rules#66

Merged
erikdarlingdata merged 1 commit intodevfrom
feature/planviewer-improvements
Mar 10, 2026
Merged

Plan viewer: edge tooltips, context menu, ManyToMany, DOP-aware rules#66
erikdarlingdata merged 1 commit intodevfrom
feature/planviewer-improvements

Conversation

@erikdarlingdata
Copy link
Owner

Summary

  • Edge connector tooltips now match SSMS with all 5 fields (actual rows, estimated per-execution, estimated all-executions, row size, data size)
  • Right-click context menu on plan canvas: zoom, advice, repro, save
  • Merge joins always show Many to Many: Yes/No in tooltip
  • LayoutTransformControl for proper zoom+scroll behavior, fit scrolls to origin
  • Rules 25/31 use DOP-aware efficiency scoring: (CPU/Elapsed - 1) / (DOP - 1) * 100

Test plan

  • Hover connector lines — verify all 5 SSMS fields
  • Right-click plan background — verify context menu appears
  • Check merge join tooltip shows Many to Many: Yes/No
  • Load a parallel actual plan — verify efficiency % in warnings
  • Zoom to fit — plan root should be at top-left

🤖 Generated with Claude Code

…P-aware parallelism rules

- Edge connector tooltips now match SSMS with all 5 fields (actual rows,
  estimated per-execution, estimated all-executions, row size, data size)
- Right-click context menu on plan canvas (zoom, advice, repro, save)
- Fixed context menu to use ScrollViewer (Canvas has no hit-test background)
- Merge joins always show Many to Many: Yes/No in tooltip
- LayoutTransformControl for proper zoom+scroll behavior
- Fit zoom scrolls to origin so plan root is immediately visible
- Rules 25/31 now use DOP-aware efficiency scoring:
  efficiency = (CPU/Elapsed - 1) / (DOP - 1) * 100
  instead of simple CPU/Elapsed ratio

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@erikdarlingdata erikdarlingdata merged commit 8629dda into dev Mar 10, 2026
2 checks passed
@erikdarlingdata erikdarlingdata deleted the feature/planviewer-improvements branch March 10, 2026 00:36
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