Re: problem with RETURNING and update row movement
Amit Langote <amitlangote09@gmail.com>
From: Amit Langote <amitlangote09@gmail.com>
To: Etsuro Fujita <etsuro.fujita@gmail.com>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2020-06-14T13:48:12Z
Lists: pgsql-hackers
On Sun, Jun 14, 2020 at 4:23 PM Etsuro Fujita <etsuro.fujita@gmail.com> wrote: > Hi Amit-san, > > On Thu, Jun 11, 2020 at 6:10 PM Amit Langote <amitlangote09@gmail.com> wrote: > > Reproduction steps: > > > > create table foo (a int, b int) partition by list (a); > > create table foo1 (c int, b int, a int); > > alter table foo1 drop c; > > alter table foo attach partition foo1 for values in (1); > > create table foo2 partition of foo for values in (2); > > create table foo3 partition of foo for values in (3); > > create or replace function trigfunc () returns trigger language > > plpgsql as $$ begin new.b := 2; return new; end; $$; > > create trigger trig before insert on foo2 for each row execute > > function trigfunc(); > > insert into foo values (1, 1), (2, 2), (3, 3); > > update foo set a = 2 from (values (1), (2), (3)) s(x) where a = s.x returning *; > > ERROR: attribute 5 of type record has wrong type > > DETAIL: Table has type record, but query expects integer. > > Reproduced. Could you add the patch to the next commitfest so that it > doesn't get lost? Done. Thank you for taking a look. https://commitfest.postgresql.org/28/2597/ -- Amit Langote EnterpriseDB: http://www.enterprisedb.com
Commits
-
Fix bugs in RETURNING in cross-partition UPDATE cases.
- a71cfc56bf60 13.3 landed
- 3fb93103a9fd 12.7 landed
- 27835b547664 11.12 landed
-
postgres_fdw: Clean up handling of system columns.
- da7d44b627ba 9.6.0 cited