|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
How do you keep a poison message in the poison queue? (WCF) |
« View previous topic :: View next topic » |
Author |
Message
|
ScottDevrb |
Posted: Thu Apr 07, 2011 1:24 pm Post subject: How do you keep a poison message in the poison queue? (WCF) |
|
|
Newbie
Joined: 07 Apr 2011 Posts: 3
|
I have a WebSphere MQ contract that I've setup. I have the queue configured to deliver a message that is retried 5 times to a separate queue for poison processing. I interact with the service using the WCF Channel provided by WebSphere MQ v 7.01.
While my service is connected, things work perfectly. As soon as the service disconnects, the poison messages reappear in the primary queue. Restarting the service instantly puts the messages back from the primary queue into the poison queue. What do I need to do in order to get the messages to stay in the poison queue after the service disconnects from the queue? Is this a bug in my code or a bug in the WCF Channel for MQ Series?
The code is currently in POC mode, so I'm hosting the service on a Window. The class has these attributes:
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]
[AssuredDelivery()]
public partial class MainWindow : Window, IWmqEndpoint
Service contract is:
[ServiceContract()]
public interface IWmqEndpoint
{
[OperationContract(IsOneWay = true)]
void SendMessage(string message);
[OperationContract(IsOneWay = true)]
void SendComplex(PersonName name);
}
The main queue is persistent, otherwise, default settings. Ditto for the poison queue.
Queue setup:
1.Backout request queue: wcf.inbound.poison
2.Backout threshold: 5
3.Harden get backout: Not hardened
4.NPM class: Normal |
|
Back to top |
|
 |
mvic |
Posted: Thu Apr 07, 2011 2:59 pm Post subject: Re: How do you keep a poison message in the poison queue? (W |
|
|
 Jedi
Joined: 09 Mar 2004 Posts: 2080
|
ScottDevrb wrote: |
I have the queue configured to deliver a message that is retried 5 times to a separate queue for poison processing. |
Please describe this configuration in detail. |
|
Back to top |
|
 |
fjb_saper |
Posted: Thu Apr 07, 2011 7:37 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Have you verified that you are committing your put to the poison queue?  _________________ MQ & Broker admin |
|
Back to top |
|
 |
ScottDevrb |
Posted: Fri Apr 08, 2011 6:13 am Post subject: |
|
|
Newbie
Joined: 07 Apr 2011 Posts: 3
|
.NET config:
Code: |
<system.serviceModel>
<diagnostics>
<messageLogging logMalformedMessages="true" logMessagesAtServiceLevel="false"
logMessagesAtTransportLevel="true" />
</diagnostics>
<extensions>
<bindingElementExtensions>
<add name="wmq"
type="IBM.XMS.WCF.SoapJmsIbmTransportBindingElementConfig, IBM.XMS.WCF, Version=7.0.1.0, Culture=neutral, PublicKeyToken=8c7c0be90afcd8ba"/>
</bindingElementExtensions>
</extensions>
<bindings>
<customBinding>
<binding name="wmq">
<binaryMessageEncoding></binaryMessageEncoding>
<wmq />
</binding>
</customBinding>
</bindings>
<services>
<service name="Redbox.Wmq.Service.MainWindow">
<endpoint contract="Redbox.Wmq.Common.IWmqEndpoint"
address="jms:/queue?destination=wcf.inbound&connectionFactory=()&initialContextFactory=com.ibm.mq.jms.Nojndi&persistence=2"
binding="customBinding" bindingConfiguration="wmq" />
</service>
</services>
</system.serviceModel> |
|
|
Back to top |
|
 |
ScottDevrb |
Posted: Fri Apr 08, 2011 6:32 am Post subject: |
|
|
Newbie
Joined: 07 Apr 2011 Posts: 3
|
Also, the move to the poison queue is happening automatically. It's not clear to me how I would commit this put using the WCF channel. |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|