Class TransactionManager

java.lang.Object
org.apache.kafka.clients.producer.internals.TransactionManager

public class TransactionManager extends Object
A class which maintains state for transactions. Also keeps the state necessary to ensure idempotent production.
  • Constructor Details

    • TransactionManager

      public TransactionManager(org.apache.kafka.common.utils.LogContext logContext, String transactionalId, int transactionTimeoutMs, long retryBackoffMs, org.apache.kafka.clients.ApiVersions apiVersions)
  • Method Details

    • initializeTransactions

      public TransactionalRequestResult initializeTransactions()
    • beginTransaction

      public void beginTransaction()
    • beginCommit

      public TransactionalRequestResult beginCommit()
    • beginAbort

      public TransactionalRequestResult beginAbort()
    • sendOffsetsToTransaction

      public TransactionalRequestResult sendOffsetsToTransaction(Map<org.apache.kafka.common.TopicPartition,OffsetAndMetadata> offsets, ConsumerGroupMetadata groupMetadata)
    • maybeAddPartition

      public void maybeAddPartition(org.apache.kafka.common.TopicPartition topicPartition)
    • transactionalId

      public String transactionalId()
    • hasProducerId

      public boolean hasProducerId()
    • isTransactional

      public boolean isTransactional()
    • maybeUpdateProducerIdAndEpoch

      public void maybeUpdateProducerIdAndEpoch(org.apache.kafka.common.TopicPartition topicPartition)
    • handleCompletedBatch

      public void handleCompletedBatch(ProducerBatch batch, org.apache.kafka.common.requests.ProduceResponse.PartitionResponse response)
    • transitionToUninitialized

      public void transitionToUninitialized(RuntimeException exception)
    • maybeTransitionToErrorState

      public void maybeTransitionToErrorState(RuntimeException exception)