Bug #18547
closed[keep-balance] Avoid redundant indexing when multiple keepstore servers use a single NFS mount
Description
- s3://endpoint/bucketname, if the volume is an S3 bucket
- block device UUID, if the volume is a local filesystem
- empty, if the volume is a network-mounted filesystem
When the device ID is empty, the volumes might be different, so keep-balance indexes all of them.
Now that each keepstore server uses the same configuration file, each configured volume has a unique UUID, and the volume UUID is returned in the list of mounts reported by keepstore (none of which were true when the "device ID" approach started), keep-balance should detect identical/duplicate mounts by comparing volume UUIDs instead of device IDs.
(Note this will confuse keep-balance if the config uses a single volume UUID to mount a local disk like "/data" on multiple keepstore machines. But the install docs explicitly describe not doing that, and it is not a kind of configuration we want to support. Worst outcome is that someone with this kind of wonky config would see a lot of blocks misreported as underreplicated or missing by keep-balance until they fix their config.)