Обсуждение: bushy plans

Поиск
Список
Период
Сортировка

bushy plans

От
Bruce Momjian
Дата:
Can someone comment on what Bushy plans do in the optimizer, and whether
the code has any value?

--  Bruce Momjian                        |  http://www.op.net/~candle maillist@candle.pha.pa.us            |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


Re: [HACKERS] bushy plans

От
Vadim Mikheev
Дата:
Bruce Momjian wrote:
> 
> Can someone comment on what Bushy plans do in the optimizer, and whether
> the code has any value?

No, currently. But please don't remove them. It would be nice
to have bushy plans implemented.

Vadim


Re: [HACKERS] bushy plans

От
Bruce Momjian
Дата:
> Can someone comment on what Bushy plans do in the optimizer, and whether
> the code has any value?

If anyone wants to research this, the driving field appears to be
in JoinInfo called 'inactive', soon to be called bushy_inactive.


--  Bruce Momjian                        |  http://www.op.net/~candle maillist@candle.pha.pa.us            |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


Re: [HACKERS] bushy plans

От
Bruce Momjian
Дата:
> Bruce Momjian wrote:
> > 
> > Can someone comment on what Bushy plans do in the optimizer, and whether
> > the code has any value?
> 
> No, currently. But please don't remove them. It would be nice
> to have bushy plans implemented.

Please tell me what they are supposed to do.  I can get it working, I
think.  I will not remove it.  I have ifdef'ed it, though.  If you tell
me what it is, I will check it to see if it works.

--  Bruce Momjian                        |  http://www.op.net/~candle maillist@candle.pha.pa.us            |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


Re: [HACKERS] bushy plans

От
Vadim Mikheev
Дата:
Bruce Momjian wrote:
> 
> > Can someone comment on what Bushy plans do in the optimizer, and whether
> > the code has any value?
> 
> If anyone wants to research this, the driving field appears to be
> in JoinInfo called 'inactive', soon to be called bushy_inactive.

No - BushyPlanFlag.

Vadim


Re: [HACKERS] bushy plans

От
Bruce Momjian
Дата:
> Bruce Momjian wrote:
> > 
> > > Can someone comment on what Bushy plans do in the optimizer, and whether
> > > the code has any value?
> > 
> > If anyone wants to research this, the driving field appears to be
> > in JoinInfo called 'inactive', soon to be called bushy_inactive.
> 
> No - BushyPlanFlag.

Yes, that enables Bushy Plans, but the work of bushy plans seems to be
driven by that field.

--  Bruce Momjian                        |  http://www.op.net/~candle maillist@candle.pha.pa.us            |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


Re: [HACKERS] bushy plans

От
Vadim Mikheev
Дата:
Bruce Momjian wrote:
> 
> > Bruce Momjian wrote:
> > >
> > > Can someone comment on what Bushy plans do in the optimizer, and whether
> > > the code has any value?
> >
> > No, currently. But please don't remove them. It would be nice
> > to have bushy plans implemented.
> 
> Please tell me what they are supposed to do.  I can get it working, I
> think.  I will not remove it.  I have ifdef'ed it, though.  If you tell
> me what it is, I will check it to see if it works.

It doesn't work (failed assertion).

Well, currently both geqo and old optimizer produces
left-sided plans: inner relation of an join is always
_base_ relation (not join relation). In bushy plans
both outer and inner relations may be join ones.
~1.5 - 2 years ago I added right-sided plans:
outer relation is base, inner relation may be join.
Sometimes right-sided plans are 30% faster than left-sided.
Bushy plans could be more faster...
BTW, I broke execution of right-sided plans ~ 1 year ago
while implementing subqueries (near materialization node)
and still have no time to fix it (seems no one except me
used them so I didn't worry about this -:)).

Vadim


Re: [HACKERS] bushy plans

От
Bruce Momjian
Дата:
> > Please tell me what they are supposed to do.  I can get it working, I
> > think.  I will not remove it.  I have ifdef'ed it, though.  If you tell
> > me what it is, I will check it to see if it works.
> 
> It doesn't work (failed assertion).
> 
> Well, currently both geqo and old optimizer produces
> left-sided plans: inner relation of an join is always
> _base_ relation (not join relation). In bushy plans
> both outer and inner relations may be join ones.
> ~1.5 - 2 years ago I added right-sided plans:
> outer relation is base, inner relation may be join.
> Sometimes right-sided plans are 30% faster than left-sided.
> Bushy plans could be more faster...
> BTW, I broke execution of right-sided plans ~ 1 year ago
> while implementing subqueries (near materialization node)
> and still have no time to fix it (seems no one except me
> used them so I didn't worry about this -:)).

This explaination helps greatly.  This clears up what is happening in
the code.  I will keep the bushy stuff, and see if I can get it working,
though if the problem is outside of the optimizer, I will have trouble.

--  Bruce Momjian                        |  http://www.op.net/~candle maillist@candle.pha.pa.us            |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


Re: [HACKERS] bushy plans

От
Bruce Momjian
Дата:
One more thing.  The optimizer was in terrible shape.  It is just like
the parser and rewrite system before someone went through those and
cleaned them up and fixed the bugs.

We get few reports of optimizer problems, so I was unaware of just how
broken it was.

--  Bruce Momjian                        |  http://www.op.net/~candle maillist@candle.pha.pa.us            |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


Re: [HACKERS] bushy plans

От
Vadim Mikheev
Дата:
Bruce Momjian wrote:
> 
> > BTW, I broke execution of right-sided plans ~ 1 year ago
> > while implementing subqueries (near materialization node)
> > and still have no time to fix it (seems no one except me
> > used them so I didn't worry about this -:)).
> 
> This explaination helps greatly.  This clears up what is happening in
> the code.  I will keep the bushy stuff, and see if I can get it working,
> though if the problem is outside of the optimizer, I will have trouble.
^^^^^^^^^^^^^^^^^^^^^^^^
I'll help with executor if you'll fix bushy plans generation.

Vadim