Description
When we do an unclean leadership change (i.e., no live broker in ISR), offsets already exposed to consumers may no longer be valid. As a result, a consumer could either receive an OffsetOutOfRange exception or hit an InvalidMessageSizeException while iterating a fetched message set. In either case, we need to be able to recover the consumption (probably from the current latest offset from the leader). We need to recover both regular and follower consumers.