From: | Simon Riggs <simon(at)2ndQuadrant(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Robert Haas <robertmhaas(at)gmail(dot)com>, Jim Nasby <jim(at)nasby(dot)net>, Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>, Daniel Farina <daniel(at)heroku(dot)com>, Merlin Moncure <mmoncure(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Removing freelist (was Re: Should I implement DROP INDEX CONCURRENTLY?) |
Date: | 2012-01-24 15:07:07 |
Message-ID: | CA+U5nMJd35FaMGZxYkXRG+vP4C16=ESn0Zq714e1PAsPw0ZYBA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Mon, Jan 23, 2012 at 4:01 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> The real
> problem there is that BufFreelistLock is also used to protect the
> clock sweep pointer.
Agreed
> I think basically we gotta find a way to allow
> multiple backends to run clock sweeps concurrently. Or else fix
> things so that the freelist never (well, hardly ever) runs dry.
Agreed.
The only question is what do we do now. I'm happy with the thought of
jam tomorrow, I'd like to see some minor improvements now, given that
when we say "we'll do that even better in the next release" it often
doesn't happen. Which is where those patches come in.
I've posted an improved lock wait analysis patch and have scheduled
some runs on heavily used systems to see what this tells us. Results
from live machines also greatly appreciated, since test systems seem
likely to be inappropriate tests. Patch copied here again.
This is a key issue since RAM is cheap enough now that people are
swamped by it, so large shared_buffers are very common.
--
Simon Riggs http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | Simon Riggs | 2012-01-24 15:15:31 | Re: Page Checksums |
Previous Message | Jeff Janes | 2012-01-24 15:04:41 | Re: Removing freelist (was Re: Should I implement DROP INDEX CONCURRENTLY?) |