1. 16 Dec, 2013 1 commit
    • Thomas Thrainer's avatar
      Merge branch 'stable-2.9' into stable-2.10 · c486fb6c
      Thomas Thrainer authored
      * stable-2.9
        Bump revision for 2.9.2
        Update NEWS for 2.9.2 release
        Pass hvparams to GetInstanceInfo
        Adapt parameters that moved to instance variables
        Avoid lines longer than 80 chars
        SingleNotifyPipeCondition: don't share pollers
        KVM: use custom KVM path if set for version checking
      * stable-2.8
        Version bump for 2.8.3
        Update NEWS for 2.8.3 release
        Support reseting arbitrary params of ext disks
        Allow modification of arbitrary params for ext
        Do not clear disk.params in UpgradeConfig()
        SetDiskID() before accepting an instance
        Lock group(s) when creating instances
        Fix job error message after unclean master shutdown
        Add default file_driver if missing
        Update tests
        Xen handle domain shutdown
        Fix evacuation out of drained node
        Refactor reading live data in htools
        master-up-setup: Ping multiple times with a shorter interval
        Add a packet number limit to "fping" in master-ip-setup
        Fix a bug in InstanceSetParams concerning names
        build_chroot: hard-code the version of blaze-builder
        Fix error printing
        Allow link local IPv6 gateways
        Fix NODE/NODE_RES locking in LUInstanceCreate
        eta-reduce isIpV6
        Ganeti.Rpc: use brackets for ipv6 addresses
        Update NEWS file with socket permission fix info
        Fix socket permissions after master-failover
      
      Conflicts:
      	NEWS
      	configure.ac
      	devel/build_chroot
      	lib/constants.py
      	src/Ganeti/Rpc.hs
      
      Resolution:
          NEWS: take both additions
          configure.ac: ignore version bump
          constants.py: move constants to Constants.hs
          instance_migration.py: Remove call to SetDiskID(...), it has been removed in 2.10
          instance_unittest.py: Adapt test to new logic in LU
          Rest: trivial
      Signed-off-by: default avatarThomas Thrainer <thomasth@google.com>
      Reviewed-by: default avatarMichele Tartara <mtartara@google.com>
      c486fb6c
  2. 13 Dec, 2013 2 commits
  3. 12 Dec, 2013 4 commits
  4. 11 Dec, 2013 6 commits
    • Klaus Aehlig's avatar
      Merge branch 'stable-2.8' into stable-2.9 · affe1792
      Klaus Aehlig authored
      * stable-2.8
        Version bump for 2.8.3
        Update NEWS for 2.8.3 release
        Support reseting arbitrary params of ext disks
        Allow modification of arbitrary params for ext
        Do not clear disk.params in UpgradeConfig()
        SetDiskID() before accepting an instance
        Lock group(s) when creating instances
        Fix job error message after unclean master shutdown
        Add default file_driver if missing
        Update tests
        Xen handle domain shutdown
        Fix evacuation out of drained node
        Refactor reading live data in htools
        master-up-setup: Ping multiple times with a shorter interval
        Add a packet number limit to "fping" in master-ip-setup
        Fix a bug in InstanceSetParams concerning names
        build_chroot: hard-code the version of blaze-builder
        Fix error printing
        Allow link local IPv6 gateways
        Fix NODE/NODE_RES locking in LUInstanceCreate
        eta-reduce isIpV6
        Ganeti.Rpc: use brackets for ipv6 addresses
        Update NEWS file with socket permission fix info
        Fix socket permissions after master-failover
      
      Conflicts:
      	NEWS
      	configure.ac
      	lib/cmdlib/instance.py
      	lib/cmdlib/instance_migration.py
      	lib/hypervisor/hv_xen.py
      	lib/masterd/iallocator.py
      	lib/objects.py
      	src/Ganeti/HTools/Backend/IAlloc.hs
      	src/Ganeti/HTools/Backend/Luxi.hs
      	src/Ganeti/HTools/Backend/Rapi.hs
      Resolution:
      	NEWS: take both additions
      	configure.ac: ignore revision bump on stable-2.8
      	Rest: manually apply the stable-2.8 changes on stable-2.9 code;
                    for lib/hypervisor/hv_xen.py this also includes passing
                    the additonal hvparams around, and adapting tests.
      Signed-off-by: default avatarKlaus Aehlig <aehlig@google.com>
      Reviewed-by: default avatarHrvoje Ribicic <riba@google.com>
      affe1792
    • Michele Tartara's avatar
      Version bump for 2.8.3 · 6ce56f8f
      Michele Tartara authored
      Signed-off-by: default avatarMichele Tartara <mtartara@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
      6ce56f8f
    • Michele Tartara's avatar
      Update NEWS for 2.8.3 release · 390fa990
      Michele Tartara authored
      List all the changes that happened between 2.8.2 and 2.8.3.
      Signed-off-by: default avatarMichele Tartara <mtartara@google.com>
      Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
      390fa990
    • Dimitris Aragiorgis's avatar
      Support reseting arbitrary params of ext disks · e228ab9c
      Dimitris Aragiorgis authored
      If param=default and the param already exists then we remove
      it from params dict. This is stolen by GetUpdatedParams() which
      is used for hvparams modification/inheritance.
      
      This means that 'default' value is not accepted for an arbitrary
      param of an ext disk.
      Signed-off-by: default avatarDimitris Aragiorgis <dimara@grnet.gr>
      Signed-off-by: default avatarMichele Tartara <mtartara@google.com>
      Reviewed-by: default avatarMichele Tartara <mtartara@google.com>
      e228ab9c
    • Dimitris Aragiorgis's avatar
      Allow modification of arbitrary params for ext · c5c72215
      Dimitris Aragiorgis authored
      Disks of ext template are allowed to have arbitrary parameters
      stored in the Disk object's params slot. Those parameters can be
      passed during creation of a new disk, either in LUInstanceCreate()
      or in LUInsanceSetParams(). Still those parameters can not be
      changed afterwards. With this patch we override this limitation.
      
      Currently, for the other disk templates we allow modifying only
      'name' and 'mode'. Therefore, we introduce new constants
      MODIFIABLE_IDISK_PARAM* to include those params. If any other
      parameter is passed, _VerifyDiskModification() will raise an
      exception.
      Signed-off-by: default avatarDimitris Aragiorgis <dimara@grnet.gr>
      Signed-off-by: default avatarMichele Tartara <mtartara@google.com>
      Reviewed-by: default avatarMichele Tartara <mtartara@google.com>
      c5c72215
    • Dimitris Aragiorgis's avatar
      Do not clear disk.params in UpgradeConfig() · 54666867
      Dimitris Aragiorgis authored
      Commits 5dbee5ea and cce46164 fix disk upgrades concerning params
      slot. Since 2.7 params slot should be empty and gets filled
      any time needed.
      
      Still ext template allows passing arbitrary params per disk.
      These params should be saved in config file for future use.
      For instance if we have the shared-filer provider and we
      specify shared_dir param during instance create, this param
      is needed when we want to attach the disk e.g., during
      retrieving instance info. If it gets overridden during a daemon
      restart or a config reload we fail to get the instance's info.
      
      To avoid such a failure, we set params slot to an empty dict
      only if params not found in the first place.
      Signed-off-by: default avatarDimitris Aragiorgis <dimara@grnet.gr>
      Signed-off-by: default avatarMichele Tartara <mtartara@google.com>
      Reviewed-by: default avatarMichele Tartara <mtartara@google.com>
      54666867
  5. 09 Dec, 2013 2 commits
  6. 05 Dec, 2013 4 commits
  7. 04 Dec, 2013 2 commits
  8. 03 Dec, 2013 1 commit
  9. 02 Dec, 2013 3 commits
  10. 29 Nov, 2013 1 commit
    • Guido Trotter's avatar
      SingleNotifyPipeCondition: don't share pollers · 546c5100
      Guido Trotter authored
      As widely known Ganeti uses a better[1] lock condition notification
      library based on operating system pipes.
      
      Inside this library we were using a shared poller for all threads
      waiting for a condition. While poller is not thread safe, since (1)
      we're holding the condition lock while calling poll and while parsing
      results, and (2) we don't reuse the poller between different conditions,
      or with newer fds our usage *is* actually safe. Unfortunately newer
      versions of python take a hand-holding approach and don't trust us to do
      the right thing. As such we are forced to create a new poller each time
      we call wait.
      
      This costs one system call more per wait, but practical measurements
      have shown no significant impact on Ganeti. This is also a temporary
      measures as newer versions will get away with the threading altogether
      and move job schedulers to luxid.
      
      The patch is losely based on a patch submitted by Daniel Néri, but has
      been modified to reduce even further the scope of the poller variable to
      just the waiter class.
      
      [1] because I say so.
      [1 bis] also because it produces fairer results, avoids possible
      starvation and eliminates busy-wait polling.
      [2] http://bugs.python.org/issue8865Signed-off-by: default avatarGuido Trotter <ultrotter@google.com>
      Reviewed-by: default avatarMichele Tartara <mtartara@google.com>
      546c5100
  11. 28 Nov, 2013 1 commit
  12. 27 Nov, 2013 5 commits
  13. 26 Nov, 2013 4 commits
  14. 25 Nov, 2013 4 commits