Skip to content

Conversation

jayshrivastava
Copy link
Collaborator

@jayshrivastava jayshrivastava commented Oct 3, 2025

This change adds support for displaying a distributed EXPLAIN ANALYZE output. It updates the TPCH
validation tests to assert the EXPLAIN ANALYZE output for each query.

Implemenation notes:

  • Adds src/explain.rs to store helpers for EXPLAIN
  • Adds a Option<DisplayCtx> field to StageExec to contain extra information for display purposes.
    • Given that the metrics are collected by the root stage, the first step is to rewrite all the
      StageExec nodes in a plan to have this context
    • Then, at display-time, when displaying a task, we re-write each task plan to use the metrics
      from the DislplayCtx

Informs: #123

Remaning work:

  • disable any metrics propagation if not running EXPLAIN ANALYZE as it adds extra overhead
  • graphviz support
  • add docs + exalidraw

@jayshrivastava jayshrivastava force-pushed the js/full-explain-analyze branch from 53d2057 to e44ed3d Compare October 4, 2025 20:28
This change adds support for displaying a distributed EXPLAIN ANALYZE output. It updates the TPCH
validation tests to assert the EXPLAIN ANALYZE output for each query.

Implemenation notes:
- Adds `src/explain.rs` to store helpers for EXPLAIN
- Adds a `Option<DisplayCtx>` field to `StageExec` to contain extra information for display purposes.
  - Given that the metrics are collected by the root stage, the first step is to rewrite all the
    `StageExec` nodes in a plan to have this context
  - Then, at display-time, when displaying a task, we re-write each task plan to use the metrics
    from the `DislplayCtx`

Informs: #123

Remaning work:
- disable any metrics propagation if not running EXPLAIN ANALYZE as it adds extra overhead
- graphviz support
- add docs + exalidraw
@jayshrivastava jayshrivastava force-pushed the js/full-explain-analyze branch from da65229 to 700e5c2 Compare October 4, 2025 20:48
@jayshrivastava jayshrivastava changed the title Js/full explain analyze implement distributed EXPLAIN ANALYZE Oct 4, 2025
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