[
https://issues.apache.org/jira/browse/AMQ-5266?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14631215#comment-14631215
]
ASF subversion and git services commented on AMQ-5266:
------------------------------------------------------
Commit 7c116631b504e31fb0bd9f805b1b77090d16f4ff in activemq's branch
refs/heads/master from [~gtully]
[ https://git-wip-us.apache.org/repos/asf?p=activemq.git;h=7c11663 ]
AMQ-5266 - fix leak in transaction context - completions were not cleared on
close/commit
> Stuck Messages in Single Broker when using JDBC Persistent Store
> ----------------------------------------------------------------
>
> Key: AMQ-5266
> URL: https://issues.apache.org/jira/browse/AMQ-5266
> Project: ActiveMQ
> Issue Type: Bug
> Components: Message Store
> Affects Versions: 5.10.0
> Reporter: Gary Tully
> Assignee: Gary Tully
> Labels: Hanging, JDBC, Order
> Fix For: 5.11.0
>
>
> With multiple concurrent producer transactions and active fast consumers it
> is possible to get out of order db insertions and scans resulting in a
> skipped dispatch. This scenario is exacerbated when the cursor cache is
> disabled because every dispatch will potentially result in a scan.
> the JDBC store maps jms transaction to jdbc connection transactions at the
> point of a commit and these can occur in parallel. The broker tracks a
> sequenceId to ensure ordering relative to a jms connection and scans respect
> that order but there is currently nothing to stop a scan seeing a later
> sequence before an earlier sequence is stored. In other words, inserts can
> race, but the reader needs to limit a read to the lowest outstanding sequence.
> On a restart, any stuck messages will be replayed correctly, because the
> cursor transient state w.r.t to the last sequence id read will be reset.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)