1. 24 Oct, 2011 1 commit
  2. 20 Oct, 2011 3 commits
  3. 12 Oct, 2011 1 commit
    • Iustin Pop's avatar
      Rename filter and filter_ to qfilter · 2e5c33db
      Iustin Pop authored
      
      
      We currently use 'filter' as the OpCode, QueryRequest and RAPI field
      name for representing a query filter. However, since 'filter' is a
      built-in function, we actually have to use filter_ throughout the code
      in order to not override the built-in function.
      
      This patch simply goes and does a global sed over the code. Due to the
      fact that the RAPI interface already exposed this field, we add
      compatibility code for now which handles both forms.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      2e5c33db
  4. 07 Oct, 2011 1 commit
  5. 05 Oct, 2011 4 commits
  6. 04 Oct, 2011 1 commit
  7. 03 Oct, 2011 1 commit
  8. 30 Sep, 2011 5 commits
  9. 29 Sep, 2011 2 commits
    • Andrea Spadaccini's avatar
      Add memory transfer progress info to migration · 61643226
      Andrea Spadaccini authored
      
      
      * hypervisor/hv_kvm.py
        - parse the memory transfer status
      
      * cmdlib.py
        - represent memory transfer info, if available
      Signed-off-by: default avatarAndrea Spadaccini <spadaccio@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      61643226
    • Andrea Spadaccini's avatar
      Make migration RPC non-blocking · 6a1434d7
      Andrea Spadaccini authored
      
      
      To add status reporting for the KVM migration, the instance_migrate RPC
      must be non-blocking. Moreover, there must be a way to represent the
      migration status and a way to fetch it.
      
      * constants.py:
        - add constants representing the migration statuses
      
      * objects.py:
        - add the MigrationStatus object
      
      * hypervisor/hv_base.py
        - change the FinalizeMigration method name to FinalizeMigrationDst
        - add the FinalizeMigrationSource method
        - add the GetMigrationStatus method
      
      * hypervisor/hv_kvm.py
        - change the implementation of MigrateInstance to be non-blocking
          (i.e. do not poll the status of the migration)
        - implement the new methods defined in BaseHypervisor
      
      * backend.py, server/noded.py, rpc.py
        - add methods to call the new hypervisor methods
        - fix documentation of the existing methods to reflect the changes
      
      * cmdlib.py
        - adapt the logic of TLMigrateInstance._ExecMigration to reflect
          the changes
      Signed-off-by: default avatarAndrea Spadaccini <spadaccio@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      6a1434d7
  10. 28 Sep, 2011 3 commits
  11. 20 Sep, 2011 1 commit
  12. 31 Aug, 2011 2 commits
  13. 30 Aug, 2011 1 commit
  14. 26 Aug, 2011 1 commit
  15. 25 Aug, 2011 1 commit
  16. 24 Aug, 2011 2 commits
  17. 23 Aug, 2011 1 commit
  18. 19 Aug, 2011 1 commit
  19. 17 Aug, 2011 1 commit
  20. 12 Aug, 2011 4 commits
  21. 08 Aug, 2011 3 commits
    • Iustin Pop's avatar
      Allow fixing of split instances via relocate · e3a19474
      Iustin Pop authored
      
      
      Currently, the IAllocator code requests strictly that the (set of) groups of
      the nodes we're relocating from is equal to the set of groups we're
      relocating to.
      
      This, however, makes is impossible to fix split instances, since (by
      definition) the secondary of a split instance is not in the same group
      as the primary node, and after the fixing is it the same.
      
      The patch changes the test from group equality to check that the final
      group set (across both primary and secondary nodes) is a subset of the
      initial group set (again across both nodes). This means we can't
      "extend" the group of nodes but keeping the same or decreasing it is
      allowed.
      
      After this patch, one can finally fix (automatically) split instances
      via a gnt-instance replace-disks.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      e3a19474
    • Iustin Pop's avatar
      Further cleanup after multi-evacuate removal · f5fab862
      Iustin Pop authored
      Commit f0edfcf6
      
       removed the parsing of multi-evacuate result, but the
      code went from:
      
        if mode in (multi-evac, relocate):
          …
          if mode == relocate:
            …
      
      to:
      
        if mode == relocate:
          …
          if mode == relocate
            …
      
      This patch simply removes the nested if.
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
      f5fab862
    • Iustin Pop's avatar
      Fix bug in IAllocator parsing of Evacuate result · 2f41ea77
      Iustin Pop authored
      Commit 342f9172
      
       added stricter checks for the iallocator result in
      evacuate mode, but it does this irrespective of the result
      status. When the result has failed and (according to the design) the
      list of nodes is empty, this code will trigger the following:
      
          node1# gnt-instance replace-disks -I hail instance14
          Failure: command execution error:
          Groups of nodes returned by iallocator () differ from original groups (default)
      
      After the patch, the result is:
      
          node1# gnt-instance replace-disks -I hail instance14
          Failure: prerequisites not met for this operation:
          error type: insufficient_resources, error details:
          Can't compute nodes using iallocator 'hail': Request failed: …
      Signed-off-by: default avatarIustin Pop <iustin@google.com>
      Reviewed-by: default avatarMichael Hanselmann <hansmi@google.com>
      2f41ea77