Skip to content

Gopi Gorantala

I'm Gopi — 15+ years in Java, building Kafka and Flink platforms for banks, where one lost event is a financial discrepancy. I write javahandbook.com because the guides I needed didn't exist. Everything here is tested against a real cluster first.

Kafka TimeoutException: Expiring N record(s) — Cause and Fix

Kafka producer failing with TimeoutException: Expiring N record(s): ms has passed since batch creation? What delivery.timeout.ms really does — and the fix.

Kafka: Subscription to Topics, Partitions and Pattern Are Mutually Exclusive

Kafka throws IllegalStateException: Subscription to topics, partitions and pattern are mutually exclusive when you mix subscribe() and assign(). Here's the fix.

Kafka InitProducerId Timeout: Why It Hangs and the Fix

Kafka producer throws 'Timeout expired after 60000ms while awaiting InitProducerId' and initTransactions() hangs on startup. Here's the real root cause and the fix.

Kafka LEADER_NOT_AVAILABLE: Why It Happens and How to Fix It

Kafka LEADER_NOT_AVAILABLE floods your producer logs the moment you write to a fresh topic. Here's the exact cause, the reproduction, and the real fix.

Kafka UnknownMemberIdException: Why It Happens and How to Fix It

Kafka UnknownMemberIdException — 'The coordinator is not aware of this member' (code 25). Learn the three triggers, the memberId lifecycle, and the exact fix.

Kafka Streams: A Serializer Is Not Compatible to the Actual Type

Kafka Streams throws 'A serializer is not compatible to the actual key or value type' or 'ClassCastException invoking Processor'. Here's the SerDe fix.

Kafka Streams TaskCorruptedException: Fix and Prevent It

Kafka Streams TaskCorruptedException wipes local state and re-restores from the changelog. Here's why it fires under EOS, how to fix it, and how to stop it.

Kafka OffsetOutOfRangeException: auto.offset.reset Explained

Fix OffsetOutOfRangeException and NoOffsetForPartitionException in Kafka: why committed offsets vanish, what auto.offset.reset really does, and safe resets.

Kafka TopicExistsException: Why It Happens and How to Fix It

Kafka TopicExistsException: Topic 'X' already exists. Why AdminClient, Spring KafkaAdmin, and kafka-topics.sh throw it, and how to handle it idempotently.

Kafka Streams RocksDBException: Too Many Open Files Fix

Kafka Streams dying with ProcessorStateException and RocksDBException 'Too many open files'? Here's the file-descriptor math and the config setter that fixes it.