IBM MQ传输队列独占锁

时间:2010-11-18 15:03:37

标签: ibm-mq

我有一个定义了传输队列的WebSphere MQ队列管理器,我正在使用API​​来获取有关队列的一些信息。当试图查询队列时(使用.NET接口,但我认为这在这里并不重要),我总是收到原因为2042: MQRC_OBJECT_IN_USE的异常 - 根据the documentation,这意味着有一个独占锁在队列中。通过进一步调查,我可以看到持有锁的进程是runmqchl - MQ Server的一部分。

  • 传输队列的排他锁是否典型?
  • 或者这意味着队列或传输有问题?
  • 更好的是,也许有一种方法可以使用API​​对锁定的队列进行一些查询(只读)(即获取深度或浏览消息)?

1 个答案:

答案 0 :(得分:2)

SDR或SVR通道将始终打开传输队列以供独占使用。如果.Net客户端因此而收到错误,则它会询问输入权限以及查询。您可以通过使用WMQ资源管理器查询队列来验证这一点,您将看到获取队列属性,深度等没有问题。因此打开查询但不能浏览或获取,您应该没事。