Fix table function execution without partitioning
Previously, when table function did not declare partitioning, it would be globally distributed, but on a worker node it would run single-threaded and first buffer all data in memory, like a one big WINDOW. After the change, the local execution processes input pages in a streaming fashion.
This commit also fixes property derivations for a case where table function is partitioned on empty list of symbols (global grouping).
Fixes https://github.com/trinodb/trino/issues/20398
cc @ebyhr @hovaesco
just rebased, no other changes
@martint @ebyhr PTAL
( rebased, no other changes )
draft -- this implementation has suboptimal lifecycle for TableFunctionDataProcessor
https://github.com/trinodb/trino/pull/21558 attempts to improve this
Any traction on this? We have been running a fork with these changes and would love for it to be in trino proper.
@kasiafi @findepi .. did you want to continue on this or close it?
@mosabua I think we can close - I would be opening a new PR for this.
This pull request has gone a while without any activity. Tagging for triage help: @mosabua