Long Transaction abort.
Posted in 1999
Topics: Connectivity: ESQL/C, 4GL & Embedded SQL
I ran into a bizarre problem with a 4gl process the other day and I was wondering if anyone could explain it me exactly what happened. The 4gl process had a long transaction abort, which is fine, I know hwo to fix the problem. However, after the rollback, all of the prepared cursors in the 4gl process became invalid so evertime I attempted to open one of these cursors I hit an error stating the cursor was invalid. Has anyone else seen something like this?
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> <html> <blockquote TYPE=CITE> <br> Has anyone else seen something like this?</blockquote> <p><br>Yes, we get error 408s when we bomb out of a transaction - for the cursors to be valid you must be back in a 'begin work', or whatever the 4gl equivalent of the transaction begin statement is. <br> </html>
Barry Klecka wrote: > I ran into a bizarre problem with a 4gl process the other day and I > was wondering if anyone could explain it me exactly what happened. > > The 4gl process had a long transaction abort, which is fine, I know > hwo to fix the problem. However, after the rollback, all of the > prepared cursors in the 4gl process became invalid so evertime I > attempted to open one of these cursors I hit an error stating the > cursor was invalid. > > Has anyone else seen something like this? It's what I'd expect to see. When you run into an LTX, then your transaction is terminated. That means that all open cursors are closed, just as for a COMMIT or ROLLBACK. OK, all non-HOLD cursors. LTX triggers a rollback... -- Jonathan Leffler (jleffler@informix.com, jleffler@earthlink.net) Guardian of DBD::Informix v0.60 -- see http://www.perl.com/CPAN #include <disclaimer.h>