Skip to content

[profiler] Search by table/view name - #6764

Merged
mihaibudiu merged 2 commits into
feldera:mainfrom
mihaibudiu:issue6762
Jul 30, 2026
Merged

[profiler] Search by table/view name#6764
mihaibudiu merged 2 commits into
feldera:mainfrom
mihaibudiu:issue6762

Conversation

@mihaibudiu

@mihaibudiu mihaibudiu commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Fixes #6762

A second commit adds names to connectors in a demo to silence warnings.

Checklist

  • Unit tests added/updated
  • Documentation updated

I have tested this manually locally.

…ngs)

Signed-off-by: Mihai Budiu <mbudiu@feldera.com>
Signed-off-by: Mihai Budiu <mbudiu@feldera.com>
@mihaibudiu
mihaibudiu requested review from Karakatiza666 and blp July 30, 2026 02:56
@mihaibudiu
mihaibudiu enabled auto-merge July 30, 2026 02:56

@mythical-fred mythical-fred 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.

Clean profiler feature: search now matches table/view names in addition to node IDs and persistent-ID substrings, and reveals hidden matches by expanding their collapsed ancestors before centering on the next layout.

Nice touches:

  • CircuitProfile.byName is populated from the dataflow's MIR pass and keyed lowercase; findByName prefers an exact match over a substring match, which is the right precedence for named tables that happen to be substrings of view names (the port/report test pins this).
  • ComplexNode.collapsedOperation() cleanly separates the collapsed label (operation + contained names) from the expanded label; Cytograph only calls it when a node is drawn as a cluster, so the semantic split is enforced structurally rather than by convention.
  • The previous fallback that walked to the outermost parent and toggled it was blunt; CircuitSelector.expandAncestors expands only the collapsed ancestors that actually hide the target, and Visualizer.reveal() clears centerOnNextLayout when nothing was expanded so an unrelated later layout does not surprise the user.
  • Tests cover name indexing, substring fallback, exact-over-substring precedence, and ancestor propagation of contained names.

Second commit is trivial: names all connectors entries in the medallion demo and fixes the pipelie_sourcespipeline_sources typo in sec-ops. Both silence warnings without behavior change.

CI is green. No AI trailers.

One minor observation, non-blocking: findByName's substring fallback iterates byName.entries() in insertion order, so with multiple substring matches the earliest-inserted wins. That is deterministic given a fixed dataflow, but the ordering is not part of the documented contract — worth a note if a user ever asks "why did it pick this one?".

Approving.

@Karakatiza666 Karakatiza666 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM. Did you find node indexes for the purposes of the search benefitial?

@mihaibudiu
mihaibudiu added this pull request to the merge queue Jul 30, 2026
Merged via the queue into feldera:main with commit d8951ca Jul 30, 2026
1 check passed
@mihaibudiu
mihaibudiu deleted the issue6762 branch July 30, 2026 05:07
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.

[profiler] Profiler search cannot search by table/view name

3 participants