Skip to content
Snippets Groups Projects
  1. May 25, 2009
  2. May 24, 2009
  3. May 23, 2009
  4. May 22, 2009
    • Iustin Pop's avatar
      More code reorganizations · e4c5beaf
      Iustin Pop authored
      This new big patch does a couple of more cleanups in the loading of data
      chapter:
        - introduce a Types module that holds most types (except the base
          Node/Instance/etc.) so that multiple other modules can use these
          (instead of only Cluster and its users)
        - bring IAlloc.hs in line with the recent changes of providing data
          types and not strings
        - removal of obsolete Utils.hs json-related functions
      e4c5beaf
  5. May 21, 2009
    • Iustin Pop's avatar
      Initial work on hail · 585d4420
      Iustin Pop authored
      This makes hail compile and get a request parsed via IAlloc, but nothing
      more.
      585d4420
  6. May 20, 2009
    • Iustin Pop's avatar
      Convert Cluster.loadData to Result return · fd22ce8e
      Iustin Pop authored
      This patch changes Cluster.loadData to return a Result, instead of
      directly the values; this will allow us to return meaningful error
      values (e.g. when an instances lives on unknown node) rather than simply
      abort. Currently the result is always an Ok, the actual signalling of
      errors will come later.
      
      Its callers are changed to accommodate for the new return type and to
      display errors as needed.
      fd22ce8e
    • Iustin Pop's avatar
      Switch from hand-written monads to a real one · 942403e6
      Iustin Pop authored
      This big patch converts from our home-grown monad-like constructs
      (the Either stuff) to a real, Either-like-but-another-name monad.
      
      We introduce a “Result a” monad, and this allows dropping many of the
      extra constructs. Hopefully the code is also more clear.
      
      Many of the functions could now be written in a generic-monad style,
      instead of Result specifically, but that will come in future patches.
      
      IAlloc.hs also has some unrelated patches.
      942403e6
  7. Apr 26, 2009
    • Iustin Pop's avatar
      hbal: add a --quiet option · d09b6ed3
      Iustin Pop authored
      This option is the opposite of the --verbose option, and it allows
      decreasing the verbosity level from the default of one to zero (which
      currently doesn't show the warning messages for missing disk/memory).
      d09b6ed3
  8. Apr 25, 2009
  9. Apr 20, 2009
    • Iustin Pop's avatar
      Add reading the file names from env vars · 8032b3b5
      Iustin Pop authored
      This patch adds support for selecting the instance/node file names via
      two environment variables (HTOOLS_NODES, HTOOLS_INSTANCES).
      
      Unfortunately we still have lots of duplicated code, since the options
      are not unified.
      8032b3b5
    • Iustin Pop's avatar
      Implement error checks for extra arguments · 45f01962
      Iustin Pop authored
      Neither hbal nor hn1 take any arguments beside the options, so if any
      are passed is most likely an unintended error. This patch aborts in such
      cases.
      45f01962
  10. Apr 18, 2009
  11. Apr 16, 2009
  12. Mar 22, 2009
    • Iustin Pop's avatar
      Show the x_mem/i_mem in node list · a1c6212e
      Iustin Pop authored
      This patch adds checking of cluster data in the binaries and display of
      node's x_mem/i_mem in the node list.
      a1c6212e
    • Iustin Pop's avatar
      Split common CLI functionality into a module · 209b3711
      Iustin Pop authored
      This patch moves the common CLI functionality (as much as currently
      possible) into a separate module. This means we only have one parseOpts
      and that Utils.hs doesn't keep this kind of functions anymore.
      209b3711
  13. Mar 21, 2009
  14. Mar 20, 2009
  15. Mar 14, 2009
  16. Mar 13, 2009
    • Iustin Pop's avatar
      Enhance the command list for the solution · 142538ff
      Iustin Pop authored
      This patch moves the formatting of the command list to Cluster.hs and
      enhances it with separator messages between the steps.
      142538ff
    • Iustin Pop's avatar
      Convert hbal from multiple rounds to a step-method · 7dfaafb1
      Iustin Pop authored
      Currently hbal does multiple rounds, stopping when a rounds doesn't
      bring improvements. With the recent changes to not remove instances from
      the candidate list, this is obsolete as the first round will always run
      to the end of the improvements.
      
      This patch changes this so that the Cluster.checkMove function doesn't
      recurse, but just computes the next best move (as its docstring says).
      This means we can actually incrementally compute and print the solution,
      and this is needed as otherwise an instance could move twice and the
      second time it needs the current placement to compute the exact command
      line and operation needed for the move.
      7dfaafb1
  17. Mar 12, 2009
  18. Mar 10, 2009
  19. Mar 09, 2009
  20. Feb 15, 2009
    • Iustin Pop's avatar
      A small optimization in node computation · 256810de
      Iustin Pop authored
      Currently we always compute the available node list for moves (for an
      instances) based on the nodes of the initial table. This works find,
      however is a repeated calculation.
      
      We optimize this by passing a node list (of indexes, not full objects),
      which helps in two ways:
        - faster to filter later
        - allows restriction of target nodes by enforcing only this subset as
          target for moves
      256810de
  21. Feb 14, 2009
Loading