The causes of consumer failure can vary.
For example, the consumer cannot process the message because a downstream microservice API is unavailable, returns an error or a database it attempts to connect is unavailable or unresponsive, or the consumer expects the message payload to be in a specific format.
Still, the producer has changed the format of the message, for example, by removing a required field.
Hence, the consumer cannot deserialize the message sent by the producer in that format.
If the Kafka consumer crashes, its partitions are reassigned to another member, who starts consumption from the last committed offset of each partition.
If the consumer crashes before committing any offsets, the consumer who controls the partitions will apply the reset policy to the Kafka cluster.
If the Memphis consumer crashes, its partitions are reassigned to another member, who starts consumption from the last committed offset of each partition and tries to establish the connection between all the parameters of the station and client, like the host, port, and stationName.