1
我們在WebSphere MQ v7.0.1.9隊列管理器中設置了BOTHRESH(5)
,BOQNAME(USER.ERR)
。WebSphere MQ回退閾值和回退名稱不起作用
當TX在WebSphere應用服務器v7的容器託管TX中由MDB回退時,消息被放置在DLQ中,而不是置於原始隊列中。
我檢查了TX表明TX成功回滾的日誌。
有人能幫助我嗎?
我們在WebSphere MQ v7.0.1.9隊列管理器中設置了BOTHRESH(5)
,BOQNAME(USER.ERR)
。WebSphere MQ回退閾值和回退名稱不起作用
當TX在WebSphere應用服務器v7的容器託管TX中由MDB回退時,消息被放置在DLQ中,而不是置於原始隊列中。
我檢查了TX表明TX成功回滾的日誌。
有人能幫助我嗎?
...該消息被放置在DLQ中,而不是置於原始隊列中。
設置BOQNAME
和BOTHRESH
導致QMGR試圖將消息比原來的隊列以外的東西。一旦超過BOTHRESH
,QMgr將首先嚐試將消息放入由BOQNAME
命名的隊列中,然後放入DLQ中,如果不可能放入BOQNAME
。只有當兩者都失敗時,QMgr纔會將消息放回原始隊列,或者如果消息是非持久性的,則丟棄它。
是打了退堂鼓在BOQNAME
或到DLQ失敗命名隊列的一些原因是:
DEADQ
屬性爲空。BOTHRESH
設定但BOQNAME
不是。在這種情況下,DLQ是唯一嘗試的隊列。
感謝羅布:)消息永遠不會放回到原始隊列中(即使是第一次當他們回滾消息被推送到DLQ時)。第四點你的意思是我正在運行WAS實例的用戶標識應該被授權將msg放回原始隊列? – user1284849
設置BOQNAME和BOQTHRESH導致QMgr試圖將消息放在原始隊列以外的東西(你的意思是,如果刪除這些屬性,然後默認回滾消息將始終放在原始隊列中。我甚至厭倦了,但仍然它被登陸在死信隊列中:() – user1284849
必須被授權的用戶ID是* MQ *認爲連接的用戶ID,這可能是WAS實例ID,或者它可能在頻道的「MCAUSER」中被覆蓋或被頻道安全退出當頻道正在運行時,DIS CHS(頻道名稱)顯示WMQ在'MCAUSER'字段中用於授權的ID如果'MCAUSER'爲空,頻道將作爲WMQ管理員運行, BOQNAME'和'BOTHRESH'都是空的並且消息在DLQ中登陸,這不是由於退出處理。DLQ消息的原因代碼是什麼? –