Re: Question about pull_up_sublinks_qual_recurse

2023-03-20 Thread Andy Fan
On Sat, Oct 15, 2022 at 3:27 AM Tom Lane wrote: > Andy Fan writes: > > After some more self review, I find my proposal has the following side > > effects. > > Yeah, I do not think this works at all. The discussion of outer join > reordering in optimizer/README says that that doesn't

Re: Question about pull_up_sublinks_qual_recurse

2022-10-17 Thread Andy Fan
Hi Tom: Thanks for your reply! I have self reviewed the below message at 3 different time periods to prevent from too inaccurate replies. It may be more detailed than it really needed, but it probably can show where I am lost. On Sat, Oct 15, 2022 at 3:27 AM Tom Lane wrote: > > If the

Re: Question about pull_up_sublinks_qual_recurse

2022-10-14 Thread Tom Lane
Andy Fan writes: > After some more self review, I find my proposal has the following side > effects. Yeah, I do not think this works at all. The mechanism as it stands right now is that we can insert pulled-up semijoins above j->larg if they only need variables from relations in j->larg, and

Re: Question about pull_up_sublinks_qual_recurse

2022-10-14 Thread Andy Fan
> > Later we tried to pull up the EXISTS sublink to t1 OR t2 *separately*, > since > this subselect referenced to t1 *AND* t2, so we CAN'T pull up the > sublink. I > am thinking why we have to pull up it t1 OR t2 rather than JoinExpr(t1, > t2), > I think the latter one is better. > After some

Question about pull_up_sublinks_qual_recurse

2022-10-13 Thread Andy Fan
Hi: When I was working on another task, the following case caught my mind. create table t1(a int, b int, c int); create table t2(a int, b int, c int); create table t3(a int, b int, c int); explain (costs off) select * from t1 where exists (select 1 from t2 where exists (select 1