in elastic/shared/utils/corpus.py [0:0]
def bounds(total_docs, client_index, num_clients, ensure_even=False):
docs_per_client = math.floor(total_docs / num_clients)
if ensure_even and docs_per_client % 2 == 1:
docs_per_client += 1
if docs_per_client == 0:
docs_per_client = 1
start_offset_docs = math.floor(docs_per_client * client_index)
if start_offset_docs >= total_docs:
return 0, 0
end_offset_docs = total_docs
if client_index != num_clients - 1:
end_offset_docs = math.floor(docs_per_client * (client_index + 1))
num_docs = end_offset_docs - start_offset_docs
return start_offset_docs, num_docs