Skip to content

Add seek and scan predicate summary details to plans - #16

Merged
MasayukiOzawa merged 1 commit into
masterfrom
codex/seek-scan-predicate-table
Jul 3, 2026
Merged

Add seek and scan predicate summary details to plans#16
MasayukiOzawa merged 1 commit into
masterfrom
codex/seek-scan-predicate-table

Conversation

@MasayukiOzawa

Copy link
Copy Markdown
Owner

Summary

  • Add a new SeekScanPredicateEntry model to capture predicate details for seek and scan operators.
  • Extend showplan parsing to collect table/index context plus Predicate and Seek predicate values into statement summaries.
  • Surface the new data in the web UI with a dedicated Seek/Scan predicates table and matching styling.
  • Update core tests and add parser coverage for predicate extraction.

Testing

  • Added parser unit coverage for scan/seek predicate collection from representative showplan XML.
  • Updated existing core and projection tests to account for the expanded statement summary model.
  • Not run (not requested)

Copilot AI review requested due to automatic review settings July 3, 2026 06:58
@MasayukiOzawa
MasayukiOzawa merged commit 916b27d into master Jul 3, 2026
1 check passed
@MasayukiOzawa
MasayukiOzawa deleted the codex/seek-scan-predicate-table branch July 3, 2026 06:59

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new statement-summary surface for seek/scan predicate information, extending Core parsing to extract predicate/seek predicate text and exposing it in the Blazor UI as a dedicated summary table.

Changes:

  • Introduced SeekScanPredicateEntry and extended StatementPlanSummary to carry seek/scan predicate summaries.
  • Updated ShowplanParser to collect predicate + seek predicate details for seek/scan operators with object context (db/schema/table/index).
  • Rendered the new summary data in Home.razor with matching table styling; updated/added Core tests accordingly.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated no comments.

Show a summary per file
File Description
tests/MSSQLPlanViewer.Core.Tests/TestPlanFactory.cs Updated test plan factory summaries to include empty seek/scan predicate entries.
tests/MSSQLPlanViewer.Core.Tests/ShowplanParserTests.cs Added coverage asserting predicate + seek predicate extraction into statement summaries.
tests/MSSQLPlanViewer.Core.Tests/PlanProjectionTests.cs Updated summary construction in projection tests to account for the new summary field.
tests/MSSQLPlanViewer.Core.Tests/PlanComparisonServiceTests.cs Updated statement summary creation to include empty seek/scan predicate entries.
src/MSSQLPlanViewer.Web/Components/Pages/Home.razor.css Added styling for the seek/scan predicate summary table and predicate cell wrapping.
src/MSSQLPlanViewer.Web/Components/Pages/Home.razor.cs Added helper for formatting table name display for predicate entries.
src/MSSQLPlanViewer.Web/Components/Pages/Home.razor Added a new “Seek/Scan predicates” summary table wired to statement summary data and node selection.
src/MSSQLPlanViewer.Core/Parsing/ShowplanParser.cs Collected seek/scan predicate entries from parsed nodes and attached them to statement summaries.
src/MSSQLPlanViewer.Core/Models/StatementPlanSummary.cs Extended the statement summary model with SeekScanPredicateEntries.
src/MSSQLPlanViewer.Core/Models/SeekScanPredicateEntry.cs Added the new model capturing node/object context plus predicate/seek predicate text.

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.

2 participants