Kafka
  1. Kafka
  2. KAFKA-937

ConsumerFetcherThread can deadlock

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.8.0
    • Fix Version/s: 0.8.0
    • Component/s: core
    • Labels:
      None

      Description

      We have the following access pattern that can introduce a deadlock.

      AbstractFetcherThread.processPartitionsWithError() ->
      ConsumerFetcherThread.processPartitionsWithError() ->
      ConsumerFetcherManager.addPartitionsWithError() wait for lock ->
      LeaderFinderThread holding lock while calling AbstractFetcherManager.shutdownIdleFetcherThreads() ->
      AbstractFetcherManager calling fetcher.shutdown, which needs to wait until AbstractFetcherThread.processPartitionsWithError() completes.

      1. kafka-937_ConsumerOffsetChecker.patch
        1 kB
        Jun Rao
      2. kafka-937_delta.patch
        1 kB
        Jun Rao
      3. kafka-937.patch
        8 kB
        Jun Rao

        Activity

        Jun Rao created issue -
        Jun Rao made changes -
        Field Original Value New Value
        Attachment kafka-937.patch [ 12586957 ]
        Jun Rao made changes -
        Status Open [ 1 ] Patch Available [ 10002 ]
        Jun Rao made changes -
        Resolution Fixed [ 1 ]
        Status Patch Available [ 10002 ] Resolved [ 5 ]
        Fix Version/s 0.8 [ 12317244 ]
        Jun Rao made changes -
        Attachment kafka-937_delta.patch [ 12589364 ]
        Jun Rao made changes -
        Attachment kafka-937_ConsumerOffsetChecker.patch [ 12589544 ]
        Jun Rao made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            Jun Rao
            Reporter:
            Jun Rao
          • Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development