Uploaded image for project: 'Kafka'
  1. Kafka
  2. KAFKA-6838

Transaction timeout after punctuation results in ProducerFencedException

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Duplicate
    • Affects Version/s: 1.1.0
    • Fix Version/s: None
    • Component/s: streams
    • Labels:
      None

      Description

      It looks like the EOS/transaction handling for stream punctuation does not work correctly.

      We have encountered ProducerFencedException in a specific case where new events do not arrive before the transaction started by punctuation times out.

      Following squence of events trigger this scenario.

       1. Punctuation is triggered, we delete some records from the State store (logging enabled) . A transaction is registered on the broker. txnState=Ongoing
      2. There are no new events to be consumed (period of inactivity) and no new punctuation happening.
      3. Broker aborts the transaction after about 60000 ms  (default transaction timeout duration for the stream) , txnState=Ongoing -> txnState=PrepareAbort  ->  txnState=CompleteAbort
      4. A new event comes in and hits producer fenced exception
       
      Attached are the logs from the broker where a successful processing, along with transaction timeout and producer fencing is shown.
       
       

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                feli6 Felix Dsouza
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: