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

Seperate controller thread/manager events from controller events

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 2.4.0
    • None
    • controller
    • None

    Description

      The ControllerEventManager and the KafkaController are driven by processing ControllerEvent in the queue. As of right now the ControllerEventManager is responsible for handling ShutdownEventThread while the KafkaController handles all other events. Since we are using a sealed trait the scala compiler is able to check that all cases are handle in match expressions.

      To by pass this compiler feature the KafkaController is matching on ShutdownEventThread and ignoring the result. We should instead create two type of events. For example:

      sealed trait ControllerThreadEvent
      final case object ShutdownEventThread extends ControllerThreadEvent
      final case class ControllerEvent(event: ControllerEvent) extends ControllerThreadEvent
      

      And remove ShutdownEventThread from the ControlleveEvent sealed trait.

      Attachments

        Activity

          People

            jagsancio Jose Armando Garcia Sancio
            jagsancio Jose Armando Garcia Sancio
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: