You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Jamie goodyear (JIRA)" <ji...@apache.org> on 2018/07/18 13:59:00 UTC

[jira] [Created] (AMQ-7013) XATransactionID hash function may generate duplicates.

Jamie goodyear created AMQ-7013:
-----------------------------------

             Summary: XATransactionID hash function may generate duplicates.
                 Key: AMQ-7013
                 URL: https://issues.apache.org/jira/browse/AMQ-7013
             Project: ActiveMQ
          Issue Type: Bug
            Reporter: Jamie goodyear


XATransactionID hash function may generate duplicates.

Scenario:

XID formatId, GlobalTransaction, and BranchQualifier values are identical for many entries. We need to use a better hash function to avoid populating a map with many entries in the same bucket (results in bucket having O(n) performance on recovery).

Example using existing Hash Function:
2018-07-18 06:13:29,866 | INFO  | Recovering from the journal @1:28 | org.apache.activemq.store.kahadb.MessageDatabase | main
2018-07-18 06:23:04,070 | INFO  | @2:484592, 100000 entries recovered .. | org.apache.activemq.store.kahadb.MessageDatabase | main
2018-07-18 06:23:04,099 | INFO  | Recovery replayed 100453 operations from the journal in 574.233 seconds. | org.apache.activemq.store.kahadb.MessageDatabase | main


Using JenkinsHash:
2018-07-18 10:58:43,713 | INFO  | Recovering from the journal @1:28 | org.apache.activemq.store.kahadb.MessageDatabase | main
2018-07-18 10:58:51,302 | INFO  | @2:484592, 100000 entries recovered .. | org.apache.activemq.store.kahadb.MessageDatabase | main
2018-07-18 10:58:51,329 | INFO  | Recovery replayed 100453 operations from the journal in 7.618 seconds. | org.apache.activemq.store.kahadb.MessageDatabase | main



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)