From 3ceb44fa0a96231202b8192dff2f0e517ad534fc Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 3 Jun 2010 23:00:14 +0000 Subject: [PATCH] Adjust misleading comment in walsender.c. We try to send all WAL data that's been written out from shared memory, but the previous phrasing might be read to say that we send only what's been fsync'd. --- src/backend/replication/walsender.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/backend/replication/walsender.c b/src/backend/replication/walsender.c index e337e7e5a6..7422f76251 100644 --- a/src/backend/replication/walsender.c +++ b/src/backend/replication/walsender.c @@ -29,7 +29,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/replication/walsender.c,v 1.25 2010/06/03 22:17:32 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/replication/walsender.c,v 1.26 2010/06/03 23:00:14 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -641,7 +641,7 @@ XLogRead(char *buf, XLogRecPtr recptr, Size nbytes) } /* - * Read up to MAX_SEND_SIZE bytes of WAL that's been written (and flushed), + * Read up to MAX_SEND_SIZE bytes of WAL that's been written to disk, * but not yet sent to the client, and send it. * * msgbuf is a work area in which the output message is constructed. It's @@ -662,7 +662,11 @@ XLogSend(char *msgbuf, bool *caughtup) Size nbytes; WalDataMessageHeader msghdr; - /* Attempt to send all records flushed to the disk already */ + /* + * Attempt to send all data that's already been written out from WAL + * buffers (note it might not yet be fsync'd to disk). We cannot go + * further than that given the current implementation of XLogRead(). + */ SendRqstPtr = GetWriteRecPtr(); /* Quick exit if nothing to do */ @@ -744,7 +748,7 @@ XLogSend(char *msgbuf, bool *caughtup) pq_putmessage('d', msgbuf, 1 + sizeof(WalDataMessageHeader) + nbytes); - /* Flush pending output */ + /* Flush pending output to the client */ if (pq_flush()) return false; -- 2.40.0