We can now more precisely define that a message is considered committed when all in sync replicas for that partition have applied it to their log. Only committed messages are ever given out to the consumer. This means that the consumer need not worry about potentially seeing a message that could be lost if the leader fails. Producers, on the other hand, have the option of either waiting for the message to be committed or not, depending on their preference for tradeoff between latency and durability. This preference is controlled by the acks setting that the producer uses. Note that topics have a setting for the "minimum number" of in-sync replicas that is checked when the producer requests acknowledgment that a message has been written to the full set of in-sync replicas. If a less stringent acknowledgement is requested by the producer, then the message can be committed, and consumed, even if the number of in-sync replicas is lower than the minimum (e.g. it can be as low as just the leader).
The guarantee that Kafka offers is that a committed message will not be lost, as long as there is at least one in sync replica alive, at all times.
Это случай когда нету isr реплик и часто ставят dirty leader election
В итоге запись в мастер прошла, вы прочитали, реплики не подтянулись себе обновления и мастер упал
Дальше на стандартных настройках оказывается что выбрать мастера нельзя, так как данных последних нету
С unclear leader election выберется тот который больше данных держит и полетите дальше, допустима потеря данных