Re: Using each rel as both outer and inner for JOIN_ANTI

Поиск
Список
Период
Сортировка
От Ronan Dunklau
Тема Re: Using each rel as both outer and inner for JOIN_ANTI
Дата
Msg-id 4522921.Yh1rdoGEFm@aivenronan
обсуждение исходный текст
Ответ на Re: Using each rel as both outer and inner for JOIN_ANTI  (Richard Guo <guofenglinux@gmail.com>)
Ответы Re: Using each rel as both outer and inner for JOIN_ANTI
Список pgsql-hackers
> Yes, thanks! I was making a big mistake here thinking the executor can
> stop after the first match. That's not true. We need to use each outer
> tuple to find all the matches and mark the corresponding hashtable
> entries. I have updated the patch with the fix.

It looks OK to me.

> > > I think we can basically use the same cost calculation as with anti
> > > joins, since they share the fact that the executor will stop after the
> > > first match. However, there are still some differences. Such as when we
> > > consider the number of tuples that will pass the basic join, I think we
> > > need to use unmatched inner rows, rather than unmatched outer rows.
> > 
> > Due to the fact we cannot just skip at the first match, I'm not sure this
> > works
> > either.
> 
> This is not correct any more since the fact that the executor will stop
> after the first match does not hold true. A brief thought show me that
> we can use the same cost calculation as with right joins.

Once you do that, you should also add test coverage for those new plans. Also 
consider adding a commitfest entry.

Regards,

--
Ronan Dunklau






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

Предыдущее
От: Guillaume Lelarge
Дата:
Сообщение: Re: New committers: Daniel Gustafsson and John Naylor
Следующее
От: Andrey Borodin
Дата:
Сообщение: Re: New committers: Daniel Gustafsson and John Naylor