Sometimes ksqlDB queries run against Kafka topics return no results, or fewer messages than expected. This can happen because ksqlDB is unable to deserialize messages successfully.
ksqlDB writes deserialization error messages to a dedicated topic, and exposes stream KSQL_PROCESSING_LOG
to make them queriable. However, the messages from this topic are not very easy to interpret, among other things because the original record that failed deserialization is base64-encoded.
SELECT * FROM KSQL_PROCESSING_LOG LIMIT 1;
{