Hi, On Thu, Sep 24, 2009 at 7:41 PM, Heikki Linnakangas <heikki.linnakan...@enterprisedb.com> wrote: > Fujii Masao wrote: >> In the 'replication-orig' branch, walreceiver fsyncs the previous XLOG >> file after receiving new XLOG records before writing them. This would >> increase the backend's waiting time for replication in synchronous case. >> The walreceiver should fsync the XLOG file after sending ACK (if needed) >> before receiving the next XLOG records? > > I don't follow. Wareceiver does fsync the file just after writing it if > the fsync_requested flag was set in the message. Surely that would be > set in synchronous mode, that's what the flag is for, right?
That's the case where fsync is issued at the end of segment. In this case, since the fsync_requested flag is not set, walreceiver doesn't perform fsync in that loop. After the next XLOG arrives, walreceiver does fsync to the previous file, in XLogWalRcvWrite(). Am I missing something? Regards, -- Fujii Masao NIPPON TELEGRAPH AND TELEPHONE CORPORATION NTT Open Source Software Center -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers