on 12/10/07 2:27 PM, scott.marlowe@xxxxxxxxx purportedly said: >>> To work around this I add an dbCon.rollBack() after select statement >>> above in good and in bad times. After that ALTER works. >>> Can someone explain me why I need this rollback ? >> >> You only need the rollback when the SELECT statement fails. When an error >> occurs within a transaction, the transaction is aborted but not rolled back. >> There are likely reasons why the rollback isn't automatic, but I don't know >> them. > > I think you confuse postgresql with some other database. Without > setting a savepoint, any error during a transaction and roll it back > upon connection close | rollback | commit. > > I.e. the rollback IS automatic. Just not necessarily immediate. I suppose this clarification is useful for posterity, but or the record, I as using the term "automatic" to address the apparent expectations of the OP, and not to the ultimate behavior of postgresql Best, Keary Suska Esoteritech, Inc. "Demystifying technology for your home or business" ---------------------------(end of broadcast)--------------------------- TIP 6: explain analyze is your friend