Apache Flink StateFun 3.4.0-KZM-3.5 adds policy to handle bad Kafka records gracefully
A long-standing flaw in Apache Stateful Functions caused an entire Flink job to crash and loop indefinitely whenever a single malformed Kafka record — such as one with a null key or a tombstone value — was encountered. Because Flink runs multiple pipelines as one unit, one bad record on one topic could take down unrelated workloads like order tracking, notifications, and billing. The new release, StateFun Actors 3.4.0-KZM-3.5, introduces an invalidRecordHandling configuration option at both the ingress and per-topic level, letting operators choose between skipping bad records with a log entry or halting the job with full record coordinates. The default behavior is now skip-with-log-and-metric rather than crash, with Prometheus-compatible counters and labels to alert on the specific producer and defect type. Teams relying on job restarts as a bad-data signal are advised to migrate their alerts to the new numInvalidRecordsSkipped metric, or explicitly set type: fail to preserve the previous strict behavior.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.
Discussion (0)
Log in to join the discussion and vote.
Log in