Re: wrong output in dump of rules with old values of row type columns

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Timur Khanjanov <intel@intrans.baku.az>
Cc: pgsql-bugs@lists.postgresql.org
Date: 2022-01-12T15:08:45Z
Lists: pgsql-bugs
Timur Khanjanov <intel@intrans.baku.az> writes:
> create table test(a int);
> create table test_log(old test);
> create rule del as on delete to test do insert into test_log values(old);

As a workaround you could write it as

create rule del as on delete to test do insert into test_log select old;

which will reverse-list as

ON DELETE TO test DO  INSERT INTO test_log (old)  SELECT old.*::test AS old

Looks like we need to apply the same hack in VALUES lists.

			regards, tom lane



Commits

  1. Fix ruleutils.c's dumping of whole-row Vars in more contexts.