Hi all,
I ran into an issue while using GlobalKTable and wanted to check if this is 
expected or if there’s a better way to handle it.
During startup, GlobalKTable restores all data from the topic into the state 
store. In my case, records are successfully deserialized, but when Kafka 
Streams tries to serialize them again for the state store, it fails (e.g., 
Schema Registry returns “schema not found”).
This causes the GlobalStreamThread to fail and the application goes into ERROR 
state.
What I noticed:

  *
Deserialization errors can be handled via DeserializationExceptionHandler
  *
Processing errors via ProcessingExceptionHandler
  *
But errors during state store writes / restore are not handled
  *
Even with handlers configured, this still results in a fatal failure

This becomes a problem especially with:

  *
GlobalKTable (full topic restore)
  *
Compacted topics
  *
External dependencies like Schema Registry

My question: Is this the expected behavior, or is there any recommended way to 
handle such cases (e.g., skip/retry)?
If not, would it make sense to introduce some form of error handling for the 
restore phase as well?
Thanks,
Ankur

Reply via email to