Skip to content

Exceptions

All errors raised by minikafka derive from MinikafkaError.

minikafka.MinikafkaError

Bases: Exception

Base class for minikafka errors.

minikafka.SchemaMismatchError

Bases: MinikafkaError

Raised when a topic exists with incompatible schema or configuration.

minikafka.DuplicateMessageError

Bases: MinikafkaError

Raised when a message violates a topic's deduplication constraint.

minikafka.FanOutError

FanOutError(failures: list[FanOutFailure])

Bases: MinikafkaError

Raised at the end of a best_effort FullPipeline run if any sibling raised.

Successful sibling writes are preserved. Parent rows are marked handled only when every sibling succeeded; rows with any failure stay new so a corrected run can retry them.

Source code in src/minikafka/core.py
def __init__(self, failures: list[FanOutFailure]):
    self.failures: list[FanOutFailure] = list(failures)
    super().__init__(self._format())