Project

General

Profile

Actions

Bug #13112

closed

N+1 query on hosts#index from last report object

Added by Dominic Cleal about 8 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Database
Target version:
Difficulty:
Triaged:
Fixed in Releases:
Found in Releases:

Description

Since #12954, the hosts index is reporting an N+1 database lookup when retrieving the last report object to calculate the host status.

There's an optimisation in #10782 which isn't being used when calling the relevant? method (which now uses the object) as the method doesn't take options including the last report object.


Related issues 1 (0 open1 closed)

Related to Foreman - Bug #12954: Foreman puppet report status does not work without a puppet proxyClosedDominic Cleal12/29/2015Actions
Actions #1

Updated by Dominic Cleal about 8 years ago

  • Related to Bug #12954: Foreman puppet report status does not work without a puppet proxy added
Actions #2

Updated by Dominic Cleal about 8 years ago

  • Description updated (diff)
Actions #3

Updated by Dominic Cleal about 8 years ago

  • Status changed from New to Assigned
  • Assignee set to Dominic Cleal
Actions #4

Updated by Dominic Cleal about 8 years ago

Stack trace:

 | N+1 Query method call stack
 |   /home/dcleal/code/foreman/foreman/app/models/host_status/configuration_status.rb:7:in `last_report'
 |   /home/dcleal/code/foreman/foreman/app/models/host_status/configuration_status.rb:83:in `relevant?'
 |   /home/dcleal/code/foreman/foreman/app/models/host_status/global.rb:10:in `block in build'
 |   /home/dcleal/code/foreman/foreman/app/models/host_status/global.rb:10:in `build'
 |   /home/dcleal/code/foreman/foreman/app/models/host/managed.rb:885:in `build_global_status'
 |   /home/dcleal/code/foreman/foreman/app/helpers/hosts_helper.rb:109:in `host_global_status_icon_class_for_host'
 |   /home/dcleal/code/foreman/foreman/app/helpers/hosts_helper.rb:98:in `name_column'
 |   /home/dcleal/code/foreman/foreman/app/views/hosts/_list.html.erb:22:in `block in _app_views_hosts__list_html_erb___2368167352033240693_98631040'
 |   /home/dcleal/code/foreman/foreman/app/views/hosts/_list.html.erb:17:in `_app_views_hosts__list_html_erb___2368167352033240693_98631040'
 |   /home/dcleal/code/foreman/foreman/app/views/hosts/index.html.erb:4:in `_app_views_hosts_index_html_erb__3208504113801726348_98118920'
Actions #5

Updated by The Foreman Bot about 8 years ago

  • Status changed from Assigned to Ready For Testing
  • Pull request https://github.com/theforeman/foreman/pull/3055 added
Actions #6

Updated by Dominic Cleal about 8 years ago

  • translation missing: en.field_release changed from 71 to 104
Actions #7

Updated by Dominic Cleal about 8 years ago

  • Status changed from Ready For Testing to Closed
  • % Done changed from 0 to 100
Actions

Also available in: Atom PDF