Closed DMWMBot closed 12 years ago
riahi: The user DN is also needed.
metson: It needs to be the CMS name not the SE.
sfoulkes: You'll need to do a couple things:
WMCore/WMSpec/WMStep.py
WMCore/WMSpec/StdSpecs/StdBase.py
WMCore/WMSpec/StdSpecs/Analysis.py
WMCore/WMSpec/Steps/Executor.py
WMCore/FwkJobReport/Report.py
metson: asyncSource should be included also - this should be the CMS name of the site the job ran at.
riahi: Actually, the SE name of the site where the job ran is in FWJR and mapped therefore in JSM DB. The conversion from SE name to CMS name cannot be done in the WN (when the FWJR is built) since Phedex API in WMCore depend on httplib2 and it is not installed by default in WNs. So Maybe:
evansde: Looking things up from a central service on the WN is basically a DDoS attack on that service with enough jobs.
The components should keep a cache of SE:CMS name somewhere and just do the conversion at the agent side when you pull it from the JSM. Doing this in the async module makes the most sense, since doing it in the JSM will do it for all jobs wether it is needed or not, which will introduce overhead.
riahi: comment/question about this point:
WMCore/WMSpec/Steps/Executor.py
* Modify the post() method to copy the asyncDN and asyncDest to the FWJR for each output module in the report
evansde: Execute is for the execution of whatever you are doing, running binaries etc. Post is after execution logic, the main difference being that post can alter the flow of work in the job by returning the next step to execute.
In this case, you probably want to update the report with the async files after the job has run and you have made sure it was sucessful, which fits in with checking that things worked in the step specific post method
riahi: Please review. Patches are enclosed to the ticket.
To allow the async. stage-out of user outputs, it is needed to add the CMS SE name (something like asynchDestination attribute) to the stageOut step in the spec and modify the stage out runtime code to add the aynchDestination attribute to each output module in the FWJR.