[ https://issues.apache.org/jira/browse/KAFKA-6131?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ismael Juma resolved KAFKA-6131. -------------------------------- Resolution: Fixed Fix Version/s: 1.1.0 0.11.0.2 1.0.0 > Transaction markers are sometimes discarded if txns complete concurrently > ------------------------------------------------------------------------- > > Key: KAFKA-6131 > URL: https://issues.apache.org/jira/browse/KAFKA-6131 > Project: Kafka > Issue Type: Bug > Components: core > Affects Versions: 0.11.0.1, 1.0.0 > Reporter: Rajini Sivaram > Assignee: Rajini Sivaram > Fix For: 1.0.0, 0.11.0.2, 1.1.0 > > > Concurrent tests being added under KAFKA-6096 for transaction coordinator > fail to complete some transactions when multiple transactions are completed > concurrently. > The problem is with the following code snippet - there are two very similar > uses of concurrent map in {{TransactionMarkerChannelManager}} and the test > fails because some transaction markers are discarded. {{getOrElseUpdate}} in > scala maps are not atomic. The test passes consistently with one thread. > {quote} > val markersQueuePerBroker: concurrent.Map[Int, TxnMarkerQueue] = new > ConcurrentHashMap[Int, TxnMarkerQueue]().asScala > val brokerRequestQueue = markersQueuePerBroker.getOrElseUpdate(brokerId, new > TxnMarkerQueue(broker)) > {quote} -- This message was sent by Atlassian JIRA (v6.4.14#64029)