CreateObjectPool does not create pools on same storage as source in Praefect
CreateObjectPool creates an object pool from a source repository. While this works as expected on standalone Gitaly nodes, it falls apart in Gitaly Cluster. When the replication factor is smaller than the number of actual storage nodes proxied by Praefect's virtual storage, then the source repository will live on a randomly chosen subset of actual storages. Now when we create an object pool for such a source repository, the actual storages the object pools will be created on are chosen at random, as well. This means that in the worst case, the set of actual storages that the object pool lives on is completely disjunct from the set of actual storages that the source repository lives on. The consequence is that source repository and object pool cannot be linked together and thus no object deduplication happens.
We need to fix this by creating object pools on the same storages as the source repository.