[Bug](pipeline) Fix projection on streaming operator (#16592)
This commit is contained in:
@ -570,9 +570,12 @@ Status ExecNode::do_projections(vectorized::Block* origin_block, vectorized::Blo
|
||||
|
||||
Status ExecNode::get_next_after_projects(
|
||||
RuntimeState* state, vectorized::Block* block, bool* eos,
|
||||
const std::function<Status(RuntimeState*, vectorized::Block*, bool*)>& func) {
|
||||
const std::function<Status(RuntimeState*, vectorized::Block*, bool*)>& func,
|
||||
bool clear_data) {
|
||||
if (_output_row_descriptor) {
|
||||
_origin_block.clear_column_data(_row_descriptor.num_materialized_slots());
|
||||
if (clear_data) {
|
||||
clear_origin_block();
|
||||
}
|
||||
auto status = func(state, &_origin_block, eos);
|
||||
if (UNLIKELY(!status.ok())) return status;
|
||||
return do_projections(&_origin_block, block);
|
||||
|
||||
Reference in New Issue
Block a user