On 11/24/2015 08:14 PM, Andres Freund wrote:
> On 2015-11-24 13:09:58 -0600, Kevin Grittner wrote:
>> On Tue, Nov 24, 2015 at 12:48 PM, Marcin Mańk <marcin.mank@gmail.com> wrote:
>>
>>> if SSDs have 4kB/8kB sectors, and we'd make the Postgres page
>>> size equal to the SSD page size, do we still need
>>> full_page_writes?
>>
>> If an OS write of the PostgreSQL page size has no chance of being
>> partially persisted (a/k/a torn), I don't think full page writes
>> are needed. That seems likely to be true if pg page size matches
>> SSD sector size.
>
> At the very least it also needs to match the page size used by the
> OS (4KB on x86).
Right. I find this possibility (when the OS and SSD page sizes match)
interesting, exactly because it might make the storage resilient to torn
pages.
>
> But be generally wary of turning of fpw's if you use replication.
> Not having them often turns a asynchronously batched write workload
> into one containing a lot of synchronous, single threaded, reads.
> Even with SSDs that can very quickly lead to not being able to keep
> up with replay anymore.
>
I don't immediately see why that would happen? Can you elaborate?
regards
--
Tomas Vondra http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services