Hi Hackers,
I am not sure if this is a bug or I am missing something:
There is a partitioned table with partitions being a mix of foreign and regular tables.
I have a function:
report(param text) RETURNS TABLE(…) STABLE LANGUAGE sql AS
$$
SELECT col1, expr1(col2), expr2(col2), sum(col3) FROM tbl GROUP BY col1, expr1(col2), expr2(col2)
$$
EXPLAIN SELECT * FROM report(‘xyz’);
returns expected plan pushing down aggregate expression to remote server.
When I add STRICT or SET search_path to the function definition, the plan is (as expected) a simple function scan.
But - to my surprise - auto explain in the logs shows unexpected plan with all nodes scanning partitions having row estimates = 1
Is it expected behavior?
—
Michal