This project is mirrored from https://gitee.com/mirrors/nomad.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
  1. 23 Dec, 2021 3 commits
    • Michael Schurter's avatar
      fd1c71dc
    • Tim Gross's avatar
      task runner: fix goroutine leak in prestart hook (#11741) · 631db25e
      Tim Gross authored
      The task runner prestart hooks take a `joincontext` so they have the
      option to exit early if either of two contexts are canceled: from
      killing the task or client shutdown. Some tasks exit without being
      shutdown from the server, so neither of the joined contexts ever gets
      canceled and we leak the `joincontext` (48 bytes) and its internal
      goroutine. This primarily impacts batch jobs and any task that fails
      or completes early such as non-sidecar prestart lifecycle tasks.
      Cancel the `joincontext` after the prestart call exits to fix the
      leak.
      631db25e
    • Tim Gross's avatar
      deps: upgrade go-getter to 1.5.10 (#11740) · 000354a7
      Tim Gross authored
      The `go-getter` library was updated to 1.5.9 in #11481 to pick up a
      bug fix for automatically unpacking uncompressed tar archives. But
      this version had a regression in git `ref` param behavior and was
      patched in 1.5.10.
      000354a7
  2. 22 Dec, 2021 3 commits
  3. 21 Dec, 2021 3 commits
    • Luiz Aoqui's avatar
    • Shishir's avatar
    • Tim Gross's avatar
      scheduler: fix quadratic performance with spread blocks (#11712) · 2d4e5b8f
      Tim Gross authored
      When the scheduler picks a node for each evaluation, the
      `LimitIterator` provides at most 2 eligible nodes for the
      `MaxScoreIterator` to choose from. This keeps scheduling fast while
      producing acceptable results because the results are binpacked.
      
      Jobs with a `spread` block (or node affinity) remove this limit in
      order to produce correct spread scoring. This means that every
      allocation within a job with a `spread` block is evaluated against
      _all_ eligible nodes. Operators of large clusters have reported that
      jobs with `spread` blocks that are eligible on a large number of nodes
      can take longer than the nack timeout to evaluate (60s). Typical
      evaluations are processed in milliseconds.
      
      In practice, it's not necessary to evaluate every eligible node for
      every allocation on large clusters, because the `RandomIterator` at
      the base of the scheduler stack produces enough variation in each pass
      that the likelihood of an uneven sprea...
      2d4e5b8f
  4. 20 Dec, 2021 6 commits
  5. 18 Dec, 2021 7 commits
  6. 17 Dec, 2021 8 commits
  7. 16 Dec, 2021 9 commits
  8. 15 Dec, 2021 1 commit
    • Tim Gross's avatar
      `nomad eval list` command (#11675) · 97621ec3
      Tim Gross authored
      Use the new filtering and pagination capabilities of the `Eval.List`
      RPC to provide filtering and pagination at the command line.
      
      Also includes note that `nomad eval status -json` is deprecated and
      will be replaced with a single evaluation view in a future version of
      Nomad.
      97621ec3