Re: Cause of intermittent rangetypes regression test failures
От | Jeff Davis |
---|---|
Тема | Re: Cause of intermittent rangetypes regression test failures |
Дата | |
Msg-id | 1321255938.25053.12.camel@jdavis обсуждение исходный текст |
Ответ на | Cause of intermittent rangetypes regression test failures (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: Cause of intermittent rangetypes regression test failures
|
Список | pgsql-hackers |
On Sun, 2011-11-13 at 15:38 -0500, Tom Lane wrote: > If the table has been analyzed, then the > most_common_values array for column ir will consist of > {empty} > which is entirely correct since that value accounts for 16% of the > table. And then, when mcv_selectivity tries to estimate the selectivity > of the << condition, it applies range_before to the empty range along > with the int4range(100,500) value, and range_before spits up. > > I think this demonstrates that the current definition of range_before is > broken. It is not reasonable for it to throw an error on a perfectly > valid input ... at least, not unless you'd like to mark it VOLATILE so > that the planner will not risk calling it. > > What shall we have it do instead? We could have it return NULL, I suppose. I was worried that that would lead to confusion between NULL and the empty range, but it might be better than marking it VOLATILE. Thoughts, other ideas? Regards,Jeff Davis
В списке pgsql-hackers по дате отправления: