mirror of
https://github.com/postgres/postgres.git
synced 2026-05-28 04:35:45 -04:00
bufmgr: Return early in ScheduleBufferTagForWriteback() if fsync=off
As pg_flush_data() doesn't do anything with fsync disabled, there's no point in tracking the buffer for writeback. Arguably the better fix would be to change pg_flush_data() to flush data even with fsync off, but that's a behavioral change, whereas this is just a small optimization. Reviewed-by: Heikki Linnakangas <hlinnaka@iki.fi> Reviewed-by: Noah Misch <noah@leadboat.com> Discussion: https://postgr.es/m/1f6b50a7-38ef-4d87-8246-786d39f46ab9@iki.fi
This commit is contained in:
parent
c01fd93088
commit
488f826c72
1 changed files with 6 additions and 1 deletions
|
|
@ -5899,7 +5899,12 @@ ScheduleBufferTagForWriteback(WritebackContext *wb_context, IOContext io_context
|
|||
{
|
||||
PendingWriteback *pending;
|
||||
|
||||
if (io_direct_flags & IO_DIRECT_DATA)
|
||||
/*
|
||||
* As pg_flush_data() doesn't do anything with fsync disabled, there's no
|
||||
* point in tracking in that case.
|
||||
*/
|
||||
if (io_direct_flags & IO_DIRECT_DATA ||
|
||||
!enableFsync)
|
||||
return;
|
||||
|
||||
/*
|
||||
|
|
|
|||
Loading…
Reference in a new issue