Re: execution plan is wrong, or the query ?

Поиск
Список
Период
Сортировка
От Alex Burkoff
Тема Re: execution plan is wrong, or the query ?
Дата
Msg-id E3E0FC08A807464C8DF38036F52A78FA035E5D1F@mbx4.jiveland.com
обсуждение исходный текст
Ответ на Re: execution plan is wrong, or the query ?  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-general
Upgrade to 9.2.2 totally fixed the issue. Thanks again!

________________________________________
From: Tom Lane [tgl@sss.pgh.pa.us]
Sent: Tuesday, December 11, 2012 9:10 AM
To: Alex Burkoff
Cc: pgsql-general@postgresql.org
Subject: Re: [GENERAL] execution plan is wrong, or the query ?

Alex Burkoff <alex.burkoff@jivesoftware.com> writes:
> I think I am just looking for an opinion on fundamentals. Can WHERE clause impact an OUTER JOIN ?

Sure.  I noticed for instance that your query had some outer joins that
were simplified to plain joins as a result of strict WHERE clauses above
them.  That's not incorrect.

> What I am seeing is that on 9.2 rows from the joined table are restricted prior to joining them with the rest
> of the tables, and that leads to incorrect results. I have noticed such behaviour only when CASE is used
> in the WHERE clause - straight text comparison does produce correct results.

Oh?  Hm, I wonder whether you are needing this fix:
http://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=72a4231f0c80f213a4fa75356dc3c6b7c7419059
Although that bug exists in some form back to 7.4, 9.2 had a more
obvious form of the disease, which is what led to its diagnosis.
If you're not running 9.2.2, give that a try and see if it's better.

                        regards, tom lane


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

Предыдущее
От: Alejandro Carrillo
Дата:
Сообщение: Read recover rows
Следующее
От: Adrian Klaver
Дата:
Сообщение: Re: Read recover rows