feat(cli): Expose query resource estimates (#1821) - #1821
Open
singcha wants to merge 2 commits into
Open
Conversation
|
@singcha has exported this pull request. If you are a Meta employee, you can view the originating Diff in D118555659. |
Summary: Extend optimizer-v2 `estimateQueryStats()` with aggregate input-row, input-logical-byte, and output-logical-byte estimates while preserving the existing output-row and column statistics. Input estimates sum scan work after pushdown, include filter-only read columns, scale `TABLESAMPLE SYSTEM`, and become unknown when any scan row count is unknown. `SHOW STATS FOR` continues to consume only the pre-existing fields. Differential Revision: D118522999
Summary: Callers can now estimate logical input and output rows and bytes from SQL or an existing logical plan without physical planning or execution. For example, analyzing `CREATE TABLE t AS SELECT 1` reports one row entering the table write without creating `t`. Parsed statements expose the plan they carry, and wrappers delegate to the wrapped statement. The analysis uses the existing validation path and copies four optional totals from optimizer v2. Filtered table statistics apply only to analysis. Existing execution and `SHOW STATS` behavior is unchanged. Differential Revision: D118555659
singcha
force-pushed
the
export-D118555659
branch
from
September 3, 2026 01:22
4e08d32 to
cffb1bc
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary:
Callers can now estimate logical input and output rows and bytes from SQL or an existing logical plan without physical planning or execution. For example, analyzing
CREATE TABLE t AS SELECT 1reports one row entering the table write without creatingt.Parsed statements expose the plan they carry, and wrappers delegate to the wrapped statement. The analysis uses the existing validation path and copies four optional totals from optimizer v2.
Filtered table statistics apply only to analysis. Existing execution and
SHOW STATSbehavior is unchanged.Differential Revision: D118555659