首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MQ Java基类:-间歇性mqrc 2128 :UoW已经在进行中

MQ Java基类:-间歇性mqrc 2128 :UoW已经在进行中
EN

Stack Overflow用户
提问于 2015-06-11 12:05:24
回答 1查看 204关注 0票数 1

我们使用MQ基类和MQ作为XA事务协调器。

代码语言:javascript
复制
Environment 

MQ 7.5 Red 6.4 Java 1.7

代码语言:javascript
复制
Scenario :
  1. MqManager.begin
  2. 排队。获取(在get选项中设置同步点)
  3. db保存
  4. 提交/回滚
  5. 回到步骤1

大多数情况下,步骤5--即启动新事务--工作良好,但是间歇性异常被抛出,UoW已经在进行中。由于第4步调用是成功的,我们认为事务应该成功地提交或回滚。在启动新事务时,它不应该引起问题。请有人建议,即使在Q管理器成功提交/回滚调用之后,导致UoW不提交或回滚的原因是什么?

谢谢Vaibhav

EN

回答 1

Stack Overflow用户

发布于 2015-06-19 07:06:08

您可能正在缓存JMS使用者或其他JMS对象。

基本上,在较低级别的MQ会话是由各种低级客户端调用(如PUT、GET或MQOPEN命令)驱动的。您的问题是,发出的MQBEGIN命令没有得到适当的MQCLOSE (?)命令。所有这些都发生在JMS驱动程序中,并且对Java开发人员是隐藏的。

如果我没有记错的话,MQBEGIN调用将映射到创建o jms使用者。关闭所有jms对象的但连接本身将工作。

这件事已经没落了。关闭所有JMS对象的问题是,它增加了cpu使用,因为MQOPEN和类似的调用往往是CPU昂贵的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30780304

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档