You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Gary Tully (JIRA)" <ji...@apache.org> on 2016/02/09 13:54:19 UTC

[jira] [Resolved] (AMQ-6164) queue sendLock prevents concurrent journal updates

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

Gary Tully resolved AMQ-6164.
-----------------------------
    Resolution: Fixed

multiple producers on a single destination can now get the benefit of write batching to the journal. They can benefit from a shared disk fsync.
Depending on your disk speed and usage pattern, this can increase through put

> queue sendLock prevents concurrent journal updates
> --------------------------------------------------
>
>                 Key: AMQ-6164
>                 URL: https://issues.apache.org/jira/browse/AMQ-6164
>             Project: ActiveMQ
>          Issue Type: Improvement
>          Components: Broker, Message Store
>    Affects Versions: 5.13.0
>            Reporter: Gary Tully
>            Assignee: Gary Tully
>             Fix For: 5.14.0
>
>
> concurrent producers contend on the queue sendlock rather than on the journal, preventing batching or in the case of jdbc, concurrent writes to the db.
> The sendlock protects message order, however order is ultimately determined by the sequence id assigned by the persistence adapter. 
> The ground work for aligning the cursors with the journal sequence ids was layed in https://issues.apache.org/jira/browse/AMQ-4485 and https://issues.apache.org/jira/browse/AMQ-5266
> With the ordering between transacted and non transacted producers overlapping the cursor already respects the journal ordering, the sendLock need no longer protect the journal update.
> With parallel journal updates we get the benefit of write batching (sharing an fsync) for multiple producers on a single destination.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)