webui: query fingerprinting and changes to plan or execution. #50284
Labels
A-sql-ui
Why is my query slow?
C-enhancement
Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception)
T-sql-queries
SQL Queries Team
In #50255 we introduced vectorized execution into the webui. In the example, I noticed that within the same query fingerprint we can present
yes
,no
, ornumerator/demoniator
. For example, here is a 1/2:This can be confusing to users because it doesn't explain why some queries are vectorized and some are not. Generalizing up a level, it won't be clear why the query fingerprint is sometimes faster and sometimes slower.
This has to do with the fact that we group queries based on fingerprinting. The same logical query (the same query fingerprint) could be run vectorized sometimes and sometimes not vectorized. For example this could be due to turning off the vectorized execution, lack of table statistics on the first run (this informs whether we use vectorized or not). This same methodology is also used to describe distributed execution. This begs the question, is it appropriate to group fingerprints if the execution changes?
What about if the plans change due to changing statistics?
Keeping the fingerprints grouped logically makes sense but it makes it hard to understand differences in query performance caused by changes in planning or execution. We should think about how to communicate this information.
Jira issue: CRDB-4138
The text was updated successfully, but these errors were encountered: