1. 04 Aug, 2017 1 commit
    • Morris Jette's avatar
      Add step signal retry logic · 3301a6b1
      Morris Jette authored
      If prolog is running when attempting to signal a step, then return EAGAIN
         and retry rather than simply returning SLURM_ERROR and aborting.
      3301a6b1
  2. 03 Aug, 2017 1 commit
    • Morris Jette's avatar
      pack job step I/O race condition fix · 71a34f56
      Morris Jette authored
      Fix I/O race condition on step termination for srun launching multiple
         pack job groups. Without this change application output might be
         lost and/or the srun command might hang after some tasks exit.
      71a34f56
  3. 02 Aug, 2017 2 commits
  4. 01 Aug, 2017 3 commits
  5. 31 Jul, 2017 1 commit
  6. 28 Jul, 2017 3 commits
    • Danny Auble's avatar
      Fix issue when an alternate munge key when communicating on a persistent · 591dc036
      Danny Auble authored
      connection.
      
      Bug 4009
      591dc036
    • Alejandro Sanchez's avatar
      jobcomp/elasticsearch - save state on REQUEST_CONTROL. · 8944b77a
      Alejandro Sanchez authored
      jobcomp/elasticsearch saves/load the state to/from elasticsearch_state.  Since
      the jobcomp API isn't designed with save/load state operations, the plugin
      _save_state() isn't extern and not available from outside the plugin itself,
      thus it is highly coupled to fini() function. This state doesn't follow the
      same execution path as the rest of Slurm states, where in save_all_sate()
      they are all independently scheduled. So we save it manually here on a RPC
      of type REQUEST_CONTROL.
      
      This enables that when the Primary ctld issues a REQUEST_CONTROL to the Backup
      which is currently in controller mode, the Backup will save the state and when
      the Primary assumes control again it can process the saved pending jobs.  The
      other way around was already controlled, because when the Primary is running
      in controller mode and the Backup issues a REQUEST_CONTROL, the Primary is
      shutdown and when breaking the ctld main() function while(1) loop, there was
      already a g_slurm_jobcomp_fini() call in place.
      
      Bug 3908
      8944b77a
    • Morris Jette's avatar
      Perform pack job limits check at submit time · 058b99b6
      Morris Jette authored
      Perform limit check on heterogeneous job as a whole at submit time to
         reject jobs that will never be able to run. Accepting pack jobs
         that can never start will have a significant effect on scheduling
         in general (blocking the queue).
      058b99b6
  7. 27 Jul, 2017 1 commit
    • Alejandro Sanchez's avatar
      Fix bug when tracking multiple simultaneous spawned ping cycles · f7463ef5
      Alejandro Sanchez authored
      When more than 1 ping cycle is spawned simultaneously (for instance
      REQUEST_PING + REQUEST_NODE_REGISTRATION_STATUS for the selected nodes),
      we do not track a separate ping_start time for each cycle. When ping_begin()
      is called, the information about the previous ping cycle is lost. Then when
      ping_end() is called for the first of the two cycles, we set ping_start=0,
      which is incorrectly used to see if the last cycle ran for more than
      PING_TIMEOUT seconds (100s), thus incorrectly triggering the:
      
       error("Node ping apparently hung, many nodes may be DOWN or configured "
             "SlurmdTimeout should be increased");
      
      Bug 3914
      f7463ef5
  8. 26 Jul, 2017 4 commits
  9. 25 Jul, 2017 2 commits
    • Morris Jette's avatar
      pack job backfill scheduling fixes · 98435044
      Morris Jette authored
      Adds assocation and QOS limits for the pack job as a whole
      98435044
    • Morris Jette's avatar
      Clear job's reason of BeginTime · e4cb80f5
      Morris Jette authored
      Clear a job's "wait reason" value of BeginTime" after that time has
      passed. Previously a readon of "BeginTime" could be reported long
      after the job's requested begin time had passed (for so long as the
      current reason is "None".
      e4cb80f5
  10. 24 Jul, 2017 4 commits
  11. 21 Jul, 2017 3 commits
  12. 19 Jul, 2017 3 commits
  13. 18 Jul, 2017 3 commits
    • Dominik Bartkiewicz's avatar
      Fix issue with multiple jobs from an array to start. · b40bd8d3
      Dominik Bartkiewicz authored
      By removing the real locks we can get into a race condition where the prolog
      starts and finishes before we get here and then we end up waiting forever.
      
      Making the mutex a static seemed to help in many cases, but didn't
      completely close the window.  Changing slurm_cond_wait to
      slurm_cond_timedwait fixed the scenario where we would hit the window, but
      not degrade performance the original commit provides.
      
      There were also spots where if the job or step didn't exist it wouldn't
      signal the conditional also providing a spot this could get stuck not
      starting the job.
      
      Fix regression from commit 52ce3ff0
      
      Bug 3977
      b40bd8d3
    • Morris Jette's avatar
      Add srun env vars for pack job · b4992871
      Morris Jette authored
      b4992871
    • Morris Jette's avatar
      Updated RELEASE_NOTES file for v17.11 · d5bd9ced
      Morris Jette authored
      d5bd9ced
  14. 17 Jul, 2017 1 commit
  15. 14 Jul, 2017 4 commits
    • Tim Shaw's avatar
      Add PrivateData=events · 880ed315
      Tim Shaw authored
      880ed315
    • Morris Jette's avatar
      task state containers modified for pack jobs · dba6a2ce
      Morris Jette authored
      Major re-write of task state container logic to support for list of
        containers rather than one container per srun command.
      dba6a2ce
    • Isaac Hartung's avatar
      Daemons re-open log files on receipt of SIGUSR2 · dc6e5ec2
      Isaac Hartung authored
      Modify all daemons to re-open log files on receipt of SIGUSR2 signal.  This
          is much than using SIGHUP to re-read the configuration file and rebuild
          various tables.
      bug 3070
      dc6e5ec2
    • Danny Auble's avatar
      Fix issue with whole gres not being printed out with Slurm tools. · 028bf3e1
      Danny Auble authored
      This is a regression from commit fec995e0.
      
      It turns out using tok here was erroneous for situations where the gres had
      a type and name and potentially a count (i.e. network:gigabit:1)
      
      _get_gres_req_cnt() would alter the incoming char *config which is what tok
      was.  So when we print it back to the requested string it would only have
      what was there to the first ':'.  As we didn't need to \0 out the first char
      as we skip over it anyway I just kept track of what the replaced \0 was for
      the number portion and put it back when we are done copying it.
      
      Related to bug 3521
      028bf3e1
  16. 13 Jul, 2017 4 commits