"Matthew Nuzum" <matt.followers@gmail.com> writes:
> Thanks. Other than avoiding using too much sort mem, is there anything else
> I can do to ensure this query doesn't starve other processes for resources?
Not a lot.
> Doing the explain analyze only increases my server load by 1 and seems to
> readily relinquish CPU time, but previously when I had been running a test
> query my server load rose to unacceptable levels.
Interesting. EXPLAIN ANALYZE is going to cause a bunch of
gettimeofday() calls to be inserted ... maybe your kernel takes those as
process preemption points? Seems unlikely, but ...
> FWIW, the explain was run from psql running on the db server, the test query
> the other day was run from one of the webservers. Should I run this on the
> db server to minimize load?
Since it's an insert/select, psql isn't participating in the data flow.
It's not going to matter where the psql process is.
regards, tom lane