Only wait for the lock when there was actually batches enqueued
Only wait for the lock when there was actually batches enqueued

It is possible for fetch to have requests with no batches: If a seek happens
between `fetch` processing the known seek offsets and the actual request checking
the partitions and skipping any that have a seek offset _at that point_ the protection
against empty requests isn't enough.

In this case we must not wait for the lock here, because there won't be any task
that can unlock it, and in result we end up with never fetching again for this specific
group.

This fixes the issue seen with https://kafkajs.slack.com/archives/CF6RFPF6K/p1584530032102400

tulios/kafkajs,tulios/kafkajs,tulios/kafkajs,tulios/kafkajs