Follow the PBS Pro Design Document Guidelines.
Links
- Link to discussion on Developer Forum: http://community.pbspro.org/t/call-execjob-end-event-hooks-when-releasing-unneeded-vnodes-from-a-job/2016
- Link to related design for releasing unneeded vnodes from a job: PP-339 and PP-647: node ramp down feature: release vnodes early from running jobs
- Link to pull request: <PR link if available>
Overview
Today when pbs_release_nodes (command), pbs_relnodesjob() (IFL), or release_nodes() (Python function) is used to release unneeded nodes from a job only the execjob_epilogue hook scripts will be executed on the early released nodes. The execjob_end hooks will not be executed on the early released nodes.
This enhancement will add a call to the hooks registered for an execjob_end event in case of early release of unneeded nodes from a job.
Why doesn't PBS just tell people to also register their execjob_end hooks for the execjob_epilogue event too?
Because the execjob_epilogue hook runs before files are staged out and before the job is cleaned up, which makes it too early for some end of job tasks (e.g. memory cleanup).
For example, on Shasta we know that memory cleanup can happen after PBS says to DELETE the job via the ATOM interface. It would be bad for that memory cleanup to occur at execjob_epilogue time before files are staged out.
Project Documentation Main Page