This diff adds a brand new visualization to replace the linear execution plan view. It uses a Gaant-chart flow diagram to show the execution plan graph and the dependencies between nodes, and includes an optional time axis and the ability to use the graph query syntax to filter.
This work is still experimental and is hidden behind a feature flag, which is persistent and can be toggled from http://localhost:5000/flags.
This diff includes several changes to adjacent code:
- The SplitView component now manages the root container as well as the childern and supports horizontal OR vertical panels.
- The Run.tsx file has been split apart and cleaned up a bit to support rendering either an <ExecutionPlan> or <GaantChart>
- The SolidQueryInput and SolidQueryImpl have been slightly generalized - they now use a set of "GraphQueryItems" instead of Solids, and the execution plan filtering uses the same code to filter EP nodes. This may be a futile exercise in the long term depending on how/if we expand the query language to include meta-selectors like +(status:failed)+, but we'll see.