On 8/23/24 07:33, Koen De Groote wrote:
I'm running this query:
SELECT subname, received_lsn, latest_end_lsn,
last_msg_send_time, last_msg_receipt_time
FROM pg_catalog.pg_stat_subscription;
And "last_msg_send_time" will sometimes be null. All I can find in the
documentation is that this value represents: "Send time of last message
received from origin WAL sender; NULL for parallel apply workers"
But I have no context for what parallel apply workers are or why they
are NULL sometimes and other times not. >
Can anyone explain?
The source has that information:
https://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/backend/replication/logical/applyparallelworker.c;h=e7f7d4c5e4bd3ff63687cb21b84534a05a3962cc;hb=HEAD
The top part explains the process.
As to the time:
/*
* There are three fields in each message received by the parallel apply
* worker: start_lsn, end_lsn and send_time. Because we have updated these
* statistics in the leader apply worker, we can ignore these fields in the
* parallel apply worker (see function LogicalRepApplyLoop).
*/
Regards,
Koen De Groote
--
Adrian Klaver
adrian.klaver@xxxxxxxxxxx