Sean Chittenden wrote: > > > Of course, the reason they're rollbackable is: > > > > > > begin; > > > create schema newschema; > > > set search_path = newschema; > > > rollback; > > > > > > create table junk; -- DOH! > > > > And: > > > > set statement_timeout = 20; > > query_with_error; > > set statement_timeout = 0; > > COMMIT; > > > > That will have to change in autocommit off to: > > > > BEGIN; > > SET statement_timeout = 20; > > query_with_error; > > SET statement_timeout = 0; > > COMMIT; > > > > I assume that BEGIN does start a transaction. With no BEGIN above, the > > big problem is that it will work most of the time, but when/if the query > > fails, they will find out they forgot the BEGIN. > > Wouldn't it roll back to 0 though because the SET statement_timeout TO > 20 was inside of a transaction (assuming the value was 0 before the > transaction began)? -sc
Yes, with the BEGIN, it will roll back. With autocommit off, this: > > > > set statement_timeout = 20; > > query_with_error; > > set statement_timeout = 0; > > COMMIT; will not roll back to 0. It will be 20. -- Bruce Momjian | http://candle.pha.pa.us [EMAIL PROTECTED] | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073 ---------------------------(end of broadcast)--------------------------- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly