You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Oleksandr Rudyy <or...@gmail.com> on 2016/12/07 16:27:32 UTC

Issue with prefetched messages not being released immediately on consumer close

Hi ,

We were looking into failing  system tests for AMQP 1.0 and discovered
that transacted Consumer#close() does not release any prefetched
messages immediately. It seems that transactions needs to be finished
(committed/rolled back). As result, if another consumer is created
before the transaction end, it will not see the acquired messages by
closed consumer. Because of this issue the test
org.apache.qpid.test.unit.transacted.CommitRollbackTest#testSend2ThenCloseAfter1andTryAgain
is failing, as it creates a second consumer and tries to consume the
message with this consumer before the transaction for the first closed
consumer is committed.

It is unclear whether it is a correct behavior or not. However, the
legacy JMS client for AMQP 0.x is passing the test. We have to exclude
the test from running on AMQP 1.0 profile.

Shall I raise a JIRA about this issue?

Kind Regards,
Alex

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Re: Issue with prefetched messages not being released immediately on consumer close

Posted by Oleksandr Rudyy <or...@gmail.com>.
Robbie,

I raised JIRA https://issues.apache.org/jira/browse/QPIDJMS-231 for the issue

Alex

On 7 December 2016 at 17:50, Robbie Gemmell <ro...@gmail.com> wrote:
> On 7 December 2016 at 16:27, Oleksandr Rudyy <or...@gmail.com> wrote:
>> Hi ,
>>
>> We were looking into failing  system tests for AMQP 1.0 and discovered
>> that transacted Consumer#close() does not release any prefetched
>> messages immediately. It seems that transactions needs to be finished
>> (committed/rolled back). As result, if another consumer is created
>> before the transaction end, it will not see the acquired messages by
>> closed consumer. Because of this issue the test
>> org.apache.qpid.test.unit.transacted.CommitRollbackTest#testSend2ThenCloseAfter1andTryAgain
>> is failing, as it creates a second consumer and tries to consume the
>> message with this consumer before the transaction for the first closed
>> consumer is committed.
>>
>> It is unclear whether it is a correct behavior or not. However, the
>> legacy JMS client for AMQP 0.x is passing the test. We have to exclude
>> the test from running on AMQP 1.0 profile.
>>
>> Shall I raise a JIRA about this issue?
>>
>> Kind Regards,
>> Alex
>>
>
> Yes, please raise a JIRA. It isnt explicitly releasing messages on
> closing the links...and its handling that particular situation by not
> actually closing the link yet, thus it will currently act as the test
> has found.
>
> Robbie
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
> For additional commands, e-mail: dev-help@qpid.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Re: Issue with prefetched messages not being released immediately on consumer close

Posted by Robbie Gemmell <ro...@gmail.com>.
On 7 December 2016 at 16:27, Oleksandr Rudyy <or...@gmail.com> wrote:
> Hi ,
>
> We were looking into failing  system tests for AMQP 1.0 and discovered
> that transacted Consumer#close() does not release any prefetched
> messages immediately. It seems that transactions needs to be finished
> (committed/rolled back). As result, if another consumer is created
> before the transaction end, it will not see the acquired messages by
> closed consumer. Because of this issue the test
> org.apache.qpid.test.unit.transacted.CommitRollbackTest#testSend2ThenCloseAfter1andTryAgain
> is failing, as it creates a second consumer and tries to consume the
> message with this consumer before the transaction for the first closed
> consumer is committed.
>
> It is unclear whether it is a correct behavior or not. However, the
> legacy JMS client for AMQP 0.x is passing the test. We have to exclude
> the test from running on AMQP 1.0 profile.
>
> Shall I raise a JIRA about this issue?
>
> Kind Regards,
> Alex
>

Yes, please raise a JIRA. It isnt explicitly releasing messages on
closing the links...and its handling that particular situation by not
actually closing the link yet, thus it will currently act as the test
has found.

Robbie

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org