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