Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

 DeserializationExceptionHandler is configured via StreamsConfig, instantiated via TopologyConfig, passed to GlobalStateUpdateTask, and used during GlobalKTable deserialization.during GlobalKTable deserialization. No Global Processor exception is being handled. We will be replicating the same framework of initialization for ProcessingExceptionHandler in GlobalKTables.

 Proposed Extension

 The infrastructure for configuration, instantiation, and passing handlers to global processing already exists. This KIP simply extends it to include ProcessingExceptionHandler alongside the existing DeserializationExceptionHandler. ProcessingExceptionHandler will follow the identical pattern, enabling exception handling during GlobalKTable processor processing.

 Implementation

  Add ProcessingExceptionHandler as a constructor parameter to GlobalStateUpdateTask and pass it to processor initialization, mirroring the existing DeserializationExceptionHandler implementation.

...

This change is fully backward compatible:
  - Applications without a configured handler experience no behavior change
  - Applications with a configured handler automatically get GlobalKTable support
  - The handler interface is not modified - The handleError() method (introduced in KIP-1034) will be called for GlobalKTable exceptions. 
  - No new configuration properties are introduced

...