Re: BUG #8329: UPDATE x SET x.y = x.y + z does not work in PL/pgSQL

Поиск
Список
Период
Сортировка
От Petr Chmelar
Тема Re: BUG #8329: UPDATE x SET x.y = x.y + z does not work in PL/pgSQL
Дата
Msg-id 51F17357.2030103@fit.vutbr.cz
обсуждение исходный текст
Ответ на Re: BUG #8329: UPDATE x SET x.y = x.y + z does not work in PL/pgSQL  (Petr Chmelar <chmelarp@fit.vutbr.cz>)
Список pgsql-bugs
Dear Briklen and Pavel,

herewith I attached the weird function and tables dumped, I tried to simplify it. See the
XXX THIS IS IT, does not work even when ... + 1000000 XXX
comment in the function, please.

I hope you can reproduce the bug. I also reinstalled the database and made some other things, but the function seems not working. I still hope this is my mistake but it works for me in the console... :(

Cheers,
Petr

On 24.7.2013 21:40, Petr Chmelar wrote:

Dear Briklen and Pavel,

Yes, the z. is a typo, it should be z.z ... I can send the complete query and tables tomorrow, also I'll try to make it simpler (the function is about 300 lines).

Thanks for the early answers,

Petr


Dne 24.07.2013 17:14 napsal uživatel bricklen:

On Wed, Jul 24, 2013 at 7:45 AM, <chmelarp@fit.vutbr.cz> wrote:
The following bug has been logged on the website:

Bug reference:      8329
Logged by:          Petr
Email address:      chmelarp@fit.vutbr.cz
PostgreSQL version: 9.2.4
Operating system:   Fedora x64
Description:

Hi there,
we have an issue - if I run a query from a console, it runs OK. When it is
run using EXECUTE in an PL/pgSQL function, it sets NULL. The simplest
version of the query is like this:
UPDATE x
SET x.y = x.y + z.
FROM (SELECT z) as Z
WHERE ... ;


If I don't use the "+" in the SET command, it works OK. The whle query is
quite complex, but OK in a console. If you need the query an tables..., mail
me, please. I can't make it public.

Can you reduce it to a simpler test case without the details you are not able to show?  Statistically it is more likely there is an error in your plpgsql function than in postgres itself.
Also, is the "z." a typo, or is there really a dot after the "z"?


Вложения

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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: pgsql 8.4 "not" + "is contained by" operators return wrong result
Следующее
От: amutu@amutu.com
Дата:
Сообщение: BUG #8335: trim() un-document behaviour