Now, we create a new object store per copy operation. That is costly, especially if you use token based auth (you request a new token per each copy).
We can cache object stores per postgres session. Probably per bucket (or container) as different buckets generally have different credentials.