Re: Why does the planner reduce the planned rows when filtering single values in an array
От
Tom Lane
Тема
Re: Why does the planner reduce the planned rows when filtering single values in an array
Дата
Msg-id
3341124.1682088214@sss.pgh.pa.us
Ответ на
Why does the planner reduce the planned rows when filtering single values in an array (Isaiah Langford)
Список
Дерево обсуждения
Why does the planner reduce the planned rows when filtering single values in an array Isaiah Langford <ilangford@ushrauto.com>
Re: Why does the planner reduce the planned rows when filtering single values in an array Tom Lane <tgl@sss.pgh.pa.us>
Re: Why does the planner reduce the planned rows when filtering single values in an array Isaiah Langford <ilangford@ushrauto.com>
Isaiah Langford writes: > Why is the planner expecting the number of rows to be reduced by the join filter? Is there any way I can correct the planner here? I think you're running into a couple of issues here: * ANALYZE fails to record any useful stats for a single-row table. It can't form a histogram with only one entry, but it also fails to put the value into the MCV list, because there's a heuristic that an MCV must appear more than once. Possibly we could think harder about what to do with such cases, but at the moment the planner has no knowledge that the only value in single_value_table is "1". * Even if it did know that, the logic in scalararraysel() is quite inadequate for the case of "variable = ANY(variable)". It looks like that's only been fleshed out for cases where one side or the other is a constant. Lot of unfinished work here :-( regards, tom lane
В списке pgsql-general по дате отправления