Daniil Kirilyuk created QPID-8557:
-------------------------------------

             Summary: [Broker-J] Batching mode for CoalescingCommitter
                 Key: QPID-8557
                 URL: https://issues.apache.org/jira/browse/QPID-8557
             Project: Qpid
          Issue Type: Improvement
          Components: Broker-J
    Affects Versions: qpid-java-broker-8.0.5
            Reporter: Daniil Kirilyuk


Although QPID-8547 introduced configurable parameters for CoalescingCommitter, 
BDB log is flushed to disc on every message. That is caused by calling 
future.get() inside of org.apache.qpid.server.txn.AsyncCommand.complete(). Such 
call forces broker to wait until CoalescingCommiter calls 
#CommitThread#processJobs() making the operation effectively sync instead of 
async (every message triggers processJobs() and data flush).

To improve overall performance we suggest to add batching mode for 
CoalescingCommitter, which would consider BDBVirtualHost parameters and flush 
data in chunks of size ${qpid.broker.bdbCommiterNotifyThreshold} or every 
${qpid.broker.bdbCommiterWaitTimeout} ms (whatever comes first).



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to