On Sat, Dec 24, 2011 at 4:22 PM, Michael Smolsky <sitrash@xxxxxxxxx> wrote: > work_mem = 128MB (tried 257MB, didn't change anything) This is probably your problem. Without an EXPLAIN output, I cannot be sure, but 'work_mem' is not the total amount of memory a query can use, it's the amount of memory it can use for *one* sort/hash/whatever operation. A complex query can have many of those, so your machine is probably swapping due to excessive memory requirements. Try *lowering* it. You can do so only for that query, by executing: set work_mem = '8MB'; <your query> -- Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-performance