fallocate / posix_fallocate for new WAL file creation (etc...) - Mailing list pgsql-hackers

From Jon Nelson
Subject fallocate / posix_fallocate for new WAL file creation (etc...)
Date
Msg-id CAKuK5J0raLwOiKfSh5d8SxtCY2snJAMsfo6RGTBMfcQYB+-faQ@mail.gmail.com
Whole thread Raw
Responses Re: fallocate / posix_fallocate for new WAL file creation (etc...)  (David Fetter <david@fetter.org>)
Re: fallocate / posix_fallocate for new WAL file creation (etc...)  (Robert Haas <robertmhaas@gmail.com>)
List pgsql-hackers
Pertinent to another thread titled
[HACKERS] corrupt pages detected by enabling checksums
I hope to explore the possibility of using fallocate (or
posix_fallocate) for new WAL file creation.

Most modern Linux filesystems support fast fallocate/posix_fallocate,
reducing extent fragmentation (where extents are used) and frequently
offering a pretty significant speed improvement. In my tests, using
posix_fallocate (followed by pg_fsync) is at least 28 times quicker
than using the current method (which writes zeroes followed by
pg_fsync).

I have written up a patch to use posix_fallocate in new WAL file
creation, including configuration by way of a GUC variable, but I've
not contributed to the PostgreSQL project before. Therefore, I'm
fairly certain the patch is not formatted properly or conforms to the
appropriate style guides. Currently, the patch is based on 9.2, and is
quite small in size - 3.6KiB.

Advice on how to proceed is appreciated.

--
Jon



pgsql-hackers by date:

Previous
From: Kyotaro HORIGUCHI
Date:
Subject: Re: Logging of PAM Authentication Failure
Next
From: Tom Lane
Date:
Subject: Re: PostgreSQL 9.3 beta breaks some extensions "make install"