Re: Bug (8.4beta): FailedAssertion("!(bms_is_subset(relids, qualscope))", File: "initsplan.c", Line: 915)
В списке pgsql-bugs по дате отправления:
| От | Alvaro Herrera |
|---|---|
| Тема | Re: Bug (8.4beta): FailedAssertion("!(bms_is_subset(relids, qualscope))", File: "initsplan.c", Line: 915) |
| Дата | |
| Msg-id | 20090506173851.GG4476@alvh.no-ip.org обсуждение |
| Ответ на | Re: Bug (8.4beta): FailedAssertion("!(bms_is_subset(relids, qualscope))", File: "initsplan.c", Line: 915) (Tom Lane <tgl@sss.pgh.pa.us>) |
| Ответы |
Re: Bug (8.4beta): FailedAssertion("!(bms_is_subset(relids,
qualscope))", File: "initsplan.c", Line: 915)
|
| Список | pgsql-bugs |
Tom Lane wrote: > Oh! What is happening is that to_number(1) is being reduced to constant > NULL, whereupon it concludes that ad_tab_id=to_number(1) is constant > NULL, ergo the EXISTS can never succeed, ergo the entire WHERE is > constant false. > CREATE FUNCTION to_number(integer) RETURNS numeric > LANGUAGE plpgsql IMMUTABLE > AS $_$ > BEGIN > RETURN to_number($1, 'S99999999999999D999999'); > EXCEPTION > WHEN OTHERS THEN > RETURN NULL; > END; > $_$; How can the executor "see through" a plpgsql function definition? Or do you mean that this reduction is being done at execution time? (hmm ... this is what a one-time filter is, now that I think about it?) -- Alvaro Herrera http://www.CommandPrompt.com/ The PostgreSQL Company - Command Prompt, Inc.
В списке pgsql-bugs по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера