Hide Forgot
Description of problem: A traceback happen when a chargeback has a filter for sub-tenant Version-Release number of selected component (if applicable): CF 4.1.1 How reproducible: Always Steps to Reproduce: 1. Create a sub-tenant 2. Create a user and group. Assign the role EvmRole-user_self_service and sub-tenant to the group. 3. Provision a vm and observe the owner/group is assigned correctly. In my case, it is: Owner Juan Dela Cruz Group retail_user_self_service 4. Create a chargeback report with the following chargeback filter: show cost by: Tenant Tenant: Retail Group by: date 5. Wait for some metrics data 6. Generate a report on demand When the group has no vm, the exception does not occur. Actual results: Chargeback report not generated. Expected results: Chargeback report should be generated Additional info: [----] E, [2016-09-27T00:30:09.202718 #3569:100598c] ERROR -- : [NoMethodError]: undefined method `name' for nil:NilClass Method:[rescue in _async_generate_table] [----] E, [2016-09-27T00:30:09.207004 #3569:100598c] ERROR -- : /var/www/miq/vmdb/app/models/chargeback_vm.rb:93:in `get_keys_and_extra_fields' /var/www/miq/vmdb/app/models/chargeback.rb:45:in `block (2 levels) in build_results_for_report_chargeback' /opt/rh/cfme-gemset/gems/activerecord-5.0.0/lib/active_record/relation/delegation.rb:38:in `each' /opt/rh/cfme-gemset/gems/activerecord-5.0.0/lib/active_record/relation/delegation.rb:38:in `each' /var/www/miq/vmdb/app/models/chargeback.rb:43:in `block in build_results_for_report_chargeback' /var/www/miq/vmdb/app/models/chargeback.rb:34:in `each' /var/www/miq/vmdb/app/models/chargeback.rb:34:in `each_cons' /var/www/miq/vmdb/app/models/chargeback.rb:34:in `build_results_for_report_chargeback' /var/www/miq/vmdb/app/models/chargeback_vm.rb:85:in `build_results_for_report_ChargebackVm' /var/www/miq/vmdb/app/models/miq_report/generator.rb:201:in `_generate_table' /var/www/miq/vmdb/app/models/miq_report/generator.rb:176:in `block in generate_table' /var/www/miq/vmdb/app/models/user.rb:280:in `with_user' /var/www/miq/vmdb/app/models/miq_report/generator.rb:176:in `generate_table' /var/www/miq/vmdb/app/models/miq_report/generator/async.rb:96:in `_async_generate_table' /var/www/miq/vmdb/app/models/miq_queue.rb:345:in `block in deliver' /opt/rh/rh-ruby22/root/usr/share/ruby/timeout.rb:89:in `block in timeout' /opt/rh/rh-ruby22/root/usr/share/ruby/timeout.rb:34:in `block in catch' /opt/rh/rh-ruby22/root/usr/share/ruby/timeout.rb:34:in `catch' /opt/rh/rh-ruby22/root/usr/share/ruby/timeout.rb:34:in `catch' /opt/rh/rh-ruby22/root/usr/share/ruby/timeout.rb:104:in `timeout' /var/www/miq/vmdb/app/models/miq_queue.rb:341:in `deliver' /var/www/miq/vmdb/app/models/miq_queue_worker_base/runner.rb:106:in `deliver_queue_message' /var/www/miq/vmdb/app/models/miq_queue_worker_base/runner.rb:134:in `deliver_message' /var/www/miq/vmdb/app/models/miq_queue_worker_base/runner.rb:152:in `block in do_work' /var/www/miq/vmdb/app/models/miq_queue_worker_base/runner.rb:146:in `loop' /var/www/miq/vmdb/app/models/miq_queue_worker_base/runner.rb:146:in `do_work' /var/www/miq/vmdb/app/models/miq_worker/runner.rb:334:in `block in do_work_loop' /var/www/miq/vmdb/app/models/miq_worker/runner.rb:331:in `loop' /var/www/miq/vmdb/app/models/miq_worker/runner.rb:331:in `do_work_loop' /var/www/miq/vmdb/app/models/miq_worker/runner.rb:153:in `run' /var/www/miq/vmdb/app/models/miq_worker/runner.rb:128:in `start' /var/www/miq/vmdb/app/models/miq_worker/runner.rb:21:in `start_worker' /var/www/miq/vmdb/app/models/miq_worker.rb:347:in `block in start' /opt/rh/cfme-gemset/gems/nakayoshi_fork-0.0.3/lib/nakayoshi_fork.rb:24:in `fork' /opt/rh/cfme-gemset/gems/nakayoshi_fork-0.0.3/lib/nakayoshi_fork.rb:24:in `fork' /var/www/miq/vmdb/app/models/miq_worker.rb:345:in `start' /var/www/miq/vmdb/app/models/miq_worker.rb:274:in `start_worker' /var/www/miq/vmdb/app/models/miq_worker.rb:154:in `block in sync_workers' /var/www/miq/vmdb/app/models/miq_worker.rb:154:in `times' /var/www/miq/vmdb/app/models/miq_worker.rb:154:in `sync_workers' /var/www/miq/vmdb/app/models/miq_server/worker_management/monitor.rb:52:in `block in sync_workers' /var/www/miq/vmdb/app/models/miq_server/worker_management/monitor.rb:50:in `each' /var/www/miq/vmdb/app/models/miq_server/worker_management/monitor.rb:50:in `sync_workers' /var/www/miq/vmdb/app/models/miq_server/worker_management/monitor.rb:22:in `monitor_workers' /var/www/miq/vmdb/app/models/miq_server.rb:362:in `block in monitor' /var/www/miq/vmdb/gems/pending/util/extensions/miq-benchmark.rb:11:in `realtime_store' /var/www/miq/vmdb/gems/pending/util/extensions/miq-benchmark.rb:30:in `realtime_block' /var/www/miq/vmdb/app/models/miq_server.rb:362:in `monitor' /var/www/miq/vmdb/app/models/miq_server.rb:382:in `block (2 levels) in monitor_loop' /var/www/miq/vmdb/gems/pending/util/extensions/miq-benchmark.rb:11:in `realtime_store' /var/www/miq/vmdb/gems/pending/util/extensions/miq-benchmark.rb:30:in `realtime_block' /var/www/miq/vmdb/app/models/miq_server.rb:382:in `block in monitor_loop' /var/www/miq/vmdb/app/models/miq_server.rb:381:in `loop' /var/www/miq/vmdb/app/models/miq_server.rb:381:in `monitor_loop' /var/www/miq/vmdb/app/models/miq_server.rb:266:in `start' /var/www/miq/vmdb/lib/workers/evm_server.rb:65:in `start' /var/www/miq/vmdb/lib/workers/evm_server.rb:92:in `start'
This has been fixed a while ago. Upstream commit 102227572e339abcd02bbd53d958d5e8dd019d27 Upstream pr https://github.com/manageiq/manageiq/pull/10812