Bugzilla will be upgraded to version 5.0. The upgrade date is tentatively scheduled for 2 December 2018, pending final testing and feedback.
Bug 1313878 - Can't search host by domain parameters
Can't search host by domain parameters
Status: CLOSED ERRATA
Product: Red Hat Satellite 6
Classification: Red Hat
Component: Provisioning (Show other bugs)
6.0.4
Unspecified Unspecified
unspecified Severity medium (vote)
: GA
: Unused
Assigned To: orabin
Kedar Bidarkar
http://projects.theforeman.org/issues...
: Triaged
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2016-03-02 09:19 EST by orabin
Modified: 2016-07-27 05:04 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2016-07-27 05:04:03 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
searching host by domain param works fine (64.26 KB, image/png)
2016-05-30 07:50 EDT, Kedar Bidarkar
no flags Details


External Trackers
Tracker ID Priority Status Summary Last Updated
Foreman Issue Tracker 13937 None None None 2016-04-22 12:19 EDT
Red Hat Product Errata RHBA-2016:1500 normal SHIPPED_LIVE Red Hat Satellite 6.2 Base Libraries 2016-07-27 08:24:38 EDT

  None (edit)
Description orabin 2016-03-02 09:19:06 EST
Searching a host by a parameter that is connected to it's domain results in the following error:
<pre>
PG::Error: ERROR: column hosts.domain_id does not exist LINE 1: ...WHERE "hosts"."type" IN ('Host::Managed') AND ((( hosts.doma... ^ : SELECT "hosts".* FROM "hosts" WHERE "hosts"."type" IN ('Host::Managed') AND ((( hosts.domain_id = 1 ))) ORDER BY "hosts"."name" ASC LIMIT 20 OFFSET 0
</pre>
This is a result of trying to add a condition on hosts.domain_id: https://github.com/theforeman/foreman/blob/develop/app/models/concerns/hostext/search.rb#L212

domain_id is delegated to primary_interface but since search_by_params constructs a sql condition directly that doesn't help.
The condition in search_by_params needs to add the join to get the domain_id.
Comment 1 orabin 2016-03-02 09:19:08 EST
Created from redmine issue http://projects.theforeman.org/issues/13937
Comment 2 orabin 2016-03-02 09:19:13 EST
Upstream bug assigned to orabin@redhat.com
Comment 4 Bryan Kearney 2016-03-08 08:03:53 EST
Moving to POST since upstream bug http://projects.theforeman.org/issues/13937 has been closed
-------------
Ori Rabin
Applied in changeset commit:f2506d3482098dcd4faffe64c036f139d77034d7.
Comment 6 Kedar Bidarkar 2016-05-24 06:12:50 EDT
please provide the verification steps.
Comment 7 orabin 2016-05-24 06:21:44 EDT
Steps:
1. Create a domian with a parameter named "foo" with the value "bar"
2. Create a host connected to that domain
3. In Hosts -> All hosts search for: params.foo = bar
4. Make sure the search returns the host
Comment 8 Kedar Bidarkar 2016-05-30 07:46:53 EDT
We can now search hosts successfully using parameters like "params.subnet = vlan111" or "params.subnet = 112".

VERIFIED with sat62-snap(GA)-13.1
Comment 9 Kedar Bidarkar 2016-05-30 07:50 EDT
Created attachment 1162787 [details]
searching host by domain param works fine
Comment 11 errata-xmlrpc 2016-07-27 05:04:03 EDT
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2016:1500

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