[
https://issues.apache.org/jira/browse/QPID-7417?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15477225#comment-15477225
]
ASF subversion and git services commented on QPID-7417:
-------------------------------------------------------
Commit 1760032 from [~k-wall] in branch 'java/trunk'
[ https://svn.apache.org/r1760032 ]
QPID-7417: [Java Broker] Ensure message instance listeners only fire on state
change of the associated object
> [Java Broker] Ensure message instance listeners only fire on state changes of
> the associated object
> ---------------------------------------------------------------------------------------------------
>
> Key: QPID-7417
> URL: https://issues.apache.org/jira/browse/QPID-7417
> Project: Qpid
> Issue Type: Bug
> Components: Java Broker
> Affects Versions: qpid-java-6.0, qpid-java-6.0.4, qpid-java-6.1
> Reporter: Lorenz Quack
> Fix For: qpid-java-6.0.5, qpid-java-6.1
>
>
> Currently a typical StateChangeListener checks whether it is interested in
> the particular change of state that is occurring but it does not check from
> which object the state change is triggered from.
> This can be a problem for example in
> {{ConsumerTarget_0_8#_unacknowledgedMessageListener}} if a message gets
> rejected from ConsumerTarget A and assigned to ConsumerTarget B before the
> stateChangeListeners are invoked. The invocation of the listeners would
> notify about the transition from ACQUIRED to AVAILABLE relating to
> ConsumerTarget A but ConsumerTarget B (not checking for the origin of the
> state change) would also restore its credit. This premature restoration of
> credit can lead to the client receiving too many messages in its prefetch
> leading to potentially undesired behaviour.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]