From: | Mel Gorman <mgorman(at)suse(dot)de> |
---|---|
To: | Dave Chinner <david(at)fromorbit(dot)com> |
Cc: | Andres Freund <andres(at)2ndquadrant(dot)com>, Josh Berkus <josh(at)agliodbs(dot)com>, Kevin Grittner <kgrittn(at)ymail(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>, Robert Haas <robertmhaas(at)gmail(dot)com>, Joshua Drake <jd(at)commandprompt(dot)com>, James Bottomley <James(dot)Bottomley(at)hansenpartnership(dot)com>, Claudio Freire <klaussfreire(at)gmail(dot)com>, Greg Stark <stark(at)mit(dot)edu>, Jim Nasby <jim(at)nasby(dot)net>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, "lsf-pc(at)lists(dot)linux-foundation(dot)org" <lsf-pc(at)lists(dot)linux-foundation(dot)org>, Magnus Hagander <magnus(at)hagander(dot)net> |
Subject: | Re: [Lsf-pc] Linux kernel impact on PostgreSQL performance |
Date: | 2014-01-15 11:05:25 |
Message-ID: | 20140115110525.GH4963@suse.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Wed, Jan 15, 2014 at 09:44:21AM +0000, Mel Gorman wrote:
> > <SNIP>
> > Hmmmm. What happens if the process crashes after pinning the dirty
> > pages? How do we even know what process pinned the dirty pages so
> > we can clean up after it? What happens if the same page is pinned by
> > multiple processes? What happens on truncate/hole punch if the
> > partial pages in the range that need to be zeroed and written are
> > pinned? What happens if we do direct IO to a range with pinned,
> > unflushable pages in the page cache?
> >
>
> Proposal: A process with an open fd can hint that pages managed by this
> inode will have dirty-sticky pages. Pages will be ignored by
> dirty background writing unless there is an fsync call or
> dirty page limits are hit. The hint is cleared when no process
> has the file open.
>
I'm still processing the rest of the thread and putting it into my head
but it's at least clear that this proposal would only cover the case where
large temporarily files are created that do not necessarily need to be
persisted. They still have cases where the ordering of writes matter and
the kernel cleaning pages behind their back would lead to corruption.
--
Mel Gorman
SUSE Labs
From | Date | Subject | |
---|---|---|---|
Next Message | Hannu Krosing | 2014-01-15 11:16:50 | Re: [Lsf-pc] Linux kernel impact on PostgreSQL performance |
Previous Message | Pavel Stehule | 2014-01-15 10:57:23 | Re: plpgsql.warn_shadow |