Ibm websphere MQ; rollback / un commit没有发生 [英] Ibm websphere MQ; rollback/un commit not happening

查看:132
本文介绍了Ibm websphere MQ; rollback / un commit没有发生的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用IBM.WMQ;



MQQueue队列;

MQMessage mq_msg;

MQGetMessageOptions gmoptions; < br $>
MQQueueManager oMQQMGR;



mq_msg =新MQMessage();

queue.Get(mq_msg,gmoptions);

string message_text = mq_msg.ReadString(mq_msg.DataLength);



oMQQMGR.Commit();



一旦阅读,是否可以选择RollBack / Un Commit?



我有什么试过:



我没有执行提交,因为Biz逻辑失败,为什么该项目没有回到队列?一旦阅读,是否有任何RollBack / Un Commit选项。选项是为回滚和非提交, 但不是真的发生



请注释

解决方案

一般来说,你不能取消承认你所描述的阅读类型;对于任何类型的队列。



你想要的是相当于大多数队列支持的偷看功能。



rabbitmq - IBM MQ中的消息 - Stack Overflow [ ^ ]

using IBM.WMQ;

MQQueue queue;
MQMessage mq_msg;
MQGetMessageOptions gmoptions;
MQQueueManager oMQQMGR;

mq_msg = new MQMessage();
queue.Get(mq_msg, gmoptions);
string message_text = mq_msg.ReadString(mq_msg.DataLength);

oMQQMGR.Commit();

Once read, is there any option to RollBack/Un Commit ?

What I have tried:

I am not performing the commit as the Biz logic fails, why the item is not coming back to queue? Once read, is there any option to RollBack/Un Commit. Options are given for rollback and Non commit, but not really happening.

Please Comment

解决方案

In general, you cannot "uncommit" the type of "read" you describe; for any type of "queue".

What you want is the equivalent of a "peek" function which "most" queues support.

rabbitmq - Message peek in IBM MQ - Stack Overflow[^]


这篇关于Ibm websphere MQ; rollback / un commit没有发生的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆