Search Postgresql Archives

Re: "Missing" column in Postgres logical replication update message

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks for the response, Tom.  I think that's exactly what's going on here.

On Wed, Aug 3, 2022 at 11:28 AM Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
Adrian Klaver <adrian.klaver@xxxxxxxxxxx> writes:
> On 8/3/22 08:09, Kevin Martin wrote:
>> I thought that any UPDATE message in the replication logs is designed to
>> include all values for all columns.  Is that correct?

Buried deep in the wire protocol specification is this bit:

----
The following message parts are shared by the above messages.

    TupleData

    Int16
        Number of columns.

    Next, one of the following submessages appears for each column (except generated columns):

    ...

    Byte1('u')
        Identifies unchanged TOASTed value (the actual value is not sent).
----

So that right there is two cases where we omit data for a column.
I suspect the "unchanged toasted data" case is what matters for
your purposes.  Maybe you've found some code that fails to implement
that correctly?

                        regards, tom lane

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux