Implementation:Apache Druid ExecutionSummaryPanel
| Knowledge Sources | |
|---|---|
| Domains | Web_Console, Query_Workbench |
| Last Updated | 2026-02-10 10:00 GMT |
Overview
ExecutionSummaryPanel is a React component that renders a compact summary bar showing query execution results, timing, and download actions.
Description
The component displays a ButtonGroup with contextual information about a completed or errored query execution. For successful queries, it shows the result count (with handling for truncated results and outer limits), warning count, and execution duration. It provides a download popover menu supporting multiple file formats (via FILE_FORMATS), clipboard copy options, and access to destination pages for bulk downloads from MSQ tasks. For errored queries, it shows the error duration. An optional reset button allows clearing the output. Clicking the results button opens execution details for MSQ queries or copies the query ID for native queries.
Usage
Used in the workbench view below the query editor to provide a summary of the latest query execution with quick access to download, copy, and detail actions.
Code Reference
Source Location
- Repository: Apache Druid
- File: web-console/src/views/workbench-view/execution-summary-panel/execution-summary-panel.tsx
- Lines: 1-185
Signature
export interface ExecutionSummaryPanelProps {
execution: Execution | undefined;
queryErrorDuration: number | undefined;
onExecutionDetail(): void;
onReset?: () => void;
}
export const ExecutionSummaryPanel = React.memo(function ExecutionSummaryPanel(
props: ExecutionSummaryPanelProps,
): JSX.Element;
Import
import { ExecutionSummaryPanel } from 'web-console/src/views/workbench-view/execution-summary-panel/execution-summary-panel';
I/O Contract
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
| execution | Execution or undefined | No | The completed execution with result data |
| queryErrorDuration | number or undefined | No | Duration in ms if the query errored; displays error timing |
| onExecutionDetail | () => void | Yes | Callback to open execution details view |
| onReset | () => void | No | Optional callback to clear the output; shows a reset button when provided |
Outputs
| Name | Type | Description |
|---|---|---|
| JSX.Element | ButtonGroup | A minimal ButtonGroup with result count, duration, download menu, and optional reset button |
Usage Examples
Rendering the execution summary
<ExecutionSummaryPanel
execution={completedExecution}
queryErrorDuration={undefined}
onExecutionDetail={() => showDetails()}
onReset={() => clearOutput()}
/>