@forhas Thanks for confirming
Basically from the documentation the way they iterate over the consumed message is given as below
ConsumerIterator<byte[], byte[]> it = m_stream.iterator();
while (it.hasNext())
System.out.println("Thread " + m_threadNumber + ": " + new String(it.next().message()));
And it also state that
The interesting part here is the while (it.hasNext()) section. Basically this code reads from Kafka until you stop it
..
So ideally it should be keep on running unless and until we kill it explicitly and once a new message has been produced the same would be available on the consumer side.