All sounds sensible to me.

Robbie

On 11 March 2011 10:01, Robert Godfrey <rob.j.godf...@gmail.com> wrote:

>
>
> On 11 March 2011 08:18, Robbie Gemmell <robbie.gemm...@gmail.com> wrote:
>
>> On 11 March 2011 01:42, Robbie Gemmell <robbie.gemm...@gmail.com> wrote:
>> <snip>
>>
>> > Imposing a performance penalty (there is none in the Java broker
>> currently,
>> > its performance revolves entirely around the message delivery mode not
>> the
>> > queue durability) on unsuspecting users seems better to me than imposing
>> > less reliable messaging on the users who have actually asked for
>> > reliablility.
>> >
>> <snip>
>>
>> It occurs to me now that this was actually fixed a while back and I
>> forgot,
>> so yes the durability of the queue will also affect the Java brokers
>> performance too, which is entirely sensible. Not getting persistence by
>> default when you have asked for it is less so.
>>
>
> So I think we're talking about a number of different things here.
>
> 1) createQueue doesn't create a queue at the broker - but it does create a
> Destination object.  There is a question about what properties of the
> created object should be implied from the passed in String.
> 2) By default, on creating a consumer, the Java Client declares (creates)
> the queue with the properties in the Destination Object.
> 3) Sending persistent messages to a queue which has a lifetime limited to
> the uptime of the Broker makes little sense
>
> Personally I think it's high time that we fixed 2), and made the default
> not to create queues (except of the temporary variety, and as necessary for
> Durable Subscriptions).  I believe there is already a System Property for
> this, and we would just need to change the default.  Obviously any such
> change would need to be well advertised, and perhaps we should also add some
> logging where previously a queue would have been created and now it is not.
>
> Issue 3) is something that should be dealt with on the Broker side I think
> - I've always thought that we should at least log (once per queue per
> session) where clients are sending durable messages to a transient queue.
>
> Issue 1) (what are the default properties of a Destination object created
> through the createQueue API call) I actually care very little about as
> anyone using this API for the purpose of creating the Queue on the Broker
> should really be fully specifying the properties in the passed in String.
> Having said that I think we should be careful changing the default behaviour
> until such a time ass we fix issue 2 (and we should do this ASAP - it's long
> overdue)
>
> Thoughts?
>
> Rob
>

Reply via email to