Bruce Momjian <pgman@candle.pha.pa.us> writes:
> Yes, I now think that saving the SET commands that are ignored in a
> transaction and running them _after_ the transaction completes may be
> the best thing.
No, that's just plain ridiculous. If you want to change the semantics
of SET, then make it work *correctly*, viz like an SQL statement: roll
it back on transaction abort. Otherwise leave it alone.
> If we don't somehow get this to work, how do we do timeouts, which we
> all know we should have?
This is utterly unrelated to timeouts. With or without any changes in
SET behavior, JDBC would need to issue a SET after completion of the
transaction if they wanted to revert a query_timeout variable to the
no-timeout state.
regards, tom lane