Re: how to terminate global transactions?
Posted in 2010
Topics: Server Administration, Licensing & Editions, Java & JDBC Development
On 28.06.10 11:19, Davorin Kremenjas wrote:
> On Jun 27, 6:51 pm, Frank Langelage<fr...@lafr.de> wrote:
>> On my Informix instance I have two global transactions holding some
>> locks. See onstat -G and onstat -x output below.
>> How can I get rid of them?
>> Also after a server reboot they are still there.
>> onmode -Z<address> or onmode -H<address> do not work (see below).>
> Hi Frank,
>
> onmode will not work AFAIK. These global transactions were started by
> a "distributed" application, (transaction manager) and Informix is
> only a participant in XA transaction. Transaction manager (a wild
> guess: Java app server?) needs to send either a commit or rollback now
> to this participant.
> Did your application crash? If it implements TP/XA transaction
> management fully it should have means of finishing transactions in
> progress after it comes back online.
> If nothing works, call IBM Tech Support, they have a tool which will
> clean this up for you.
>
> HTH
>
> Davorin
Thanks for your help.
Yes, it was a Java Application Server using distributed transactions and
this ran out of PermGen space so I had to kill -9 it.
Today I cannot figure out anymore why the transaction was not rolled back.
The instance is used for testing and developing and I do not have a
support contract for it (Innovator-C Edition).
Would dropping and recreating the database erase this open transaction?
Or do I have to initialize the whole instance?
Regards, Frank
> Thanks for your help. > Yes, it was a Java Application Server using distributed transactions and > this ran out of PermGen space so I had to kill -9 it. > Today I cannot figure out anymore why the transaction was not rolled back. > The instance is used for testing and developing and I do not have a > support contract for it (Innovator-C Edition). > Would dropping and recreating the database erase this open transaction? > Or do I have to initialize the whole instance? The transaction was not rolled back because Informix never got the instruction to either roll it back or commit from your Java app server. This is the correct behaviour accoring TP/XA specification. Transaction managers should implement all the necessary logic to do the rollback (or commit) after they come on-line after the crash. I know JBoss does it. The entry of this non-finished transaction is as always written to your logical logs so dropping the database will not help (I'm not even sure if you can drop it at all in the current state, with open transaction on it, but you can always try). Reinitialising the instance from scratch will certainly do the trick... HTH Davorin
Try onmode -l until you have forced a long transaction, this usually
help us. We have requested a way to get rid of these, but it seems
that the view of IBM that the TM should handle this i all cases.
Problem is that the TM fails sometimes, and then you are stuck.
Regards
Ulf
On 30.06.10 22:19, Ulf wrote:
>
> Try onmode -l until you have forced a long transaction, this usually
> help us. We have requested a way to get rid of these, but it seems
> that the view of IBM that the TM should handle this i all cases.
> Problem is that the TM fails sometimes, and then you are stuck.
>
> Regards
>
> Ulf
Today, the transactions were rolled back by the server:
23:42:09 Aborting Long Transaction: tx: 0x56656bd8 no user info due toXA or distributed (2-phase commit) transaction
23:42:09 Aborting Long Transaction: tx: 0x56656e28 no user info due toXA or distributed (2-phase commit) transaction
23:42:13 Checkpoint Completed: duration was 4 seconds.
23:42:13 Thu Jul 1 - loguniq 306, logpos 0x3fff33b4, timestamp:0xdedfaa19 Interval: 5616
23:42:13 Maximum server connections 15
23:42:13 Checkpoint Statistics - Avg. Txn Block Time 0.000, # Txnsblocked 1, Plog used 83432, Llog used 182271
23:42:13 Session completed abnormally. Rolling back tx id 24, flags0x108463b
23:42:13 Session completed abnormally. Rolling back tx id 32, flags0x108463b
23:42:13 Long Transaction 0x56656e28 Aborted. Rollback Duration: 0 Seconds
23:42:14 Long Transaction 0x56656bd8 Aborted. Rollback Duration: 0 Seconds
Related threads
- Posting from the Informix-list
- Migrating from IDS 9.40.UC6 to 11.50.UC3
- Ip for a network session
- questions onstat -g