Bug 1517112 - vm reconfigure when quota enabled gets stuck in 'pending' state
Summary: vm reconfigure when quota enabled gets stuck in 'pending' state
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat CloudForms Management Engine
Classification: Red Hat
Component: Automate
Version: 5.9.0
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: GA
: 5.10.0
Assignee: Tina Fitzgerald
QA Contact: Anurag
URL:
Whiteboard: testathon
: 1564697 (view as bug list)
Depends On:
Blocks: 1526568 1565724
TreeView+ depends on / blocked
 
Reported: 2017-11-24 08:55 UTC by Vatsal Parekh
Modified: 2018-06-21 20:47 UTC (History)
10 users (show)

Fixed In Version: 5.10.0.0
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1526568 1565724 (view as bug list)
Environment:
Last Closed: 2018-06-21 20:47:04 UTC
Category: ---
Cloudforms Team: CFME Core


Attachments (Terms of Use)

Description Vatsal Parekh 2017-11-24 08:55:42 UTC
Description of problem:
Re-configuring a VM with more then the quota set values, the request gets stuck in pending state

The automation.log gives the below errors
----] I, [2017-11-24T03:43:17.864748 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Updated namespace [System/CommonMethods/QuotaMethods/limits  ManageIQ/System/CommonMethods]
[----] I, [2017-11-24T03:43:17.871096 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Invoking [inline] method [/ManageIQ/System/CommonMethods/QuotaMethods/limits] with inputs [{}]
[----] I, [2017-11-24T03:43:17.872521 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) <AEMethod [/ManageIQ/System/CommonMethods/QuotaMethods/limits]> Starting 
[----] I, [2017-11-24T03:43:18.228991 #13150:d4ebbc]  INFO -- : <AEMethod limits> Getting Tenant Quota Values for: {:cpu=>1}
[----] I, [2017-11-24T03:43:18.256530 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) <AEMethod [/ManageIQ/System/CommonMethods/QuotaMethods/limits]> Ending
[----] I, [2017-11-24T03:43:18.256694 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Method exited with rc=MIQ_OK
[----] I, [2017-11-24T03:43:18.257123 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Followed  Relationship [miqaedb:/System/CommonMethods/QuotaMethods/limits#create]
[----] I, [2017-11-24T03:43:18.257231 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Processed  State=[limits] with Result=[ok]
[----] I, [2017-11-24T03:43:18.257352 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Processed State =[limits]
[----] I, [2017-11-24T03:43:18.257644 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Next State=[used]
[----] I, [2017-11-24T03:43:18.258060 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Processing State=[used]
[----] I, [2017-11-24T03:43:18.258273 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Following Relationship [miqaedb:/System/CommonMethods/QuotaMethods/used#create]
[----] I, [2017-11-24T03:43:18.265623 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Updated namespace [miqaedb:/System/CommonMethods/QuotaMethods/used#create  ManageIQ/System/CommonMethods]
[----] I, [2017-11-24T03:43:18.277076 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Updated namespace [System/CommonMethods/QuotaMethods/used  ManageIQ/System/CommonMethods]
[----] I, [2017-11-24T03:43:18.285103 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Invoking [inline] method [/ManageIQ/System/CommonMethods/QuotaMethods/used] with inputs [{}]
[----] I, [2017-11-24T03:43:18.287055 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) <AEMethod [/ManageIQ/System/CommonMethods/QuotaMethods/used]> Starting 
[----] I, [2017-11-24T03:43:18.954595 #13150:91b5b8]  INFO -- : <AEMethod used> Quota Used: {:cpu=>55, :memory=>102139691008, :vms=>33, :storage=>1564307619840, :provisioned_storage=>1666447310848}
[----] E, [2017-11-24T03:43:18.962320 #13150:4bb4460] ERROR -- : <AEMethod used> The following error occurred during method evaluation:
[----] E, [2017-11-24T03:43:18.963045 #13150:4bb4460] ERROR -- : <AEMethod used>   NoMethodError: undefined method `check_quota' for #<MiqAeMethodService::MiqAeServiceVmReconfigureRequest:0x0000000c2bc8a0>
[----] E, [2017-11-24T03:43:18.964248 #13150:4bb4460] ERROR -- : <AEMethod used>   (druby://127.0.0.1:44079) /opt/rh/cfme-gemset/bundler/gems/manageiq-automation_engine-d705a2f0064f/lib/miq_automation_engine/engine/miq_ae_method_service/miq_ae_service_model_base.rb:233:in `method_missing'
(druby://127.0.0.1:44079) /opt/rh/rh-ruby23/root/usr/share/ruby/drb/drb.rb:1624:in `perform_without_block'
(druby://127.0.0.1:44079) /opt/rh/rh-ruby23/root/usr/share/ruby/drb/drb.rb:1584:in `perform'
(druby://127.0.0.1:44079) /opt/rh/rh-ruby23/root/usr/share/ruby/drb/drb.rb:1657:in `block (2 levels) in main_loop'
(druby://127.0.0.1:44079) /opt/rh/rh-ruby23/root/usr/share/ruby/drb/drb.rb:1653:in `loop'
(druby://127.0.0.1:44079) /opt/rh/rh-ruby23/root/usr/share/ruby/drb/drb.rb:1653:in `block in main_loop'
/ManageIQ/System/CommonMethods/QuotaMethods/used:54:in `active_provision_counts'
/ManageIQ/System/CommonMethods/QuotaMethods/used:26:in `used'
/ManageIQ/System/CommonMethods/QuotaMethods/used:17:in `main'
[----] E, [2017-11-24T03:43:18.969114 #13150:4bb4460] ERROR -- : Method STDERR: (druby://127.0.0.1:44079) /opt/rh/cfme-gemset/bundler/gems/manageiq-automation_engine-d705a2f0064f/lib/miq_automation_engine/engine/miq_ae_method_service/miq_ae_service_model_base.rb:233:in `method_missing': undefined method `check_quota' for #<MiqAeMethodService::MiqAeServiceVmReconfigureRequest:0x0000000c2bc8a0> (NoMethodError)
[----] E, [2017-11-24T03:43:18.969756 #13150:4bb4460] ERROR -- : Method STDERR: 	from (druby://127.0.0.1:44079) /opt/rh/rh-ruby23/root/usr/share/ruby/drb/drb.rb:1624:in `perform_without_block'
[----] E, [2017-11-24T03:43:18.970390 #13150:4bb4460] ERROR -- : Method STDERR: 	from (druby://127.0.0.1:44079) /opt/rh/rh-ruby23/root/usr/share/ruby/drb/drb.rb:1584:in `perform'
[----] E, [2017-11-24T03:43:18.970979 #13150:4bb4460] ERROR -- : Method STDERR: 	from (druby://127.0.0.1:44079) /opt/rh/rh-ruby23/root/usr/share/ruby/drb/drb.rb:1657:in `block (2 levels) in main_loop'
[----] E, [2017-11-24T03:43:18.971577 #13150:4bb4460] ERROR -- : Method STDERR: 	from (druby://127.0.0.1:44079) /opt/rh/rh-ruby23/root/usr/share/ruby/drb/drb.rb:1653:in `loop'
[----] E, [2017-11-24T03:43:18.972162 #13150:4bb4460] ERROR -- : Method STDERR: 	from (druby://127.0.0.1:44079) /opt/rh/rh-ruby23/root/usr/share/ruby/drb/drb.rb:1653:in `block in main_loop'
[----] E, [2017-11-24T03:43:18.972698 #13150:4bb4460] ERROR -- : Method STDERR: 	from /ManageIQ/System/CommonMethods/QuotaMethods/used:54:in `active_provision_counts'
[----] E, [2017-11-24T03:43:18.973260 #13150:4bb4460] ERROR -- : Method STDERR: 	from /ManageIQ/System/CommonMethods/QuotaMethods/used:26:in `used'
[----] E, [2017-11-24T03:43:18.973961 #13150:4bb4460] ERROR -- : Method STDERR: 	from /ManageIQ/System/CommonMethods/QuotaMethods/used:17:in `main'
[----] E, [2017-11-24T03:43:18.974466 #13150:4bb4460] ERROR -- : Method STDERR: 	from /ManageIQ/System/CommonMethods/QuotaMethods/used:74:in `<main>'
[----] I, [2017-11-24T03:43:18.997416 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) <AEMethod [/ManageIQ/System/CommonMethods/QuotaMethods/used]> Ending
[----] E, [2017-11-24T03:43:18.997939 #13150:3d5130] ERROR -- : Q-task_id([vm_reconfigure_request_4]) Aborting instantiation (unknown method return code) because [Method exited with rc=Unknown RC: [1]]
[----] E, [2017-11-24T03:43:18.998327 #13150:3d5130] ERROR -- : Q-task_id([vm_reconfigure_request_4]) State=<used> running  raised exception: <Method exited with rc=Unknown RC: [1]>
[----] W, [2017-11-24T03:43:18.998478 #13150:3d5130]  WARN -- : Q-task_id([vm_reconfigure_request_4]) Error in State=[used]
[----] I, [2017-11-24T03:43:18.998836 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Followed  Relationship [miqaedb:/System/CommonMethods/QuotaStatemachine/quota#create]
[----] I, [2017-11-24T03:43:18.999535 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Followed  Relationship [miqaedb:/System/Policy/VmReconfigureRequest_starting#create]
[----] I, [2017-11-24T03:43:19.000010 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Followed  Relationship [miqaedb:/System/Policy/request_starting#create]
[----] I, [2017-11-24T03:43:19.000494 #13150:3d5130]  INFO -- : Q-task_id([vm_reconfigure_request_4]) Followed  Relationship [miqaedb:/System/Event/RequestEvent/Request/request_starting#create]

Version-Release number of selected component (if applicable):
Version 5.9.0.10.20171121225911_a2209d2

How reproducible:


Steps to Reproduce:
1.Set tenant quota
2.reconfigure a vm with over the quota resources
3.

Actual results:
Gets stuck in pending state, and shows error in automation log

Expected results:
Should show error of exceed quota

Additional info:

Comment 4 CFME Bot 2017-12-14 21:36:44 UTC
New commit detected on ManageIQ/manageiq/master:
https://github.com/ManageIQ/manageiq/commit/107f2ef14187f0177673565c7ede8a6deaecd998

commit 107f2ef14187f0177673565c7ede8a6deaecd998
Author:     Tina Fitzgerald <tfitzger@redhat.com>
AuthorDate: Fri Dec 8 14:25:49 2017 -0500
Commit:     Tina Fitzgerald <tfitzger@redhat.com>
CommitDate: Thu Dec 14 11:05:53 2017 -0500

    Include MiqProvisionQuotaMixin.
    
    https://bugzilla.redhat.com/show_bug.cgi?id=1517112

 app/models/vm_cloud_reconfigure_request.rb | 1 +
 app/models/vm_migrate_request.rb           | 1 +
 app/models/vm_reconfigure_request.rb       | 1 +
 3 files changed, 3 insertions(+)

Comment 5 CFME Bot 2017-12-14 21:41:52 UTC
New commit detected on ManageIQ/manageiq-automation_engine/master:
https://github.com/ManageIQ/manageiq-automation_engine/commit/f5e204abf49b59af942d9c13d9fe794a1e005b57

commit f5e204abf49b59af942d9c13d9fe794a1e005b57
Author:     Tina Fitzgerald <tfitzger@redhat.com>
AuthorDate: Mon Oct 30 12:42:46 2017 -0400
Commit:     Tina Fitzgerald <tfitzger@redhat.com>
CommitDate: Thu Dec 14 11:27:47 2017 -0500

    Add vm_reconfigure_request service model.
    Add new quota mixin to expose check_quota.
    https://bugzilla.redhat.com/show_bug.cgi?id=1517112

 .../miq_ae_service_vm_cloud_reconfigure_request.rb               | 9 +++++++++
 .../service_models/miq_ae_service_vm_migrate_request.rb          | 2 ++
 .../service_models/miq_ae_service_vm_reconfigure_request.rb      | 9 +++++++++
 .../mixins/miq_ae_service_miq_provision_quota_mixin.rb           | 6 ++++++
 4 files changed, 26 insertions(+)
 create mode 100644 lib/miq_automation_engine/service_models/miq_ae_service_vm_cloud_reconfigure_request.rb
 create mode 100644 lib/miq_automation_engine/service_models/miq_ae_service_vm_reconfigure_request.rb
 create mode 100644 lib/miq_automation_engine/service_models/mixins/miq_ae_service_miq_provision_quota_mixin.rb

Comment 8 Satoe Imaishi 2018-04-10 21:14:27 UTC
*** Bug 1564697 has been marked as a duplicate of this bug. ***


Note You need to log in before you can comment on or make changes to this bug.