rihad <rihad@xxxxxxx> writes: > Hi, we frequently run many query involving XML that use a smallish > temporary file, despite having increased local work_mem in that > transaction to 16GB. FreeBSD's top shows that the memory isn't actually > being used - it remains free. Basically many such queries are run within > a single transaction: > LOG: temporary file: path "base/pgsql_tmp/pgsql_tmp92452.1079", size 166518 > STATEMENT: DELETE FROM "foo" WHERE ((col1, col2, col3) in (select col1, > col2, col3 from foo_xml_v2('<here goes xml-formatted blob>'))) AND > "foo"."col_id" IN ($1, $2, $3, $4, $5, $6, $7, $8, $9) > It looks like increasing work_mem doesn't help. Surely 16GB is enough to > cover all these small temp files? You'd need to provide a lot more detail about what that query is doing for anyone to be able to guess where the temp file usage is coming from. regards, tom lane