Open matz-e opened 8 years ago
Drawback: This will not work, anymore:
>>> s.expand_site("srm://T3_US_NotreDame/store/user/foo")
u'srm://deepthought.crc.nd.edu:8443/srm/v2/server?SFN=/hadoop/store/user/foo'
@khurtado: can URL matching be done via SiteDB or other WMCore means? This would be nice to retain.
Why doesn't that work?
I'm trying to understand what the actual problem is here (i.e. which protocol(s) do you not think are being correctly resolved). The one you posted above looks correct to me.
I meant that the SiteDB methods don't allow to get the path manipulation the same way that the SITECONF files do… With the above, there's no worries what the exact path prefix for the SRM instance is, and you can just swap out T3_US_NotreDame
and T2_CH_CERN
without any further action (like removing the hadoop/
part).
What's wrong with SITECONF?
The XrootD protocol resolves to xrootd.unl.edu
, but I don't think we're registered in the re-director.
Right. That's not a bug. That's what we've decided to do with our SITECONF. If we want to fix it, we just need to add more xrootd
lines to that file.
Be aware that protocol mappings in SITECONF are not one-to-one because SITECONF allows the concept off fallback. We should probably have three (or maybe two) lines in our SITECONF for xrootd
:
Do we still ship a custom SITECONF with Lobster jobs? If so, you can hack that one to try out different options.
This is done on the master to resolve CMS names you pass in the StorageConfiguration
constructor…
Multiple matches we could probably treat within Lobster, next week or later.
Right. We just need to update our local SITECONF. (We should do that anyway.) And you'll defintely want to update the Lobster code to account for the fact that if you ask for the xrootd
protocol, you should expect a list, not a single entry. I agree this doesn't need to happen this week as we can just manually set xrootd
to deepthought in the storage list. (That's actually how I've always done it when I wanted access to our local storage.)
Anyway, to fill out the remainder of the issues discussed, I would advise AGAINST using SiteDB as I don't believe any other CMS service extracts any information from SiteDB. WMCore uses the following url to resolve requests (same info as SITECONF):
The drawback there is that the URL above extracts its info from a DB that's only updated when we give a new storage.xml file to the folks operating the central PhEDEx service for T3 sites.
SITECONF is really the best place to get this from.
I suppose I'm proposing changing the name of this issue to update SITECONF parsing to account for multiple options (i.e. fallback) for each protocol. :)
And, we need to bug Sergei and Kenyi to help us get ND's SITECONF updated. We should probably do this anyway to account for the cache.
We should have the SITECONF parsing account for multiple resolutions per protocol, and also properly use these on the worker…