PG function with pseudotype "anyelement" for IN, OUT parameter showswrong behaviour.

Поиск
Список
Период
Сортировка
От Prabhat Sahu
Тема PG function with pseudotype "anyelement" for IN, OUT parameter showswrong behaviour.
Дата
Msg-id CANEvxPqDDTmp+ZWewSuhYdhaDH_DgD3XZsxY7Pw6ncE3dZNaSg@mail.gmail.com
обсуждение исходный текст
Ответы Re: PG function with pseudotype "anyelement" for IN, OUT parametershows wrong behaviour.  (Pavel Stehule <pavel.stehule@gmail.com>)
Список pgsql-hackers
Hi All,

Please check the below scenario, with pseudotype "anyelement" for IN, OUT parameter and the RETURN record in a function.

postgres=# create table tab1(c1 int, c2 int, c3 timestamp) ;
CREATE TABLE
postgres=# CREATE OR REPLACE FUNCTION func_any(IN anyelement, IN anyelement, OUT v1 anyelement, OUT v2 anyelement)
RETURNS record
AS
$$
BEGIN
  SELECT $1 + 1, $2 + 1 into v1, v2;
  insert into tab1 values(v1, v2, now());
END;
$$
language 'plpgsql';
CREATE FUNCTION
postgres=# SELECT (func_any(1, 2)).*;
 v1 | v2
----+----
  2 |  3
(1 row)

postgres=# select * from tab1;
 c1 | c2 |             c3            
----+----+----------------------------
  2 |  3 | 2020-05-30 19:26:32.036924
  2 |  3 | 2020-05-30 19:26:32.036924
(2 rows)

I hope, the table "tab1" should have only a single record, but we are able to see 2 records in tab1.

--

With Regards,
Prabhat Kumar Sahu
EnterpriseDB: http://www.enterprisedb.com

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

Предыдущее
От: Adrien Nayrat
Дата:
Сообщение: Re: pg_dump fail to not dump public schema orders
Следующее
От: Pavel Stehule
Дата:
Сообщение: Re: proposal: possibility to read dumped table's name from file