PP-374: Job with a root-owned script runs even if root_reject_scripts set to true

Target releaseFuture release/17.0
Epic

PP-374 - Job with a root-owned script runs even if root_reject_scripts set to trueN PROGRESS

Document status
DRAFT
Document OwnerNithin Johnson


Update attribute comment with "Job was sent for execution at $time on $execvnode" just before sending job for execution.


EDD

Interface1: Update attribute comment with "Job was sent for execution at $time on $execvnode" just before sending job for execution

  • Visibility: Public
  • Change Control: Stable
  • Synopsis: Before sending the job for execution to vnode the attribute comment should say, "Job was sent for execution at $time on $execvnode"
  • Details: From 17.0 release, The job comment will say that "Job was sent for execution at $time on $execvnode" if the job is being sent for execution.
    • Existing Behavior.
      • In Pre-13.0 PBS where we have only synchronous mode of communication, Scheduler will update the comment as "Job run at $time on $execvnode" after getting a positive reply from server.
      • After introducing asynchronous mode of communication scheduler will not receive an instant reply from server but still comment is updated saying it's success even if it is going to be failed.
      • This comment is erroneous which may mislead the admin/user.
    • Solution.
      • Going forward the comment will be updated in the server (instead of scheduler) as "Job run at $time on $execvnode" only after getting a positive response from mom.
      • Similarly the comment is updated with "Not Running: PBS Error: Execution server rejected request" from server if it is a failure reply from mom.
      • In case of failure, the jobs will be retried again in the coming scheduling cycles, so the job comment should be updated before sending for execution. Otherwise it will hold the old failure message but the state will be updated as "R"
      • Just before sending for execution, job should get updated with a new status "Job was sent for execution at $time on $execvnode" to avoid the confusion.
    • note: server log and tracejob used to print the following message when scheduler updates the job comment attribute.
    • "Job Modified at request of Scheduler"
    • But this will no longer happen as the job comment attribute update will be done by the server instead of scheduler.