The unique name allocator may be causing unnecessary ZooKeeper contention when large numbers of unique names are needed. The allocator uses a fixed batch size of 100 + some jitter. Allowing the allocation block to be changed could reduce ZooKeeper calls by allowing larger name blocks to be allocated with a single call.
Some challenges:
- The allocator is used in multiple services and one block size fits all may not be appropriate. It may be that major compactions and bulk imports would benefit most from a larger name block?
- If the value stored in ZooKeeper to allow changes, what prefex should be used because the allocator does not fit within a single service.
The need for this may be reduced with PR #3720 - but there may be additional benefits with allowing a larger block size in some instances.
The unique name allocator may be causing unnecessary ZooKeeper contention when large numbers of unique names are needed. The allocator uses a fixed batch size of 100 + some jitter. Allowing the allocation block to be changed could reduce ZooKeeper calls by allowing larger name blocks to be allocated with a single call.
Some challenges:
The need for this may be reduced with PR #3720 - but there may be additional benefits with allowing a larger block size in some instances.