[
https://issues.apache.org/jira/browse/QPID-4997?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13730910#comment-13730910
]
ASF subversion and git services commented on QPID-4997:
-------------------------------------------------------
Commit 1511021 from [~tedross] in branch 'qpid/trunk'
[ https://svn.apache.org/r1511021 ]
QPID-5045 - Refactored the router data structures to support message and link
routing.
QPID-4997 - Fixed the thread safety problem.
- Wrapped "pn_delivery" in the container to allow for explicit linkage of
delivery pairs.
- Removed the linkage between "message" and "delivery". Messages can now be
discarded as
soon as the last copy is delivered because their status will be tracked in
the dx_delivery
object.
- Removed tx_handler from the set of callbacks in the container. There is no
need for this
notification (sendable delivery) because Dispatch does not create outbound
deliveries
until it is ready to send them (i.e. deliveries are created and advanced in
one synchronous
operation).
- Replaced the out_fifo of messages per outbound-link with a pair of fifos
(one for messages
and one for state changes) per link. Note that even inbound-links need to
send state
changes outbound. This change addresses QPID-4997.
> Dispatch - Thread safety issues in the usage of Proton
> ------------------------------------------------------
>
> Key: QPID-4997
> URL: https://issues.apache.org/jira/browse/QPID-4997
> Project: Qpid
> Issue Type: Bug
> Components: Qpid Dispatch
> Reporter: Ted Ross
> Assignee: Ted Ross
>
> Dispatch, being an intermediary, often needs to deal with activating and
> modifying multiple links synchronously. There are several Proton calls that
> are invoked on threads in violation of the
> one-thread-at-a-time-per-connection rule.
> A mechanism needs to be put in place whereby delivery
> (settlement/disposition) and link (flow/offer) can be safely scheduled for
> later processing on a "proper" thread.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]