"Henry - Zen Search SA" <henry(at)zen(dot)co(dot)za> writes:
> The problem was this: a silly SQL error (misuse of OR and missing
> parentheses) resulted in a massive result set which resulted in OOM - if
> the select is run manually (no funny "out of balance" strings).
> If it's run in a function (which uses a FOR loop, which uses implicit
> cursors), then the "out of balance" string is returned for the TEXT column
> almost immediately.
Is it possible the "out of balance" is actually an expected result from
the query --- ie, it's in a table somewhere? In the first case you'd
not see it because of the OOM failure, but with a cursor you'd be able
to process (at least some of) the query output ...
regards, tom lane