You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "li xiangyuan (Jira)" <ji...@apache.org> on 2023/04/17 09:33:00 UTC

[jira] [Created] (KAFKA-14914) binarySearch in AbstactIndex may execute with infinite loop

li xiangyuan created KAFKA-14914:
------------------------------------

             Summary: binarySearch in AbstactIndex may execute with infinite loop
                 Key: KAFKA-14914
                 URL: https://issues.apache.org/jira/browse/KAFKA-14914
             Project: Kafka
          Issue Type: Bug
          Components: core
    Affects Versions: 2.4.0
            Reporter: li xiangyuan
         Attachments: stack.1.txt, stack.2.txt, stack.3.txt

Recently our servers in production environment may suddenly stop handle request frequently(for now 3 times in less than 10 days),   please check the stack file uploaded, it show that 1 ioThread(data-plane-kafka-request-handler-11) hold  the ReadLock of Partition's leaderIsrUpdateLock and keep run the binarySearch function, once any thread(kafka-scheduler-2) need WriteMode Of this lock, then all requests read this partition need ReadMode Lock will use out all ioThreads and then this broker couldn't handle any request.

the 3 stack files are fetched with interval  about 6 minute, with my standpoint i just could think obviously the  binarySearch function cause dead lock and I presuppose maybe the index block values in offsetIndex (at least in mmap) are not sorted.

 

detail information:

this problem appear in 2 brokers

broker version: 2.4.0

jvm: openjdk 11

hardware: aws c7g 4xlarge, this is a arm64 server, we recently upgrade our servers from c6g 4xlarge to this type, when we use c6g haven't meet this problem, we don't know whether arm or aws c7g server have any problem.

other: once we restart broker, it will recover, so we doubt offset index file may not corrupted and maybe something wrong with mmap.

plz give any suggestion solve this problem, thx.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)