What is the officially recommended method to heartbeat using the new Java consumer during long message processing times?
I thought I could accomplish this by setting max.poll.records to 1 in the client, calling consumer.pause(consumer.assignment()) when starting to process a record, calling consumer.resume(consumer.paused()) when done processing a record and committing its offset, and calling consumer.poll(0) intermittently while processing the record. The testing shows that consumer.poll(0) will return records, rather than returning nil or an empty ConsumerRecords.