Wednesday, August 31, 2016

65.7

Summary

Output file extraction from JSON can now handle missing ‘nentries’
- Previously it required that ’nentries’ was a key in the dictionary
- Requested by R. Walker

Site mover updates from A. Anisenkov
- Fixed issue with proper parsing output of checksum calculation command [lcgcp mover issues]
- Fixed logic of replica URL construction for explicitly defined protocols (SE+path) at the level of PandaQueue (PQ.aprotocols settings) [dcap issues]
- Hotfix for default ddm.endpoint path (force to check and fix '/rucio/' part)
- Fixed logic to construct input replica URL (ignore input protocol.path if found replica belongs to different ddmendpoint)
- Direct access logic updates (allow direct access only for root, dcache or dcap input replicas)

HPC event service updates from W. Guan
- Traces for object store transfers
- Now using helper thread to separate I/O operation from main Yoda and EventServiceManager thread
  * I/O operations (writing files) is the main issue which slows down message handling in Yoda and EventServiceManager
- Status added to aRC metadata fixing the problem where 'failed' events were not reported
- New Yoda scheduler
  * 90% ranks use big job first to avoid a lot of restarts, 10% ranks use small jobs first to finish small jobs. If all ranks use big jobs first, small jobs may have no chance to run in the situation that Yoda oversubscribes events
- Fixed the problem with reporting job.nevents
- Fixed setting wrong ‘transferring’ state for some jobs
- Fixed bug to recover Yoda jobs
  * When Yoda MPI job is running, the pilot on the frontend node can be killed. The recovery function is used to recover this situation. A bug was introduced with tar/zip function. In recovery situation it could not handle tar/zip

Version info

PoolFileCatalog updates: NOTE: these changes became unnecessary when Marcin Nowak fixed the actual problem
- Removing any paths from filenames in verifyPFCIntegrity() (Mover)
- Setting absolute path for guidfname[guid] in mover_get_data() and _mover_get_data_new() (Mover) [change retracted]
- Discussed in ticket: https://its.cern.ch/jira/browse/ATEAM-313
- Summary: it was observed that AthenaMP jobs can't process more than one input file, at least when running DAOD building.
- Solution: pilot writes explicit absolute paths for files listen in PoolFileCatalog

Nentries update:
- Updated extractOutputFilesFromJSON() to handle missing nentries in jobReport (FileHandling)

Updates from Wen Guan (1):
- Test cpuconsumptiontime from proc
- Tight yoda job scheduling
- Send user signal to Yoda before job finished
- Yoda fixes, signal handler, arc fix
- ARC non-mpi should not reserve cores
- Using different name when update events
- Fix ES on ARC, enable os report
- Enable arc to support es_to_zip
- Fix that parameters values in sub-class not update in parent class, fix ARC issue
- Enable Yoda to support ARC
- Finalize cpuconsumption time, fix es log path
- Enable ARC to support ES
- Local parameters
- Disable log copying

- Rollback some changes

File changes from Wen Guan:
M ATLASSiteInformation.py (15)
M EventRanges.py (14)
M EventServiceFactory.py (3)
M HPC/EventServer/EventServerJobManager.py (90)
M HPC/HPCJob.py (5)
M HPC/HPCManager.py (9)
M HPC/HPCManagerPlugins/slurm.py (1)
M HPC/pandayoda/yodacore/Interaction.py (54)
M HPC/pandayoda/yodacore/Yoda.py (104)
M HPC/pandayoda/yodaexe/Droid.py (46)
M HPC/pandayoda/yodaexe/DroidStager.py (83)
M JobLog.py (2)
M Mover.py (22)
M PandaServerClient.py (56)
M RunJob.py (20)
M RunJobEvent.py (26)
M RunJobHpcEvent.py (172)
M RunJobHpcarcEvent.py (6)
M S3ObjectstoreSiteMover.py (4)
M UpdateHandler.py (2)
M pUtil.py (26)

Updates from Wen Guan (2):

- fix lost heartbeat
- fix error when sys.stderr closed
- fix status for ERR_ messages
- atomic jobmetrics and jobtimestamp
- fix problem that current directory doesnot exist
- clean s3objectstore sitemover
- fix curl tls in different systems
- fix zombie process in timercommand
- debug and fix threadpool issue
- fix timer command
- use new os functions to get espath

File Changes

M HPC/EventServer/EventServerJobManager.py (2)
M HPC/pandayoda/yodacore/Yoda.py (49)
M HPC/pandayoda/yodaexe/Droid.py (6)
M Monitor.py (28)
M RunJobHpcEvent.py (53)
M S3ObjectstoreSiteMover.py (12)
M ThreadPool.py (319)
M TimerCommand.py (15)
M UpdateHandler.py (12)
M pUtil.py (58)

Updates from Alexey Anisenkov:

Site movers logic updates and bugfixes:
- fixed issue with proper parsing output of check sum calculation command (output suppression of setup command) [lcgcp mover issues]
- fixed logic of replica url construction for explicitly defined protocols (SE+path) at the level of PandaQueue (PQ.aprotocols settings) [dcap issues]
- hotfix for default ddm.endpoint path (force to check and fix '/rucio/' part)
- fixed logic to construct input replica url (ignore input protocol.path if found replica belongs to different ddmendpoint)
- direct access logic updates (allow direct access only for root, dcache or dcap input replicas)

File Changes

M Job.py (10)
M movers/base.py (21)
M movers/mover.py (21)







No comments: