Re: DELETE vs TRUNCATE explanation
Andrew Dunstan <andrew@dunslane.net>
From: Andrew Dunstan <andrew@dunslane.net>
To: sthomas@optionshouse.com
Cc: Craig James <cjames@emolecules.com>, Tom Lane <tgl@sss.pgh.pa.us>, Daniel Farina <daniel@heroku.com>, Craig Ringer <ringerc@ringerc.id.au>, "pgsql-performance@postgresql.org" <pgsql-performance@postgresql.org>
Date: 2012-07-11T21:04:39Z
Lists: pgsql-hackers, pgsql-performance
On 07/11/2012 04:47 PM, Shaun Thomas wrote: > On 07/11/2012 03:18 PM, Craig James wrote: > >> It strikes me as a contrived case rather than a use case. What sort of >> app repeatedly fills and truncates a small table thousands of times ... >> other than a test app to see whether you can do it or not? > > Test systems. Any company with even a medium-size QA environment will > have continuous integration systems that run unit tests on a trash > database hundreds or thousands of times through the day. Aside from > dropping/creating the database via template, which would be *really* > slow, truncate is the easiest/fastest way to reset between tests. Why is recreating the test db from a (populated) template going to be slower than truncating all the tables and repopulating from an external source? I had a client who achieved a major improvement in speed and reduction in load by moving to this method of test db setup. cheers andrew
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