Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EXPLAIN ANALYZE metrics should be sorted alphabetically #12567

Closed
progval opened this issue Sep 21, 2024 · 0 comments · Fixed by #12568
Closed

EXPLAIN ANALYZE metrics should be sorted alphabetically #12567

progval opened this issue Sep 21, 2024 · 0 comments · Fixed by #12568
Labels
enhancement New feature or request

Comments

@progval
Copy link
Contributor

progval commented Sep 21, 2024

Is your feature request related to a problem or challenge?

From ParquetExec metrics, with predicate pushdown enabled:

metrics=[output_rows=0, elapsed_compute=96ns, row_groups_matched_bloom_filter=0, row_groups_matched_statistics=21050, file_scan_errors=0, pushdown_rows_matched=0, row_groups_pruned_statistics=173576, row_groups_pruned_bloom_filter=21050, file_open_errors=0, num_predicate_creation_errors=0, bytes_scanned=25023432248, pushdown_rows_pruned=0, page_index_rows_pruned=0, predicate_evaluation_errors=0, page_index_rows_matched=0, time_elapsed_scanning_until_data=16.622753ms, time_elapsed_processing=72.280463608s, pushdown_eval_time=382ns, page_index_eval_time=3.177676ms, time_elapsed_scanning_total=16.661811ms, time_elapsed_opening=102.989073638s]

For example, pushdown_rows_matched and pushdown_rows_pruned are far away from each other, even though they refer to roughly the same thing.

The unstable sort also makes it hard to compare multiple EXPLAIN ANALYZE results.

Describe the solution you'd like

Sort them alphabetically, to break ties in the (very) partial order induced by MetricValue::display_sort_key

Describe alternatives you've considered

Split Metrics by categories and display each on a line; or split ParquetExec into "virtual" execution plans to reflect the successive opening and filtering steps done in ParquetOpener. That is more work, though.

Additional context

No response

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant