On Tue, Mar 9, 2021 at 6:03 PM Tom Lane <t...@sss.pgh.pa.us> wrote: > Radoslav Nedyalkov <rnedyal...@gmail.com> writes: > > Occasionally we get bad queries on our db that consume a lot of memory. > > These typically are full joins by mistake or just too large result sets. > > My understanding is these should go to a temp file but apparently memory > > allocation is preferred. > > Perhaps the accumulation is happening on the client side? libpq doesn't > have any provision for spilling a result set to disk. > > If that's it, you could consider revising your application to read results > row-at-a-time, although that might require a good deal of effort. > > https://www.postgresql.org/docs/current/libpq-single-row-mode.html > > regards, tom lane >
Ah, I named it result set wrongly perhaps. These are queries , part of a larger ETL function or statement which at the end just write to a table. The huge join is an intermediate step. So I'm still wondering. Thanks and regards, Rado