Merge pull request #40 from arvidn/poll-batch-performance

improve performance of Consumer::poll_batch()
This commit is contained in:
Matias Fontanini
2018-03-17 15:41:21 -07:00
committed by GitHub

View File

@@ -214,12 +214,14 @@ vector<Message> Consumer::poll_batch(size_t max_batch_size, milliseconds timeout
raw_messages.size());
if (result == -1) {
check_error(rd_kafka_last_error());
// on the off-chance that check_error() does not throw an error
result = 0;
}
vector<Message> output;
raw_messages.resize(result);
output.reserve(result);
for (const auto ptr : raw_messages) {
if (ptr) {
output.emplace_back(ptr);
}
output.emplace_back(ptr);
}
return output;
}