Skip to content
Snippets Groups Projects
  1. Sep 07, 2012
    • Iustin Pop's avatar
      Fix bug in non-mirrored instance allocation · 14b5d45f
      Iustin Pop authored
      
      The function `allocateOnSingle' has a bug in the calculation of the
      cluster score used for deciding which of the many target nodes to use
      in placing the instance: it uses the original node list for the score
      calculation.
      
      Due to this, since the original node list is the same for all target
      nodes, it means that basically `allocateOnSingle' returns the same
      score, no matter the target node, and hence the choosing of the node
      is arbitrary, instead of being done on the basis of the algorithm.
      
      This has gone uncaught until reported because the unittests only test
      1 allocation at a time on an empty cluster, and do not check the
      consistency of the score. I'll send separate patches on the master
      branch for adding more checks to prevent this in the future.
      
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarAgata Murawska <agatamurawska@google.com>
      14b5d45f
  2. Jul 27, 2012
  3. Jul 19, 2012
  4. Jun 29, 2012
  5. Jun 28, 2012
  6. Jun 27, 2012
  7. Jun 25, 2012
  8. Jun 19, 2012
    • Iustin Pop's avatar
      Fix corner case in quick-check generated tests · 232fc505
      Iustin Pop authored
      
      Thanks to Agata Murawska, a random seed that generates bad test cases
      was found ("seed was 1768143307 2118231514, test size 74"). This is
      due to the fact that some nodes were generated with tMem=0, fMem=0,
      which means that pMem was NaN and thus the node was not comparing
      equal to itself.
      
      Worked around by limiting the test case generation to nodes with
      positive values; a better fix would be to compare nodes differently
      (subset of properties or ignore NaN values).
      
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      232fc505
  9. Jun 08, 2012
  10. May 29, 2012
  11. May 08, 2012
    • Iustin Pop's avatar
      Add decoding of Luxi calls and unittests for LuxiOp · cdd495ae
      Iustin Pop authored
      
      This patch adds a hand-coded decoder for LuxiCall arguments, as the
      data-structure is not uniform enough for automated generation (even
      for the serialisation, we had to add hints for some fields,
      de-serialisation is even harder).
      
      It also fixes a tiny issue with WaitForJobChange job ID encoding, and
      adds unittests for the encoding/decoding of LuxiOp structures.
      
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarRené Nussbaumer <rn@google.com>
      cdd495ae
    • Iustin Pop's avatar
      Some unit tests improvements · 5cefb2b2
      Iustin Pop authored
      
      In preparation for unit-testing the Luxi definitions, this improves
      the auto-generation of OpCodes: currently this uses unbounded plain
      Strings for names and fields, and this creates too big test sizes
      (e.g. when automatically generating job sets).
      
      Furthermore, there are some more cleanups: switching from liftM to
      applicative style for easier definition, and some improvements in
      generators.
      
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarRené Nussbaumer <rn@google.com>
      5cefb2b2
Loading