Re: Checkpointer split has broken things dramatically (was Re: DELETE vs TRUNCATE explanation)
Craig Ringer <ringerc@ringerc.id.au>
From: Craig Ringer <ringerc@ringerc.id.au>
To: Andrew Dunstan <andrew@dunslane.net>
Cc: David Fetter <david@fetter.org>, Tom Lane <tgl@sss.pgh.pa.us>, Robert Haas <robertmhaas@gmail.com>, Jeff Janes <jeff.janes@gmail.com>, pgsql-hackers <pgsql-hackers@postgresql.org>, Daniel Farina <daniel@heroku.com>, "Harold A. Giménez" <harold.gimenez@gmail.com>
Date: 2012-07-23T13:58:47Z
Lists: pgsql-hackers, pgsql-performance
On 07/23/2012 09:47 PM, Andrew Dunstan wrote: > > On 07/23/2012 09:04 AM, Craig Ringer wrote: >> On 07/23/2012 08:29 PM, Andrew Dunstan wrote: >> >>> I'm not sure how you automate testing a pull-the-plug scenario. >> >> fire up kvm or qemu instances, then kill 'em. >> >> > > Yeah, maybe. Knowing just when to kill them might be an interesting > question. > > I'm also unsure how much nice cleanup the host supervisor does in such > cases. VMs are wonderful things, but they aren't always the answer. > I'm not saying they aren't here, just wondering. I've done some testing with this, and what it boils down to is that any data that made it to the virtual disk is persistent after a VM kill. Anything in dirty buffers on the VM guest is lost. It's a very close match for real hardware. I haven't tried to examine the details of the handling of virtualised disk hardware write caches, but disks should be in write-through mode anyway. A `kill -9` will clear 'em for sure, anyway, as the guest has no chance to do any cleanup. One of the great things about kvm and qemu for this sort of testing is that it's just another program. There's very little magic, and it's quite easy to test and trace. I have a qemu/kvm test harness I've been using for another project that I need to update and clean up as it'd be handy for this. It's just a matter of making the time, as it's been a busy few days. -- Craig Ringer
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Scan the buffer pool just once, not once per fork, during relation drop.
- ece01aae4792 9.2.0 cited