colexec: clean up handling of abandoned components #61679
Labels
C-cleanup
Tech debt, refactors, loose ends, etc. Solution not expected to significantly change behavior.
T-sql-queries
SQL Queries Team
During the planning of vectorized flows, there are scenarios when certain operators are abandoned after they have been created (i.e. they become optimized out of the tree). Examples are columnarizers being removed from the flow (3c54450) or special queries like
SELECT 1 FROM t HAVING true
for which we planfixedNumTuplesNoInputOp
with no inputs. This works well for the main tree for the execution purposes, but it can break the assumptions ofDrainMeta/Close
method implementations thatInit
has been called.In #61306 (comment) Alfonso suggested a nice idea to keep track of this state during the planning and disabling certain components when they are abandoned.
Jira issue: CRDB-2974
The text was updated successfully, but these errors were encountered: