1. 14 Jun, 2010 1 commit
    • Iustin Pop's avatar
      Fix unsafe variant initializer in _TryOSFromDisk · 845da3e8
      Iustin Pop authored
      
      
      In case an OS has inconsistent declarations, we might get into a case
      where one node reports a valid variants list (with OS API >=15), and
      another node has OS API < 15, in which case its supported_variants gets
      the default value of None. This leads to the same variable having
      inconsistent data types, which leads to subtle bugs later: instead of
      reporting something like "Inconsistent OS API versions", the LU exits
      with a run-time exception. Furthermore, in another datapath, variants is
      initialized to '[]' in case of OS diagnose failures.
      
      The patch changes _TryOSFromDisk to initialize variants to '[]' for
      OS api level below 15, and changes the variants calculation in
      DiagnoseOS to be more readable.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
      845da3e8
  2. 17 May, 2010 1 commit
  3. 13 May, 2010 2 commits
  4. 07 May, 2010 1 commit
  5. 20 Apr, 2010 1 commit
    • Guido Trotter's avatar
      Add CleanupInstance hypervisor call · f28ec899
      Guido Trotter authored
      
      
      Currently some hypervisors (namely kvm) need to do some cleanup after
      making sure an instance is stopped. With the moving of the retry cycle
      in backend those cleanups were never done. In order to solve this we add
      a new optional hypervisor function, CleanupInstance, which gets called
      at the end of the shutdown procedure, and which interested hypervisors
      can implement to be sure not to miss cleanup operations.
      Signed-off-by: default avatarGuido Trotter <ultrotter@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      f28ec899
  6. 16 Apr, 2010 1 commit
  7. 12 Apr, 2010 2 commits
  8. 23 Mar, 2010 1 commit
  9. 17 Mar, 2010 1 commit
  10. 15 Mar, 2010 2 commits
  11. 12 Mar, 2010 2 commits
    • Michael Hanselmann's avatar
      utils.CreateBackup: Use human-readable instead of seconds since Epoch · 1d466a4f
      Michael Hanselmann authored
      
      
      Seconds since the Epoch are not easily readable by a human. Using a
      formatted timestamp makes it easier (e.g.
      “….backup-2010-03-12_14_02_43.…”). This patch also makes OS logfiles use
      this formatted timestamp.
      Signed-off-by: default avatarMichael Hanselmann <hansmi@google.com>
      Reviewed-by: default avatarIustin Pop <iustin@google.com>
      1d466a4f
    • Iustin Pop's avatar
      Improve cluster verify with hypervisor errors · 0cf5e7f5
      Iustin Pop authored
      
      
      In case the hypervisor has issues on one node, currently
      backend.VerifyNode will exit via an exception (two exit paths possible,
      one via HypervisorError from hypervisor.Verify(), and one via RPCFail
      from GetInstanceList). This is bad as it invalidates all other checks of
      that node.
      
      This patch catches these two errors and allows the rest of the
      VerifyNode function to run. This leads to a more complete verify cluster
      run, for example now only real missing LVs are reported, not all of
      them.
      
      The cluster verify is not perfect as it will skip some tests even if it
      has data, but this will require a more complete rewrite (see issue 90).
      
      Also, the patch fixes and improves some error messages in cmdlib.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
      0cf5e7f5
  12. 09 Mar, 2010 1 commit
  13. 08 Mar, 2010 8 commits
  14. 22 Feb, 2010 2 commits
  15. 03 Feb, 2010 1 commit
  16. 01 Feb, 2010 1 commit
  17. 25 Jan, 2010 1 commit
  18. 04 Jan, 2010 4 commits
  19. 28 Dec, 2009 1 commit
  20. 14 Dec, 2009 2 commits
  21. 30 Nov, 2009 1 commit
  22. 25 Nov, 2009 1 commit
  23. 11 Nov, 2009 1 commit
  24. 06 Nov, 2009 1 commit
    • Iustin Pop's avatar
      Fix pylint 'E' (error) codes · 6c881c52
      Iustin Pop authored
      
      
      This patch adds some silences and tweaks the code slightly so that
      “pylint --rcfile pylintrc -e ganeti” doesn't give any errors.
      
      The biggest change is in jqueue.py, the move of _RequireOpenQueue out of
      the JobQueue class. Since that is actually a function and not a method
      (never used as such) this makes sense, and also silences two pylint
      errors.
      
      Another real code change is in utils.py, where FieldSet.Matches will
      return None instead of False for failure; this still works with the way
      this class/method is used, and makes more sense (it resembles more
      closely the re.match return values).
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
      6c881c52