Hi, wer are using the high-level Java consumer. We feed the events received from Kafka into some sort of state machine. Since we have Kafka's guarantee that each partition is read by the same consumer, we want to keep the states in memory to achieve even higher throughput. So it is vital for us that either a partition is never moved from a running consumer or our code gets at least informed about that.
Does Kafka guarantee that a partition assigned to a consumer will stay at this consumer for the whole lifetime of the jvm? Even in corner cases like loosing connection to zookeeper? Regards, Peter