2010-11-18 18 views
2

Ich habe einen WebSphere MQ-Warteschlangenmanager mit Übertragungswarteschlange definiert, und ich verwende API, um einige Informationen über die Warteschlange zu erhalten. Beim Versuch, die Warteschlange abzufragen (mit .NET-Schnittstelle, aber ich glaube, das ist hier nicht wichtig), erhalte ich immer eine Ausnahme mit Grund 2042: MQRC_OBJECT_IN_USE - nach the documentation bedeutet dies, dass es eine exklusive Sperre in der Warteschlange gibt. Durch einige weitere Untersuchungen kann ich sehen, dass der Prozess, der die Sperre hält, runmqchl ist - Teil von MQ Server.IBM MQ-Übertragungswarteschlange exklusive Sperre

  • Ist die exklusive Sperre typisch für Übertragungswarteschlangen?
  • Oder bedeutet dies, dass etwas mit der Warteschlange oder der Übertragung nicht stimmt?
  • Noch besser, vielleicht gibt es eine Möglichkeit, einige Anfragen (schreibgeschützt) zu dieser gesperrten Warteschlange (d. H., Um ihre Tiefe zu erhalten oder durchsuchen Sie die Nachrichten) mit API?

Antwort

2

Der SDR- oder SVR-Kanal öffnet immer die Übertragungswarteschlange zur ausschließlichen Verwendung. Wenn der .Net-Client deswegen einen Fehler erhält, wird nach Eingabe- und Abfrage-Rechten gefragt. Sie können dies überprüfen, indem Sie den WMQ Explorer verwenden, um nach der Warteschlange zu fragen, und Sie werden sehen, dass es keine Probleme hat, Warteschlangenattribute, Tiefen usw. zu erhalten. Also offen für Anfragen, aber nicht durchsuchen oder erhalten und Sie sollten in Ordnung sein.

Verwandte Themen