Access root->simple_rte_array instead of Query->rtable for 2 more cases.

Поиск
Список
Период
Сортировка
От Andy Fan
Тема Access root->simple_rte_array instead of Query->rtable for 2 more cases.
Дата
Msg-id CAKU4AWrxB28GHOpr480QkbBAupAySqymOunjaaMGjGqBiUWEHg@mail.gmail.com
обсуждение исходный текст
Ответы Re: Access root->simple_rte_array instead of Query->rtable for 2 more cases.  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
When I am understanding the relationship between Query->rtable and
root->simple_rte_array, I'd like to assume that Query->rtable should be never used
when root->simple_rte_array is ready. I mainly checked two places, make_one_rel and
create_plan with the below hacks.

{
  List *l = root->parse->rtable;
  root->parse->rtable = NIL;
  make_one_rel..  or create_plan_recurse..
  root->parse->rtable = l;
}


Then I found adjust_appendrel_attrs_mutator and infer_arbiter_indexes still
use it. The attached patch fixed it by replacing the rt_fetch with planner_rt_fetch,
all the tests passed.


--
Best Regards
Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Ranier Vilela
Дата:
Сообщение: Re: Possible pointer var TupleDesc rettupdesc used not initialized (src/backend/optimizer/util/clauses.c)
Следующее
От: Peter Eisentraut
Дата:
Сообщение: Re: CALL versus procedures with output-only arguments