[Pkg-ganeti-devel] [ganeti] 91/165: Merge branch 'stable-2.14' into master
Apollon Oikonomopoulos
apoikos at moszumanska.debian.org
Tue Aug 11 13:53:16 UTC 2015
This is an automated email from the git hooks/post-receive script.
apoikos pushed a commit to branch master
in repository ganeti.
commit 7c23902fd4a606227a3dd6821ae237361887aecd
Merge: 18bd06c 35f0456
Author: Hrvoje Ribicic <riba at google.com>
Date: Wed Mar 25 16:58:51 2015 +0000
Merge branch 'stable-2.14' into master
* stable-2.14
Update the bounds of monad-control in the cabal template
Fix RenewCrypto unittest
Move common code out of DrbdAttachNet
_EnsureSecondary is no longer needed
Do not _GatherAndLinkBlockDevs in AcceptInstance
Use _CloseInstanceDisks() helper during failover
Add helpers for Open/Close during migration
Introduce blockdev_open RPC
Export the 'exclusive' parameter to ExtStorage
Add the 'exclusive' parameter in bdev.Open()
Extend ExtStorage with open/close scripts
Refactor optional mechanism for ExtStorage scripts
Use CPP macros to chose the appropriate NFData instance
* stable-2.13
Break lines longer than 80 chars
Be gentler to failures while removing SSH keys
Change wording in documentation wrt configure-time paths
Do not distribute files with configure-specific information
LXC: Add udevadm settle invocation to prevent errors
Fix haddock examples for extractJSONPath
* stable-2.12
Upgrade codebase to support monad-control >=0.3.1.3 && <1.1
Add macros for the version of monad-control
Rename hs-lens-versions Makefile target to hs-pkg-versions
Verify master status before retrying a socket
Make LUClusterDestroy tell WConfD
Add an RPC to prepare cluster destruction
Support no-master state in ssconf
WConfD: do not clean up own livelock
Make WConfD have a livelock file as well
Add a prefix for a WConfD livelock
Detect if the own job file disappears
Keep track of the number LUs executing
Make job processes keep track of their job id
Make LuxiD clean up its lock file
QA: Fix CheckFileUnmodified to work with vcluster
QA: Fix white-spaces in CheckFileUnmodified
QA: Check that the cluster verify doesn't change the config
QA: Allow to check that an operation doesn't change a file
Use only shared configuration lock for ComputeDRBDMap
Only assert properties of non-None objects
If any IO error happens during job forking, retry
Add a function for retrying `MonadError` computations
Annotate every send/receive operation in Exec.hs
Refactor `rethrowAnnotateIOError` and simplify its usage
Query.Exec: Describe error if talking to job process fails
Query.Exec: Log error when talking to job process fails
Fix the generation of Makefile.ghc rules for *_hi
Fix error handling for failed fork jobs
If a forked job process malfunctions, kill it thoroughly
Add function to run checked computations in `MonadError`
Add job ID and process ID to log statements in Exec.hs
Fix issues when generating 'lens' version definitions
Signal to the job queue when the cluster is gone
Only read config if necessary
Always OutDate() the lu's config
Outdate the config when waiting for locks
Support outdating a config
Allow unlocked reading of the config
Also in tests, open fake config before editing
Fix a few haddock comments
* stable-2.11
Improve error handling when looking up instances
Capture last exception
Improve speed of Xen hypervisor unit tests
Improve Xen instance state handling
Renew crypto retries for non-master nodes
Retries for the master's SSL cert renewal
Unit tests for offline nodes
De-duplicate testing code regarding pathutils
Make LURenewCrypto handle unreachable nodes properly
Error handling on failed SSL cert renewal for master
Unit test for LURenewCrypto's valid case
Mock support for pathutils
Increase timeout of crypto token RPC
Skip offline nodes in RENEW_CRYPTO jobs
* stable-2.10
Make QA fail if KVM hotplugging fails
Always preserve QA command output
Don't lose stdout/stderr in AssertCommand
qa_utils: Allow passing fail=None to AssertCommand
qa_utils: Make AssertCommand return stdout/stderr as well
Allow plain/DRBD conversions regardless of lack of disks
Add support for ipolicy modifications to mock config
Remove unused import
Use an old way to instance NFData CollectorData
MonD: force computation of state in stateful collectors
Instance NFData CollectorData
Conflicts:
src/Ganeti/Logging/WriterLog.hs
src/Ganeti/THH/HsRPC.hs
src/Ganeti/WConfd/Monad.hs
Resolution:
All pragmas are the same; choose formatting.
Signed-off-by: Hrvoje Ribicic <riba at google.com>
Reviewed-by: Klaus Aehlig <aehlig at google.com>
Makefile.am | 5 +-
doc/admin.rst | 4 +-
doc/design-shared-storage.rst | 30 ++-
lib/backend.py | 96 ++++----
lib/cmdlib/cluster/__init__.py | 74 +++++-
lib/cmdlib/cluster/verify.py | 2 +-
lib/cmdlib/instance_migration.py | 54 ++++-
lib/cmdlib/instance_set_params.py | 3 +-
lib/cmdlib/instance_storage.py | 1 -
lib/cmdlib/node.py | 4 +
lib/config/__init__.py | 8 +-
lib/hypervisor/hv_xen.py | 66 +++++-
lib/jqueue/__init__.py | 26 ++-
lib/mcpu.py | 3 +
lib/objects.py | 2 +
lib/rpc/transport.py | 11 +
lib/rpc_defs.py | 8 +-
lib/server/noded.py | 13 +-
lib/storage/base.py | 9 +-
lib/storage/bdev.py | 6 +-
lib/storage/drbd.py | 2 +-
lib/storage/extstorage.py | 80 +++++--
lib/storage/filestorage.py | 2 +-
lib/storage/gluster.py | 2 +-
lib/utils/storage.py | 7 +
man/ganeti-extstorage-interface.rst | 50 ++++-
qa/qa_cluster.py | 10 +-
qa/qa_instance.py | 29 ++-
qa/qa_utils.py | 57 ++++-
src/Ganeti/BasicTypes.hs | 8 +
src/Ganeti/Confd/Utils.hs | 11 +-
src/Ganeti/Constants.hs | 16 +-
src/Ganeti/DataCollectors/Types.hs | 34 ++-
src/Ganeti/Lens.hs | 2 +-
src/Ganeti/Logging/WriterLog.hs | 1 +
src/Ganeti/Metad/Config.hs | 5 +-
src/Ganeti/Monitoring/Server.hs | 3 +
src/Ganeti/Objects/Disk.hs | 2 +-
src/Ganeti/Query/Exec.hs | 102 +++++----
src/Ganeti/Query/Server.hs | 2 +-
src/Ganeti/Utils/Monad.hs | 12 +-
src/Ganeti/WConfd/Core.hs | 47 +++-
src/Ganeti/WConfd/DeathDetection.hs | 10 +-
src/Ganeti/WConfd/Monad.hs | 6 +-
src/Ganeti/WConfd/Server.hs | 1 -
src/Ganeti/WConfd/Ssconf.hs | 2 +-
test/py/cmdlib/cluster_unittest.py | 249 +++++++++++++++++++++
test/py/cmdlib/instance_storage_unittest.py | 2 +-
test/py/cmdlib/testsupport/__init__.py | 2 +
.../testsupport/{__init__.py => pathutils_mock.py} | 51 ++---
test/py/cmdlib/testsupport/wconfd_mock.py | 3 +
test/py/ganeti.hypervisor.hv_xen_unittest.py | 45 +++-
test/py/testutils/config_mock.py | 20 ++
53 files changed, 1040 insertions(+), 260 deletions(-)
diff --cc src/Ganeti/DataCollectors/Types.hs
index 6beb042,9170ad9..1157199
--- a/src/Ganeti/DataCollectors/Types.hs
+++ b/src/Ganeti/DataCollectors/Types.hs
@@@ -139,10 -144,31 +144,33 @@@ instance JSON DCVersion wher
readJSON v = fail $ "Invalid JSON value " ++ show v ++ " for type DCVersion"
-- | Type for the value field of the `CollectorMap` below.
-data CollectorData = CPULoadData (Seq.Seq (ClockTime, [Int]))
+data CollectorData =
+ CPULoadData (Seq.Seq (ClockTime, [Int]))
+ | InstanceCpuLoad (Map.Map String (Seq.Seq (ClockTime, Double)))
+ instance NFData ClockTime where
+ rnf (TOD x y) = rnf x `seq` rnf y
+
+ #if MIN_VERSION_containers(0,5,0)
+
+ instance NFData CollectorData where
+ rnf (CPULoadData x) = rnf x
+
+ #else
+
+ {-
+
+ In older versions of the containers library, Seq is not an
+ instance of NFData, so use a generic way to reduce to normal
+ form
+
+ -}
+
+ instance NFData CollectorData where
+ rnf (CPULoadData x) = (x `using` seqFoldable rdeepseq) `seq` ()
+
+ #endif
+
-- | Type for the map storing the data of the statefull DataCollectors.
type CollectorMap = Map.Map String CollectorData
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-ganeti/ganeti.git
More information about the Pkg-ganeti-devel
mailing list