From 912359bafc8b02b27f2a9d218c18bb6f61f670e5 Mon Sep 17 00:00:00 2001 From: juanmont Date: Fri, 7 Sep 2018 12:36:14 +0200 Subject: [PATCH] F #2228: Fixed bug with Chown action and running quotas --- src/rm/RequestManagerChown.cc | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/rm/RequestManagerChown.cc b/src/rm/RequestManagerChown.cc index 8f3d85d10b..fce28f0844 100644 --- a/src/rm/RequestManagerChown.cc +++ b/src/rm/RequestManagerChown.cc @@ -37,6 +37,8 @@ PoolObjectSQL * RequestManagerChown::get_and_quota( int old_uid; int old_gid; + std::string memory, cpu; + PoolObjectSQL * object; object = pool->get(oid); @@ -66,6 +68,20 @@ PoolObjectSQL * RequestManagerChown::get_and_quota( Template * tmpl = vm->clone_template(); + if ( (vm->get_state() == VirtualMachine::ACTIVE) || + (vm->get_state() == VirtualMachine::PENDING) || + (vm->get_state() == VirtualMachine::CLONING) || + (vm->get_state() == VirtualMachine::CLONING_FAILURE) || + (vm->get_state() == VirtualMachine::HOLD) ) + { + vm->get_template_attribute("MEMORY", memory); + vm->get_template_attribute("CPU", cpu); + + tmpl->add("RUNNING_MEMORY", memory); + tmpl->add("RUNNING_CPU", cpu); + tmpl->add("RUNNING_VMS", 1); + } + quota_map.insert(make_pair(Quotas::VIRTUALMACHINE, tmpl)); VirtualMachineDisks::image_ds_quotas(tmpl, ds_quotas);