ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum IndexGeneral IBM MQ SupportJBoss and uncommitted transactions not cleared.

Post new topicReply to topic
JBoss and uncommitted transactions not cleared. View previous topic :: View next topic
Author Message
crashdog
PostPosted: Thu Jan 25, 2018 10:02 am Post subject: JBoss and uncommitted transactions not cleared. Reply with quote

Novice

Joined: 02 Apr 2017
Posts: 19
Location: Schaffhausen

Hello,
We have a JBoss application running with an MQ8 client that sends a two phase commit to an MQ V8.0.0.7 queue manager running on Linux.

Now for testing sake JBoss is killed and restarted. From time to time we see uncommitted transactions in state (ACTIVE) when checking with dspmqtrn. We also see some in (PREPARED). The PREPARED ones are "recovered" when JBoss restarts but the ACTIVE ones stay uncommitted until the queue manager is restarted.
We also tried to add DISCINT(960) to the SVRCONN channel of JBoss. But the behaviour is the same as when it's set to 0.

Is this a correct behaviour ? or is there anything specific to the connection parameters we might have missed ?

Kind Regards,

Gerhard
_________________
You win again gravity !
Back to top
View user's profile Send private message
Andyh
PostPosted: Fri Jan 26, 2018 10:25 am Post subject: Reply with quote

Disciple

Joined: 29 Jul 2010
Posts: 158

There's a well know issue with the XA spec, where a transaction which is between xa_end and xa_prepare can get 'stuck' if the TM should end when the transaction is in this state.
The typical work-around is for the RM to time out the transactions.
By default MQ won't back out these transactions until it needs to recover the log space, however you can set a couple of environment variables in the environment from which the queue manager is started to change this behaviour.
see https://www.ibm.com/support/knowledgecenter/en/SSFKSJ_7.5.0/com.ibm.mq.dev.doc/q114450_.htm
Back to top
View user's profile Send private message
crashdog
PostPosted: Sat Jan 27, 2018 4:03 am Post subject: Reply with quote

Novice

Joined: 02 Apr 2017
Posts: 19
Location: Schaffhausen

Thank you. I was not aware of that and will read up on it.
I'm not 100% clear of the abbreviations. Is TM = Transaction Manager ? and RM = Remote Manager ?

Is this also true for none XA transactions that are 2 phase ? Let's say I have one transaction with an MQGET and MQPUT that are not yet committed and in state ACTIVE ?
_________________
You win again gravity !
Back to top
View user's profile Send private message
Andyh
PostPosted: Sat Jan 27, 2018 6:06 am Post subject: Reply with quote

Disciple

Joined: 29 Jul 2010
Posts: 158

TM=Transaction manager
RM=Resource manager

This 'issue' only exists for externally managed transaction (XA).
A 'simple' single phase MQI transaction doesn't issue xa_end or xa_prepare and is associated with the hConn under which it started for the lifetime of the transaction.
Back to top
View user's profile Send private message
Display posts from previous:
Post new topicReply to topic Page 1 of 1

MQSeries.net Forum IndexGeneral IBM MQ SupportJBoss and uncommitted transactions not cleared.
Jump to:



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP


Theme by Dustin Baccetti
Powered by phpBB 2001, 2002 phpBB Group

Copyright MQSeries.net. All rights reserved.