After KIP-62 /
KAFKA-3888 is merged in, Kafka Streams should leverage this new feature to fix the session timeout issue that can be caused by:
1. long rebalance period due to state store restoration.
2. exceptional long processing time for a batch of records.
Also we need to consider:
1. state store directory locking mechanism between rebalances while one instance is grabbing tasks from another instance on the same machine.
2. exceptional handling in Kafka Streams: what should we really expose to users and what should be handled automatically?