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

Encountered quorum controller fault: incrementalAlterConfigs .. RuntimeException: 'value' field is too long to be serialized

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 4.0.0
    • None
    • kraft
    • None

    Description

      On a topic with a large number of partitions (5000) by repeatedly invoking
      ReassignPartitionsCommand.modifyTopicThrottles
      each time with a new set of replica throttles,
      the Quorum controller attempts to write a ConfigRecord that is too large :
       
      [2024-11-14 15:34:41,612] ERROR Encountered quorum controller fault: incrementalAlterConfigs: event failed with RuntimeException (treated as UnknownServerException) at epoch 24 in 75784 microseconds. Renouncing leadership and reverting to the last committed offset 214588. (org.apache.kafka.server.fault.LoggingFaultHandler)
      java.lang.RuntimeException: 'value' field is too long to be serialized
          at org.apache.kafka.common.metadata.ConfigRecord.addSize(ConfigRecord.java:192)
          at org.apache.kafka.common.protocol.Message.size(Message.java:51)
          at org.apache.kafka.server.common.serialization.AbstractApiMessageSerde.recordSize(AbstractApiMessageSerde.java:66)
          at org.apache.kafka.server.common.serialization.AbstractApiMessageSerde.recordSize(AbstractApiMessageSerde.java:43)
          at org.apache.kafka.raft.internals.BatchBuilder.bytesNeededForRecords(BatchBuilder.java:340)
          at org.apache.kafka.raft.internals.BatchBuilder.bytesNeeded(BatchBuilder.java:136)
          at org.apache.kafka.raft.internals.BatchAccumulator.maybeAllocateBatch(BatchAccumulator.java:186)
          at org.apache.kafka.raft.internals.BatchAccumulator.append(BatchAccumulator.java:146)
          at org.apache.kafka.raft.KafkaRaftClient.append(KafkaRaftClient.java:3334)
          at org.apache.kafka.raft.KafkaRaftClient.prepareAppend(KafkaRaftClient.java:3320)
          at org.apache.kafka.controller.QuorumController$ControllerWriteEvent.lambda$run$0(QuorumController.java:806)
          at org.apache.kafka.controller.QuorumController.appendRecords(QuorumController.java:891)
          at org.apache.kafka.controller.QuorumController$ControllerWriteEvent.run(QuorumController.java:800)
          at org.apache.kafka.queue.KafkaEventQueue$EventContext.run(KafkaEventQueue.java:132)
          at org.apache.kafka.queue.KafkaEventQueue$EventHandler.handleEvents(KafkaEventQueue.java:215)
          at org.apache.kafka.queue.KafkaEventQueue$EventHandler.run(KafkaEventQueue.java:186)
          at java.base/java.lang.Thread.run(Thread.java:840)

       

      the adminClient receives an  UnknownServerException:

       

      Error: org.apache.kafka.common.errors.UnknownServerException: The server experienced an unexpected error when processing the request.
      java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.UnknownServerException: The server experienced an unexpected error when processing the request.
          at java.base/java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:396)
          at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2073)
          at org.apache.kafka.common.internals.KafkaFutureImpl.get(KafkaFutureImpl.java:155)
          at org.apache.kafka.tools.reassign.ReassignPartitionsCommand.modifyTopicThrottles(ReassignPartitionsCommand.java:1112)

      Attachments

        Activity

          People

            Unassigned Unassigned
            ecomar Edoardo Comar
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: