some random ideas for minor performance improvements around metainfo requests:
GetBucket is reading from DB all possible fields (ID, PartnerID and smaller fields like pathcipher, etc.). Currently uplink is using only Name and Created. We have lot of requests to GetBucket method so any reduction in DB and network load could be helpful. I think this method is called so many times because of gateway (its using it to check bucket existence) so maybe another option would be to prepare private method for gateway to check bucket existencehttps://review.dev.storj.io/c/storj/storj/+/6017
another place is DownloadObject is always requesting metabase.ListStreamPositions, maybe we can avoid this request for single segment objects and use metabase.GetSegmentByOffset as a replacement for two requests: ListStreamPositions and GetSegmentByPosition
GetObject method is using metabase.GetObjectLatestVersion, maybe metabase.GetObjectExactVersion would be slightly faster
Migrated from PG-280