Fix listDirHealFactory merging of entries across disks (#3959)
For listing of objects needing heal, we list all objects present on all the disks and return the set union. We were incorrectly dropping objects that weren't already seen in disks so far. Sample directory layout of disks in a 4-disk setup: `/tmp/1`, `/tmp/2`, `/tmp/3`, `/tmp/4` are directories used as disks here. `test` is the bucket, `obj1` and obj2` are the objects. ``` /tmp/1/test └── obj2 ├── part.1 ├── part.2 └── xl.json /tmp/2/test └── obj1 ├── part.1 ├── part.2 └── xl.json /tmp/3/test ├── obj1 │ ├── part.1 │ ├── part.2 │ └── xl.json └── obj2 ├── part.1 ├── part.2 └── xl.json /tmp/4/test [This is empty] ```master
parent
80b83a51a3
commit
4e92b2ecb8
Loading…
Reference in new issue