vamossagar12 opened a new pull request, #15677: URL: https://github.com/apache/kafka/pull/15677
Noticed in the build: https://ci-builds.apache.org/blue/organizations/jenkins/Kafka%2Fkafka-pr/detail/PR-15621/32/tests/ There are a lot of NPEs of the form: ``` [2024-04-05 21:08:58,617] WARN [RemoteLogManager=0 partition=C_F_5O-eSYWmgQoron0dOQ:test-topic-0] Current task for topic-partition C_F_5O-eSYWmgQoron0dOQ:test-topic-0 received error but it will be scheduled. Reason: Cannot invoke "org.apache.kafka.common.TopicPartition.topic()" because the return value of "kafka.log.UnifiedLog.topicPartition()" is null (kafka.log.remote.RemoteLogManager$RLMTask:829) [2024-04-05 21:08:58,622] ERROR Error occurred while reading the remote data for test-topic-0 (kafka.log.remote.RemoteLogReader:71) java.lang.NullPointerException: Cannot invoke "scala.Option.isDefined()" because "leaderEpochCache" is null at kafka.log.remote.RemoteLogManager.read(RemoteLogManager.java:1339) at kafka.log.remote.RemoteLogManager.read(RemoteLogManager.java:1325) at kafka.log.remote.RemoteLogReader.call(RemoteLogReader.java:62) at kafka.log.remote.RemoteLogReader.call(RemoteLogReader.java:31) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at java.base/java.lang.Thread.run(Thread.java:1583) [2024-04-05 21:08:58,623] ERROR Error occurred while reading the remote data for test-topic-0 (kafka.log.remote.RemoteLogReader:71) java.lang.NullPointerException: Cannot invoke "scala.Option.isDefined()" because "leaderEpochCache" is null at kafka.log.remote.RemoteLogManager.read(RemoteLogManager.java:1339) at kafka.log.remote.RemoteLogManager.read(RemoteLogManager.java:1325) at kafka.log.remote.RemoteLogReader.call(RemoteLogReader.java:62) at kafka.log.remote.RemoteLogReader.call(RemoteLogReader.java:31) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at java.base/java.lang.Thread.run(Thread.java:1583) [2024-04-05 21:08:58,623] ERROR Error occurred while reading the remote data for test-topic-0 (kafka.log.remote.RemoteLogReader:71) java.lang.NullPointerException: Cannot invoke "scala.Option.isDefined()" because "leaderEpochCache" is null at kafka.log.remote.RemoteLogManager.read(RemoteLogManager.java:1339) at kafka.log.remote.RemoteLogManager.read(RemoteLogManager.java:1325) at kafka.log.remote.RemoteLogReader.call(RemoteLogReader.java:62) at kafka.log.remote.RemoteLogReader.call(RemoteLogReader.java:31) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at java.base/java.lang.Thread.run(Thread.java:1583) [2024-04-05 21:08:58,624] ERROR Error occurred while reading the remote data for test-topic-0 (kafka.log.remote.RemoteLogReader:71) java.lang.NullPointerException: Cannot invoke "scala.Option.isDefined()" because "leaderEpochCache" is null at kafka.log.remote.RemoteLogManager.read(RemoteLogManager.java:1339) at kafka.log.remote.RemoteLogManager.read(RemoteLogManager.java:1325) at kafka.log.remote.RemoteLogReader.call(RemoteLogReader.java:62) at kafka.log.remote.RemoteLogReader.call(RemoteLogReader.java:31) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at java.base/java.lang.Thread.run(Thread.java:1583) [2024-04-05 21:08:58,625] ERROR Error occurred while reading the remote data for test-topic-0 (kafka.log.remote.RemoteLogReader:71) java.lang.NullPointerException: Cannot invoke "scala.Option.isDefined()" because "leaderEpochCache" is null at kafka.log.remote.RemoteLogManager.read(RemoteLogManager.java:1339) at kafka.log.remote.RemoteLogManager.read(RemoteLogManager.java:1325) at kafka.log.remote.RemoteLogReader.call(RemoteLogReader.java:62) at kafka.log.remote.RemoteLogReader.call(RemoteLogReader.java:31) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) at java.base/java.lang.Thread.run(Thread.java:1583) [2024-04-05 21:09:03,690] ERROR Error building remote log auxiliary state for test-topic-0 (kafka.server.ReplicaFetcherThread:76) org.apache.kafka.server.log.remote.storage.RemoteStorageException: Failed to build remote log aux at kafka.log.remote.RemoteLogManager.fetchRemoteLogSegmentMetadata(RemoteLogManager.java:443) at kafka.server.ReplicaFetcherTierStateMachine.buildRemoteLogAuxState(ReplicaFetcherTierStateMachine.java:229) at kafka.server.ReplicaFetcherTierStateMachine.start(ReplicaFetcherTierStateMachine.java:107) at kafka.server.AbstractFetcherThread.handleOffsetsMovedToTieredStorage(AbstractFetcherThread.scala:763) at kafka.server.AbstractFetcherThread.$anonfun$processFetchRequest$7(AbstractFetcherThread.scala:414) at scala.Option.foreach(Option.scala:437) at kafka.server.AbstractFetcherThread.$anonfun$processFetchRequest$6(AbstractFetcherThread.scala:333) at kafka.server.AbstractFetcherThread.$anonfun$processFetchRequest$6$adapted(AbstractFetcherThread.scala:332) at kafka.utils.Implicits$MapExtensionMethods$.$anonfun$forKeyValue$1(Implicits.scala:62) at scala.collection.MapOps.foreachEntry(Map.scala:244) at scala.collection.MapOps.foreachEntry$(Map.scala:240) at scala.collection.AbstractMap.foreachEntry(Map.scala:405) at kafka.server.AbstractFetcherThread.processFetchRequest(AbstractFetcherThread.scala:332) at kafka.server.AbstractFetcherThread.$anonfun$maybeFetch$3(AbstractFetcherThread.scala:131) at kafka.server.AbstractFetcherThread.$anonfun$maybeFetch$3$adapted(AbstractFetcherThread.scala:130) at scala.Option.foreach(Option.scala:437) at kafka.server.AbstractFetcherThread.maybeFetch(AbstractFetcherThread.scala:130) at kafka.server.AbstractFetcherThread.doWork(AbstractFetcherThread.scala:113) at kafka.server.ReplicaFetcherThread.doWork(ReplicaFetcherThread.scala:98) at org.apache.kafka.server.util.ShutdownableThread.run(ShutdownableThread.java:135) ``` When I ran the test locally as well, the NPEs were found once when the test had failed. I think adding the null check should fix the issue in this case. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
