Re: struct RelOptInfo member relid comments - Mailing list pgsql-hackers

From Ashutosh Bapat
Subject Re: struct RelOptInfo member relid comments
Date
Msg-id CAExHW5tcAQWE3WjbR-gQK=YFPeFdvwsNdbbNfWDbEA39depnyA@mail.gmail.com
Whole thread Raw
In response to Re: struct RelOptInfo member relid comments  (jian he <jian.universality@gmail.com>)
Responses Re: struct RelOptInfo member relid comments
List pgsql-hackers


On Fri, May 24, 2024 at 9:09 AM jian he <jian.universality@gmail.com> wrote:
On Fri, May 24, 2024 at 11:14 AM Tom Lane <tgl@sss.pgh.pa.us> wrote:
>
> jian he <jian.universality@gmail.com> writes:
> > imho, the above comment is not very helpful.
> > we should say more about what kind of information relid says about a base rel?
>
> "Relid" is defined at the very top of the file:
>
> /*
>  * Relids
>  *              Set of relation identifiers (indexes into the rangetable).
>  */
> typedef Bitmapset *Relids;
>
> Repeating that everyplace the term "relid" appears would not be
> tremendously helpful.
>

`Index relid;`
is a relation identifier, a base rel's rangetable index.

Does the above description make sense?


BTW, I found several occurrences of "base+OJ", but I cannot find the
explanation of "OJ" or the "OJ" Acronyms.


OJ is an outer join, AFAIU. OJ's have their own relids. If you are wondering why not all joins - I think inner joins need not be tracked as separated relations in parse tree, but OJ's need to be.

--
Best Wishes,
Ashutosh Bapat

pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: Cleaning up perl code
Next
From: Tom Lane
Date:
Subject: Re: struct RelOptInfo member relid comments