From: | Thomas Munro <thomas(dot)munro(at)gmail(dot)com> |
---|---|
To: | Michael Brown <michael(dot)brown(at)discourse(dot)org> |
Cc: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: fdatasync performance problem with large number of DB files |
Date: | 2021-03-10 23:30:56 |
Message-ID: | CA+hUKGLgb4ZMV6xQrZb8N5ax0g+EZR=b0dtg9pPJmsBtaun1-A@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Thu, Mar 11, 2021 at 11:38 AM Thomas Munro <thomas(dot)munro(at)gmail(dot)com> wrote:
> On Thu, Mar 11, 2021 at 11:01 AM Michael Brown
> <michael(dot)brown(at)discourse(dot)org> wrote:
> > * is there a knob missing we can configure?
> > * can we get an opt-in knob to use a single sync() call instead of a
> > recursive fsync()?
> > * would you be open to merging a patch providing said knob?
> > * is there something else we missed?
>
> As discussed on that other thread, I don't think sync() is an option
> (it doesn't wait on all OSes or in the standard and it doesn't report
> errors). syncfs() on Linux 5.8+ looks like a good candidate though,
> and I think we'd consider a patch like that. I mean, I even posted
> one[1] in that other thread. There will of course be cases where
> that's slower (small database sharing filesystem with other software
> that has a lot of dirty data to write back).
Thinking about this some more, if you were to propose a patch like
that syncfs() one but make it a configurable option, I'd personally be
in favour of trying to squeeze it into v14. Others might object on
commitfest procedural grounds, I dunno, but I think this is a real
operational issue and that's a fairly simple and localised change.
I've run into a couple of users who have just commented that recursive
fsync() code out!
I'd probably make it an enum-style GUC, because I intend to do some
more work on my "precise" alternative, though not in time for this
release, and it could just as well be an option too.
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2021-03-11 00:16:10 | Re: fdatasync performance problem with large number of DB files |
Previous Message | Tom Lane | 2021-03-10 23:24:53 | Re: libpq debug log |