Re: BUG #8117: simple but huge query infinite execution time
В списке pgsql-bugs по дате отправления:
| От | Tom Lane |
|---|---|
| Тема | Re: BUG #8117: simple but huge query infinite execution time |
| Дата | |
| Msg-id | 24342.1366902773@sss.pgh.pa.us обсуждение исходный текст |
| Ответ на | BUG #8117: simple but huge query infinite execution time (haddock@mail.ru) |
| Список | pgsql-bugs |
haddock@mail.ru writes:
> query has the following scheme
> SELECT
> regexp_matches('...',' (\d+)\:','g'),
> regexp_matches('...','\:([\d\.]+)','g')
I'm not sure what you're expecting this to do, but what it will actually
do is produce a number of rows equal to the least common multiple of the
periods of the two set-returning functions. In this example it seems
the first call produces 2510 rows and the second 2507 rows. Those
numbers have no factors in common, so you get 6292570 rows, the same as
if you'd written "select * from regexp_matches(...), regexp_matches(...)".
In short, I see no bug here. The behavior of queries with multiple SRFs
in the same targetlist is a bit dubious, but we're not going to change
it, except perhaps by deprecating such usages altogether.
regards, tom lane
В списке pgsql-bugs по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера