Functional limitations¶
Influence of planner GUC parameters¶
The planner does not try to consider joining order for FROM clause entries
more than from_collapse_limit
. pg_hint_plan
cannot affect the joining
order in this case.
Hints trying to enforce non-executable plans¶
Planner chooses any executable plans when the enforced plan cannot be executed:
FULL OUTER JOIN
to use nested loop.Use of indexes that do not have columns used in quals.
TID scans for queries without ctid conditions.
Queries in ECPG¶
ECPG removes comments in queries written as embedded SQLs so hints cannot
be passed to it. The only exception EXECUTE
, that passes the query string
to the server as-is. The hint table can be used in the case.
Query Identifiers¶
When compute_query_id
is enabled, PostgreSQL generates a query ID,
ignoring comments. Hence, queries with different hints, still written
the same way, may compute the same query ID.