-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
colbuilder: vectorizing rendering on top of wrapped processors
Previously, whenever we needed to wrap a row-by-row processor into the vectorized flow, we would pass in the whole `PostProcessSpec` to that processor. When this was originally implemented several years ago, this was needed so that processors could determine the set of "needed columns" (which should be decoded from KV responses). However, recently we refactored that, and now the set of needed columns is passed via the `IndexFetchSpec`. This means that we no longer need to pass the whole `PostProcessSpec` when wrapping, and this commit takes advantage of that observation in order to vectorize the evaluation of render expressions. In particular, vectorizing of render expressions allows us to plan more efficient vectorized builtins. We still pass all other parts of the `PostProcessSpec` (meaning that the wrapped processor is still responsible for projections, limits, and offsets) since those operations will limit the number of datums that need to be converted to the columnar in-memory format as well as provide limit hints to the wrapped processors. Release note: None
- Loading branch information
1 parent
023a057
commit f5acd81
Showing
3 changed files
with
91 additions
and
57 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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