1. 25 Jan, 2010 1 commit
    • Iustin Pop's avatar
      Add a crude disable for DRBD barriers · 89b70f39
      Iustin Pop authored
      Ideally we want to/will have per-device DRBD controls of disk/metadata
      flushes. In the meantime, we want at least a disable of the barrier
      functionality for cases where one has battery-backed caches.
      
      Background: DRBD has four mechanism of handling ordered disk-writes.
      From the drbdsetup man-page, these are: barrier, flush, drain and none.
      DRBD prior to 8.2 only has drain and none. This patch makes all 8.x
      versions of DRBD disable all methods, and revert to none, in case one
      fully trusts batteries (either UPS for the whole system or battery for
      NVRAM).
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      89b70f39
  2. 22 Jan, 2010 5 commits
  3. 21 Jan, 2010 1 commit
  4. 20 Jan, 2010 2 commits
  5. 19 Jan, 2010 1 commit
    • Michael Hanselmann's avatar
      daemon-util: Fix quoting issue · 03956d39
      Michael Hanselmann authored
      This patch fixes a quoting issue in daemon-util:
      
      $ EXTRA_MASTERD_ARGS=--no-voting /etc/init.d/ganeti restart
      […]
      * ganeti-masterd...
      /…/ganeti/daemon-util: line 65: local: `--no-voting': not a valid identifier
      
      The reason was that the generated variables were not quoted properly and
      the troublesome line expanded to
      “local args=$MASTERD_ARGS $EXTRA_MASTERD_ARGS” instead of the correct
      “local args="$MASTERD_ARGS $EXTRA_MASTERD_ARGS"”.
      Signed-off-by: default avatarMichael Hanselmann <hansmi@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      03956d39
  6. 15 Jan, 2010 4 commits
    • Michael Hanselmann's avatar
      0175fd8c
    • Iustin Pop's avatar
      Merge branch 'stable-2.1' into devel-2.1 · f9d0783b
      Iustin Pop authored
      * stable-2.1: (22 commits)
        Fix long-standing race condition bug in locking unittest
        confd client: copy the peers in UpdatePeerList
        testutils: Print name of test program before running it
        Don't use hardcoded name for pylint
        Partially revert "Makefile.am: Run pylint on all Python code"
        build-bash-completion: Take care of pylint warnings
        Makefile.am: Run pylint on all Python code
        Small improvements for release script
        check-python-code: Use “set -e” to abort on errors
        build-bash-completion: Fix a few pylint warnings
        Generate hmac file with a newline at the end
        jqueue: Don't return negative number for unchecked jobs when archiving
        cli.GenerateTable: Don't write EOL spaces
        Improve logging for workerpool tasks by providing __repr__
        workerpool: Simplify log messages
        workerpool: Use worker name as thread name
        workerpool: Make worker ID alphanumeric
        locking: Fix race condition in LockSet
        mcpu: Log lock status with sorted names
        locking: Append to list outside error handling block
        ...
      f9d0783b
    • Iustin Pop's avatar
      Switch the SplitKeyVal function to accept escapes · 1b3a7656
      Iustin Pop authored
      This tiny patch switches the SplitKeyVal function (and thus the command
      line options like -H, -B, etc.) to UnescapeAndSplit, thus allowing one
      to use escaped commas in the values of parameters.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
      1b3a7656
    • Michael Hanselmann's avatar
      Fix long-standing race condition bug in locking unittest · 51e3bb92
      Michael Hanselmann authored
      Every once in a while we saw failures in the locking unittest, but
      weren't able to determine the cause. This patch fixes it by using
      threading.Event instead of plain threading.Condition to notify another
      thread. In most cases, threading.Condition must be used with another
      variable to keep the actual state.  threading.Event does this for us.
      Otherwise it can happen that the waiter only gets the lock after
      condition was notified.
      Signed-off-by: default avatarMichael Hanselmann <hansmi@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      51e3bb92
  7. 14 Jan, 2010 6 commits
  8. 13 Jan, 2010 15 commits
  9. 12 Jan, 2010 2 commits
  10. 11 Jan, 2010 1 commit
  11. 05 Jan, 2010 2 commits
    • Iustin Pop's avatar
      Introduce a Luxi call for GetTags · 7699c3af
      Iustin Pop authored
      This changes from submitting jobs to get the tags (in cli scripts) to
      queries, which (since the tags query is a cheap one) should be much
      faster.
      
      The tags queries are already done without locks (in the generic query
      paths for instances/nodes/cluster), so this shouldn't break tags query
      via gnt-* list-tags.
      
      On a small cluster, the runtime of gnt-cluster/gnt-instance list tags
      more than halves; on a big cluster (with many MCs) I expect it to be
      more than 5 times faster. The speed of the tags get is not the main
      gain, it is eliminating a job when a simple query is enough.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarRené Nussbaumer <rn@google.com>
      7699c3af
    • Iustin Pop's avatar
      LURenameCluster: run post hook on all nodes · 47a72f18
      Iustin Pop authored
      Since the cluster name might be used for various purposes on nodes, we
      should let all nodes "know" about a cluster rename by running the post
      hook on all nodes. This will make cluster rename slightly
      slower/costlier, but it is not/shouldn't be an operation that is run
      very often.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarOlivier Tharan <olive@google.com>
      47a72f18