Re: What is an RT index?

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: What is an RT index?
Дата
Msg-id 18009.1067297886@sss.pgh.pa.us
обсуждение исходный текст
Ответ на What is an RT index?  ("Rada Chirkova" <chirkova@csc.ncsu.edu>)
Список pgsql-general
"Rada Chirkova" <chirkova@csc.ncsu.edu> writes:
> Hi, could you help me? I am reading documentation on RelOptInfo in version
> 7.3.4 and have come across "RT indexes" in the explanation. Could you tell
> me what they are?

"rangetable indexes", that is, the integer position numbers of different
relations' entries in the Query's rtable list.

> They seem to be some kind of unique identifiers of relations,

Unique only within the context of a given query.  For example,

    select * from a join b on (a.f1 = b.f2)

will create RTEs (range table entries, struct RangeTblEntry) for
a, b, and their join.  Because the RTEs will be added to the rtable list
in that order, they will have RT indexes 1, 2, 3 respectively in this
query.

There are various places in the optimizer code that use "relid" to mean
the same thing as "RT index".  Outside the optimizer, "relid" more often
means a relation's OID, which is not the same thing at all.

            regards, tom lane

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

Предыдущее
От: Robert Treat
Дата:
Сообщение: Re: Experience with PL/xx?
Следующее
От: Allen Landsidel
Дата:
Сообщение: Re: SCSI vs. IDE performance test