Commit e587e2e3 authored by Heikki Linnakangas's avatar Heikki Linnakangas

Make the comments more clear on the fact that UpdateFullPageWrites() is not

safe to call concurrently from multiple processes.
parent 7714c638
......@@ -8442,6 +8442,9 @@ XLogReportParameters(void)
/*
* Update full_page_writes in shared memory, and write an
* XLOG_FPW_CHANGE record if necessary.
*
* Note: this function assumes there is no other process running
* concurrently that could update it.
*/
void
UpdateFullPageWrites(void)
......@@ -8452,8 +8455,8 @@ UpdateFullPageWrites(void)
* Do nothing if full_page_writes has not been changed.
*
* It's safe to check the shared full_page_writes without the lock,
* because we can guarantee that there is no concurrently running
* process which can update it.
* because we assume that there is no concurrently running process
* which can update it.
*/
if (fullPageWrites == Insert->fullPageWrites)
return;
......@@ -8490,7 +8493,6 @@ UpdateFullPageWrites(void)
XLogInsert(RM_XLOG_ID, XLOG_FPW_CHANGE, &rdata);
}
if (!fullPageWrites)
{
LWLockAcquire(WALInsertLock, LW_EXCLUSIVE);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment