| Summary: | RHV Host refresh fail on undefined method `detect' for nil:NilClass | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat CloudForms Management Engine | Reporter: | Ilanit Stein <istein> | ||||||
| Component: | Providers | Assignee: | Piotr Kliczewski <pkliczew> | ||||||
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Ilanit Stein <istein> | ||||||
| Severity: | medium | Docs Contact: | |||||||
| Priority: | high | ||||||||
| Version: | 5.7.0 | CC: | istein, jcutter, jfrey, jhardy, mgoldboi, obarenbo, radek | ||||||
| Target Milestone: | GA | Keywords: | TestOnly, ZStream | ||||||
| Target Release: | 5.9.0 | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| Whiteboard: | rhev | ||||||||
| Fixed In Version: | 5.9.0.1 | Doc Type: | If docs needed, set a value | ||||||
| Doc Text: | Story Points: | --- | |||||||
| Clone Of: | |||||||||
| : | 1460334 (view as bug list) | Environment: | |||||||
| Last Closed: | 2018-03-06 14:33:54 UTC | Type: | Bug | ||||||
| Regression: | --- | Mount Type: | --- | ||||||
| Documentation: | --- | CRM: | |||||||
| Verified Versions: | Category: | --- | |||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
| Cloudforms Team: | RHEVM | Target Upstream Version: | |||||||
| Bug Depends On: | |||||||||
| Bug Blocks: | 1460334 | ||||||||
| Attachments: |
|
||||||||
|
Description
Ilanit Stein
2016-11-10 16:50:42 UTC
Created attachment 1219461 [details]
cfme_logs
I checked the logs and it seems that we fail to parse host nics. Is the issue still there? Can I access the environment? Created attachment 1279409 [details]
evm.log
Further to comment 4: This reproduce occur when running host refresh. The full refreshes ended up successfully. Do you see the same issue when using api4? yes. I changed to V4. (by moving config/settings.yml: ovirt_engine_sdk to true, and restart emserverd),d run host refresh. Host (any host)->Configuration->"Refresh Relationships and Power States" Fail in CFME UI provider summary page, Last refresh: "Error - 27 Minutes Ago undefined method `detect' for nil:NilClass" In evm.log: " [----] W, [2017-05-17T04:48:58.144470 #5323:3c5140] WARN -- : MIQ(ManageIQ::Providers::Redhat::InfraManager::Refresh::Parse::Strategies::Api4.host_inv_to_ip) IP lookup by hostname [fake.host100.com]...Failed with the following error: getaddrinfo: Name or service not known [----] E, [2017-05-17T04:48:58.144971 #5323:3c5140] ERROR -- : MIQ(ManageIQ::Providers::Redhat::InfraManager::Refresh::Strategies::Api4#refresh) EMS: [scale-rhv], id: [1] Refresh failed [----] E, [2017-05-17T04:48:58.149117 #5323:3c5140] ERROR -- : [NoMethodError]: undefined method `detect' for nil:NilClass Method:[rescue in block in refresh] [----] E, [2017-05-17T04:48:58.149683 #5323:3c5140] ERROR -- : /var/www/miq/vmdb/app/models/manageiq/providers/redhat/infra_manager/refresh/parse/strategies/host_inventory.rb:138:in `block in host_inv_to_switch_hashes' /var/www/miq/vmdb/app/models/manageiq/providers/redhat/infra_manager/refresh/parse/strategies/host_inventory.rb:135:in `each' /var/www/miq/vmdb/app/models/manageiq/providers/redhat/infra_manager/refresh/parse/strategies/host_inventory.rb:135:in `host_inv_to_switch_hashes' /var/www/miq/vmdb/app/models/manageiq/providers/redhat/infra_manager/refresh/parse/strategies/host_inventory.rb:44:in `block in host_inv_to_hashes' /var/www/miq/vmdb/app/models/manageiq/providers/redhat/infra_manager/refresh/parse/strategies/host_inventory.rb:19:in `each' /var/www/miq/vmdb/app/models/manageiq/providers/redhat/infra_manager/refresh/parse/strategies/host_inventory.rb:19:in `host_inv_to_hashes' /var/www/miq/vmdb/app/models/manageiq/providers/redhat/infra_manager/refresh/parse/strategies/api4.rb:90:in `host_inv_to_hashes' /var/www/miq/vmdb/app/models/manageiq/providers/redhat/infra_manager/refresh/parse/parser.rb:11:in `ems_inv_to_hashes' /var/www/miq/vmdb/app/models/manageiq/providers/redhat/infra_manager/refresh/refresher.rb:39:in `block in parse_targeted_inventory' /opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-e0f3ea8755bf/lib/gems/pending/util/extensions/miq-benchmark.rb:11:in `realtime_store' /opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-e0f3ea8755bf/lib/gems/pending/util/extensions/miq-benchmark.rb:30:in `realtime_block' /var/www/miq/vmdb/app/models/manageiq/providers/redhat/infra_manager/refresh/refresher.rb:38:in `parse_targeted_inventory' /var/www/miq/vmdb/app/models/ems_refresh/refreshers/ems_refresher_mixin.rb:87:in `block in refresh_targets_for_ems' /opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-e0f3ea8755bf/lib/gems/pending/util/extensions/miq-benchmark.rb:11:in `realtime_store' /opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-e0f3ea8755bf/lib/gems/pending/util/extensions/miq-benchmark.rb:30:in `realtime_block' /var/www/miq/vmdb/app/models/ems_refresh/refreshers/ems_refresher_mixin.rb:86:in `refresh_targets_for_ems' /var/www/miq/vmdb/app/models/ems_refresh/refreshers/ems_refresher_mixin.rb:24:in `block (2 levels) in refresh' /opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-e0f3ea8755bf/lib/gems/pending/util/extensions/miq-benchmark.rb:11:in `realtime_store' /opt/rh/cfme-gemset/bundler/gems/manageiq-gems-pending-e0f3ea8755bf/lib/gems/pending/util/extensions/miq-benchmark.rb:30:in `realtime_block' /var/www/miq/vmdb/app/models/ems_refresh/refreshers/ems_refresher_mixin.rb:24:in `block in refresh' /var/www/miq/vmdb/app/models/ems_refresh/refreshers/ems_refresher_mixin.rb:14:in `each' /var/www/miq/vmdb/app/models/ems_refresh/refreshers/ems_refresher_mixin.rb:14:in `refresh' /var/www/miq/vmdb/app/models/manageiq/providers/base_manager/refresher.rb:9:in `refresh' /var/www/miq/vmdb/app/models/ems_refresh.rb:98:in `block in refresh' /var/www/miq/vmdb/app/models/ems_refresh.rb:97:in `each' /var/www/miq/vmdb/app/models/ems_refresh.rb:97:in `refresh' /var/www/miq/vmdb/app/models/miq_queue.rb:347:in `block in deliver' /opt/rh/rh-ruby23/root/usr/share/ruby/timeout.rb:91:in `block in timeout' . . . Tested the fix on CFME-5.8.0.14/RHV-4.1.2
For both api versions 3 & 4, Targeted refresh for the host was done.
In addition, there was also a full refresh, triggered by some VM change:
[----] I, [2017-05-17T11:17:59.695403 #20294:949134] INFO -- : MIQ(MiqQueue.put) Message id: [108149], id: [], Zone: [default], Role: [event], Server: [], Ident: [ems], Target id: [1], Instance id: [], Task id: [], Command: [EmsEvent.add], Timeout: [600], Priority: [100], State: [ready], Deliver On: [], Data: [], Args: [{:event_type=>"UNKNOWN", :source=>"RHEVM", :message=>"VM a_vm_scale_3599 on host fake.host184.com was guaranteed 128 MB but currently has 0 MB", :timestamp=>2017-05-17 15:17:38 UTC, :username=>nil, :full_data=>{:id=>"45485", :href=>"/ovirt-engine/api/events/45485", :description=>"VM a_vm_scale_3599 on host fake.host184.com was guaranteed 128 MB but currently has 0 MB", :severity=>"error", :code=>148, :time=>2017-05-17 15:17:38 UTC, :name=>"UNKNOWN"}, :ems_id=>1, :vm_ems_ref=>nil, :host_ems_ref=>nil, :ems_cluster_ems_ref=>nil}]
Verified on CFME-5.9.0.4(api V4 set by default)/RHV-4.1.7 RHV had 250 VMs. Full refresh - successful Host refresh - successful |