Re: Incorrect messages emitted from pgoutput when using column lists

Поиск
Список
Период
Сортировка
От Amit Kapila
Тема Re: Incorrect messages emitted from pgoutput when using column lists
Дата
Msg-id CAA4eK1KpMEQ4P7OVUeWO+ghWYAzmOuwaLvwfuxnKVsTZkVj7EQ@mail.gmail.com
обсуждение исходный текст
Ответ на RE: Incorrect messages emitted from pgoutput when using column lists  ("houzj.fnst@fujitsu.com" <houzj.fnst@fujitsu.com>)
Ответы RE: Incorrect messages emitted from pgoutput when using column lists
Список pgsql-bugs
On Fri, Nov 25, 2022 at 8:16 AM houzj.fnst@fujitsu.com
<houzj.fnst@fujitsu.com> wrote:
>
> I think the reason is that we didn't filter the column when sending the old
> tuple in pgoutput. We thought that the old tuple won't include columns that not
> in RI, but it seems it will still be null values for such columns in the old
> tuple.
>

Yes, that is correct. We do fill null values for non-replica identity
columns in the old tuple. See ExtractReplicaIdentity.

> So, I think we'd better filter the column for old tuple as well.
>

Your fix looks correct to me though I haven't tested it yet.

Can we think of writing a test case using
pg_logical_slot_peek_binary_changes() similar to what we have in
020_messages.pl?

-- 
With Regards,
Amit Kapila.



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

Предыдущее
От: Joel Mukuthu
Дата:
Сообщение: Re: Unexpected behaviour of a RAISE statement in an IMMUTABLE function
Следующее
От: "David G. Johnston"
Дата:
Сообщение: Bug or intentionally under-documented "\c databasename;" behavior?