Artemis STOMP transactional acknowledgements

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Artemis STOMP transactional acknowledgements

Lionel Cons
The Artemis 1.2.0 doc contains:

 | Message acknowledgements are not transactional. The ACK frame can not be part
 | of a transaction (it will be ignored if its transaction header is set).

Is this a design decision (meaning that this behaviour will not change) or is
this considered as a bug (that will be fixed at some point)?

In the latter case, it would be good to create a Jira issue for this to track
its progress (I didn't find any related issue in Jira).

Cheers,

Lionel
Reply | Threaded
Open this post in threaded view
|

Re: Artemis STOMP transactional acknowledgements

clebertsuconic
TBH I don't remember what Hiram (et all) wrote on the spec. It will be
a bug depending on what's said at the spec.

On Thu, Feb 18, 2016 at 9:43 AM, Lionel Cons <[hidden email]> wrote:

> The Artemis 1.2.0 doc contains:
>
>  | Message acknowledgements are not transactional. The ACK frame can not be part
>  | of a transaction (it will be ignored if its transaction header is set).
>
> Is this a design decision (meaning that this behaviour will not change) or is
> this considered as a bug (that will be fixed at some point)?
>
> In the latter case, it would be good to create a Jira issue for this to track
> its progress (I didn't find any related issue in Jira).
>
> Cheers,
>
> Lionel



--
Clebert Suconic
Reply | Threaded
Open this post in threaded view
|

Re: Artemis STOMP transactional acknowledgements

Lionel Cons
In reply to this post by Lionel Cons
> TBH I don't remember what Hiram (et all) wrote on the spec. It will be
> a bug depending on what's said at the spec.

The spec says:

 | Optionally, a transaction header MAY be specified, indicating that the message acknowledgment SHOULD be part of the named transaction.

So, strictly speaking, this is only a SHOULD, not a MUST.


However, AFAIK, ActiveMQ 5.x does support transactional acks so, if you aim at good compatibility with ActiveMQ 5.x, Artemis should really also support them...

Cheers,

Lionel
Reply | Threaded
Open this post in threaded view
|

Re: Artemis STOMP transactional acknowledgements

chirino
In reply to this post by clebertsuconic
I thought that ACKs were supposed to be transactional per the spec.

On Thursday, February 18, 2016, Clebert Suconic <[hidden email]>
wrote:

> TBH I don't remember what Hiram (et all) wrote on the spec. It will be
> a bug depending on what's said at the spec.
>
> On Thu, Feb 18, 2016 at 9:43 AM, Lionel Cons <[hidden email]
> <javascript:;>> wrote:
> > The Artemis 1.2.0 doc contains:
> >
> >  | Message acknowledgements are not transactional. The ACK frame can not
> be part
> >  | of a transaction (it will be ignored if its transaction header is
> set).
> >
> > Is this a design decision (meaning that this behaviour will not change)
> or is
> > this considered as a bug (that will be fixed at some point)?
> >
> > In the latter case, it would be good to create a Jira issue for this to
> track
> > its progress (I didn't find any related issue in Jira).
> >
> > Cheers,
> >
> > Lionel
>
>
>
> --
> Clebert Suconic
>


--
Hiram Chirino
Engineering | Red Hat, Inc.
[hidden email] | fusesource.com | redhat.com
skype: hiramchirino | twitter: @hiramchirino
Reply | Threaded
Open this post in threaded view
|

Re: Artemis STOMP transactional acknowledgements

tabish121@gmail.com
On 02/18/2016 02:24 PM, Hiram Chirino wrote:
> I thought that ACKs were supposed to be transactional per the spec.
That was my understanding as well, here's the relevant text from the spec.

"|ACK| is used to acknowledge consumption of a message from a
subscription using |client| or |client-individual| acknowledgment. Any
messages received from such a subscription will not be considered to
have been consumed until the message has been acknowledged via an |ACK|.

The |ACK| frame MUST include an |id| header matching the |ack| header of
the |MESSAGE| being acknowledged. Optionally, a |transaction| header MAY
be specified, indicating that the message acknowledgment SHOULD be part
of the named transaction."

> On Thursday, February 18, 2016, Clebert Suconic <[hidden email]>
> wrote:
>
>> TBH I don't remember what Hiram (et all) wrote on the spec. It will be
>> a bug depending on what's said at the spec.
>>
>> On Thu, Feb 18, 2016 at 9:43 AM, Lionel Cons <[hidden email]
>> <javascript:;>> wrote:
>>> The Artemis 1.2.0 doc contains:
>>>
>>>  | Message acknowledgements are not transactional. The ACK frame can not
>> be part
>>>  | of a transaction (it will be ignored if its transaction header is
>> set).
>>> Is this a design decision (meaning that this behaviour will not change)
>> or is
>>> this considered as a bug (that will be fixed at some point)?
>>>
>>> In the latter case, it would be good to create a Jira issue for this to
>> track
>>> its progress (I didn't find any related issue in Jira).
>>>
>>> Cheers,
>>>
>>> Lionel
>>
>>
>> --
>> Clebert Suconic
>>
>


--
Tim Bish
twitter: @tabish121
blog: http://timbish.blogspot.com/

Reply | Threaded
Open this post in threaded view
|

Re: Artemis STOMP transactional acknowledgements

clebertsuconic
Ok, that's an issue then :)

@Lionel: Can you open a JIRA?

On Thu, Feb 18, 2016 at 2:36 PM, Timothy Bish <[hidden email]> wrote:

> On 02/18/2016 02:24 PM, Hiram Chirino wrote:
>> I thought that ACKs were supposed to be transactional per the spec.
> That was my understanding as well, here's the relevant text from the spec.
>
> "|ACK| is used to acknowledge consumption of a message from a
> subscription using |client| or |client-individual| acknowledgment. Any
> messages received from such a subscription will not be considered to
> have been consumed until the message has been acknowledged via an |ACK|.
>
> The |ACK| frame MUST include an |id| header matching the |ack| header of
> the |MESSAGE| being acknowledged. Optionally, a |transaction| header MAY
> be specified, indicating that the message acknowledgment SHOULD be part
> of the named transaction."
>
>> On Thursday, February 18, 2016, Clebert Suconic <[hidden email]>
>> wrote:
>>
>>> TBH I don't remember what Hiram (et all) wrote on the spec. It will be
>>> a bug depending on what's said at the spec.
>>>
>>> On Thu, Feb 18, 2016 at 9:43 AM, Lionel Cons <[hidden email]
>>> <javascript:;>> wrote:
>>>> The Artemis 1.2.0 doc contains:
>>>>
>>>>  | Message acknowledgements are not transactional. The ACK frame can not
>>> be part
>>>>  | of a transaction (it will be ignored if its transaction header is
>>> set).
>>>> Is this a design decision (meaning that this behaviour will not change)
>>> or is
>>>> this considered as a bug (that will be fixed at some point)?
>>>>
>>>> In the latter case, it would be good to create a Jira issue for this to
>>> track
>>>> its progress (I didn't find any related issue in Jira).
>>>>
>>>> Cheers,
>>>>
>>>> Lionel
>>>
>>>
>>> --
>>> Clebert Suconic
>>>
>>
>
>
> --
> Tim Bish
> twitter: @tabish121
> blog: http://timbish.blogspot.com/
>



--
Clebert Suconic
Reply | Threaded
Open this post in threaded view
|

Re: Artemis STOMP transactional acknowledgements

clebertsuconic
In reply to this post by Lionel Cons
> However, AFAIK, ActiveMQ 5.x does support transactional acks so, if you aim at good compatibility with ActiveMQ 5.x, Artemis should really also support them...


+1