Search Postgresql Archives

Re: fdatasync performance problem with large number of DB files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2021-02-22 5:43 p.m., Tom Lane wrote:
> Michael Brown <michael.brown@xxxxxxxxxxxxx> writes:
>> * is there a knob missing we can configure?
> 
> No.  The trouble with sync() is that per POSIX, it only schedules the
> writes; there's no way to tell when the work has been done.  I see
> that Linux offers stronger promises in this department, but I don't
> think that's very portableTrue, but as mentioned below we're looking for a "this makes sense for
our environment" switch.

> Moreover, even on Linux there's no way to detect whether any of the writes failed.
Ugh. Presumably those would be noticed when the WAL replays? (I'll admit
I'd have to look at the sequence of events and think about it, I don't
know offhand.)

Oh, syncfs() exists but is Linux-specific, again, darn.

> Barring some solution to those problems, we would be unlikely to take
> a patch that uses sync() instead of fsync().
I wouldn't dare to propose outright switching to sync() for everyone,
but a knob we can turn on to say "use sync (or syncfd()) instead" is
what we need, discounting a better solution.

-- 
Michael Brown
Civilized Discourse Construction Kit, Inc.
https://www.discourse.org/





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux