qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aidan Skinner (JIRA)" <qpid-...@incubator.apache.org>
Subject [jira] Assigned: (QPID-293) setting MessageListener after connection has started can cause messages to be "lost" on a internal delivery queue.
Date Mon, 07 Jul 2008 15:15:31 GMT

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

Aidan Skinner reassigned QPID-293:
----------------------------------

    Assignee: Aidan Skinner

> setting MessageListener after connection has started can cause messages to be "lost"
on a internal delivery queue.
> ------------------------------------------------------------------------------------------------------------------
>
>                 Key: QPID-293
>                 URL: https://issues.apache.org/jira/browse/QPID-293
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Client
>    Affects Versions: M1, M2
>            Reporter: Martin Ritchie
>            Assignee: Aidan Skinner
>            Priority: Blocker
>             Fix For: M3
>
>
> The message delivery process:
> Mina puts a message on _queue in AMQSession and the dispatcher thread take()s from here
and dispatches to the _consumers. If the _consumer doesn't have a message listener set at
connection start then messages are stored on _synchronousQueue (which needs to be > 1 to
pass JMS TCK as multiple consumers on a session can run in any order and a synchronous put/poll
will block the dispatcher). 
> When setting the message listener later the _synchronousQueue is just poll()'ed and the
first message delivered the remaining messages will be left on the queue and lost, subsequent
messages on the session will arrive first.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message