What is the correct behaviour for the following case
If we use the following address with the java client you get an error with exchange bind. myEx_headers;{create: always,node:{type: topic,x-declare:{type:headers}}} However the exchange (or queue) is created, all though the bind fails. When this happens, 1. Should we reverse the queue or exchange declare ? (in addition to throwing an exception) 2. Leave the exchange or queue as it and just throw the exception. We currently do #2. What are your thoughts on this? Regards, Rajith
Re: What is the correct behaviour for the following case
On 05/09/2013 04:40 PM, Rajith Attapattu wrote: If we use the following address with the java client you get an error with exchange bind. myEx_headers;{create: always,node:{type: topic,x-declare:{type:headers}}} However the exchange (or queue) is created, all though the bind fails. Is the client sending the correct bind? (Since the address doesn't explicitly have one it should assume one where all messages would match). When this happens, 1. Should we reverse the queue or exchange declare ? (in addition to throwing an exception) 2. Leave the exchange or queue as it and just throw the exception. We currently do #2. What are your thoughts on this? 3. In this specific case I suspect the fix is to send the correct bind so that it doesn't fail. However in general if you have node level x-bindings and an x-declare I don't think there is a need to make them fail 'atomically'. - To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org
Re: What is the correct behaviour for the following case
On Thu, May 9, 2013 at 11:52 AM, Gordon Sim g...@redhat.com wrote: On 05/09/2013 04:40 PM, Rajith Attapattu wrote: If we use the following address with the java client you get an error with exchange bind. myEx_headers;{create: always,node:{type: topic,x-declare:{type:headers}* *}} However the exchange (or queue) is created, all though the bind fails. Is the client sending the correct bind? (Since the address doesn't explicitly have one it should assume one where all messages would match). No the client is not sending the x-match:all like the c++ or python client. I'm definitely going to add it. When this happens, 1. Should we reverse the queue or exchange declare ? (in addition to throwing an exception) 2. Leave the exchange or queue as it and just throw the exception. We currently do #2. What are your thoughts on this? 3. In this specific case I suspect the fix is to send the correct bind so that it doesn't fail. Agreed. However in general if you have node level x-bindings and an x-declare I don't think there is a need to make them fail 'atomically'. Thanks, my view as well. --**--**- To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.**orgdev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org