You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Justin Ross (JIRA)" <ji...@apache.org> on 2014/03/26 16:43:22 UTC

[jira] [Updated] (QPID-4922) If Consumer close() method is invoked while inside onMessage(), it should be excuted after onMessage() has completed.

     [ https://issues.apache.org/jira/browse/QPID-4922?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Justin Ross updated QPID-4922:
------------------------------

    Fix Version/s:     (was: 0.25)
                   0.29

> If Consumer close() method is invoked while inside onMessage(), it should be excuted after onMessage() has completed. 
> ----------------------------------------------------------------------------------------------------------------------
>
>                 Key: QPID-4922
>                 URL: https://issues.apache.org/jira/browse/QPID-4922
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Client
>    Affects Versions: 0.14, 0.16, 0.18, 0.20, 0.22
>            Reporter: Rajith Attapattu
>            Assignee: Rajith Attapattu
>             Fix For: 0.29
>
>         Attachments: QPID-4922.patch
>
>
> If Consumer close() is called while inside onMessage(), it deadlocks (or will be waiting on a condition that would never be true with the patch for QPID-4574).
> As per the JMS spec, the consumer cannot be closed() until onMessage() method returns.
> Therefore the best solution is to mark that close() has been called and then execute those method once the thread returns from onMessage().



--
This message was sent by Atlassian JIRA
(v6.2#6252)

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