So if I'm using the following code below, My question is: Even if the connection is fine and the database logic does it's stuff correctly (Do Stuff).. And the connection is NOT closed. It's ok to do the "rollback" since the commit worked fine also. correct?
Connection dbConn = null; try { dbConn = Torque.getConnection("db2.torque.environment"); ////Do Stuff dbConn.commit(); } finally { if (dbConn == null) { //Connection error logic } if (!dbConn.isClosed()) { dbConn.rollback(); dbConn.close(); } } --- Thomas Fischer <[EMAIL PROTECTED]> wrote: > > Jim Caserta <[EMAIL PROTECTED]> schrieb am > 10.04.2006 17:40:05: > > > Sorry about the confusion. I meant using > > Torque.getConnection() and dbConn.close() instead > of > > Transaction.begin().. > > For any DB which supports transactions: _Make sure_ > that the connection is > in autocommit mode or use Transaction.begin and > Transaction.commit() or do > both. If you do not commit/rollback and are not in > autocommit mode you can > run into ugly trouble (e.g. if the transaction > serialization is read > committed, other connections will never see the > changes to the data in the > uncommitted transaction and the like). > > > And if iI was. the following would work well? > > > > > > Connection dbConn = null; > > try { > > // get a connection from the pool > > dbConn = > > Torque.getConnection(db2.torque.environment); > > ////Do Stuff > > //Commit the transaction > > dbConn.commit(); > > } > > finally { > > if (!dbConn.isClosed()) { > > // some error occurred, try to rollback > and return > > connection to the pool > > dbConn.close(); > > dbConn.rollback(); //Is this needed? > > } > > } > > This is similar to an earlier version I used some > time ago. The problem is > it would throw a NullPointerException in the finally > block if > Torque.getConnection() fails. Also, you should > rollback() before you > close(). > > Whatever code you use in the end, make sure (i.e. > _test_) that an error in > retrieving/working with the connection is handled > correctly. > > Thomas > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: > [EMAIL PROTECTED] > For additional commands, e-mail: > [EMAIL PROTECTED] > > __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]