db-torque-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jim Caserta <smoothie...@yahoo.com>
Subject RE: Torque Connection pool .. ORA- 01453 - Set Transaction must be the first statement
Date Mon, 10 Apr 2006 19:27:57 GMT
Exactly how does that rollback help at that point of
the code Thomas? 

--- Thomas Fischer <tfischer@apache.org> wrote:

> The code now looks good. It's fine to rollback after
> you do the commit.
> 
>     Thomas
> 
> On Mon, 10 Apr 2006, Jim Caserta wrote:
> 
> > 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 <fischer@seitenbau.net> wrote:
> >
> >>
> >> Jim Caserta <smoothie_jc@yahoo.com> 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:
> >> torque-user-unsubscribe@db.apache.org
> >> For additional commands, e-mail:
> >> torque-user-help@db.apache.org
> >>
> >>
> >
> >
> > __________________________________________________
> > Do You Yahoo!?
> > Tired of spam?  Yahoo! Mail has the best spam
> protection around
> > http://mail.yahoo.com
> >
> >
>
---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> torque-user-unsubscribe@db.apache.org
> > For additional commands, e-mail:
> torque-user-help@db.apache.org
> >
> >
> 
>
---------------------------------------------------------------------
> To unsubscribe, e-mail:
> torque-user-unsubscribe@db.apache.org
> For additional commands, e-mail:
> torque-user-help@db.apache.org
> 
> 


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

---------------------------------------------------------------------
To unsubscribe, e-mail: torque-user-unsubscribe@db.apache.org
For additional commands, e-mail: torque-user-help@db.apache.org


Mime
View raw message