Red Hat Satellite engineering is moving the tracking of its product development work on Satellite to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "Satellite project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs will be migrated starting at the end of May. If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "Satellite project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/SAT-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1135919 - Unable to filter on classes (v1.5.2)
Summary: Unable to filter on classes (v1.5.2)
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Satellite
Classification: Red Hat
Component: Provisioning
Version: 6.0.4
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: Unspecified
Assignee: Katello Bug Bin
QA Contact: Tazim Kolhar
URL: http://projects.theforeman.org/issues...
Whiteboard:
Depends On:
Blocks: 1110360
TreeView+ depends on / blocked
 
Reported: 2014-09-01 07:44 UTC by Stephen Benjamin
Modified: 2017-02-23 21:00 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-08-12 05:15:42 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
class names (49.75 KB, image/png)
2015-04-22 07:29 UTC, Tazim Kolhar
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Foreman Issue Tracker 7035 0 None None None 2016-04-22 16:23:21 UTC
Red Hat Product Errata RHSA-2015:1592 0 normal SHIPPED_LIVE Important: Red Hat Satellite 6.1.1 on RHEL 6 2015-08-12 09:04:35 UTC

Description Stephen Benjamin 2014-09-01 07:44:44 UTC
Hi, 

With Foreman version 1.5.2 I'm not able filtering the hostlist based on classes. Regardless of which class i try to filter with, Foreman returns all hosts as a result.

Example of filter: class = java

This query should return a few hosts but it returns all hosts.

I did some search and found an old bug (http://projects.theforeman.org/issues/4314). But I believe the cause isn't the same.

After I enabled debug mode. Here's the error I get when applying the class filter:
@  Host::Managed Load (0.3ms)  SELECT `hosts`.* FROM `hosts` WHERE `hosts`.`type` IN ('Host::Managed') LIMIT 1
   (0.5ms)  SELECT id FROM `config_groups` INNER JOIN `config_group_classes` ON `config_group_classes`.`config_group_id` = `config_groups`.`id` INNER JOIN `puppetclasses` ON `puppetclasses`.`id` = `config_group_classes`.`puppetclass_id` WHERE (puppetclasses.name = BINARY 'java') ORDER BY config_groups.name

Mysql2::Error: Column 'id' in field list is ambiguous: SELECT id FROM `config_groups` INNER JOIN `config_group_classes` ON `config_group_classes`.`config_group_id` = `config_groups`.`id` INNER JOIN `puppetclasses` ON `puppetclasses`.`id` = `config_group_classes`.`puppetclass_id` WHERE (puppetclasses.name = BINARY 'java') ORDER BY config_groups.name
   (0.2ms)  SELECT COUNT(*) FROM `user_facts` WHERE `user_facts`.`user_id` = 2
  Host::Managed Load (1.0ms)  SELECT `hosts`.* FROM `hosts` WHERE `hosts`.`type` IN ('Host::Managed') ORDER BY `hosts`.`name` ASC LIMIT 25 OFFSET 0
  Hostgroup Load (0.5ms)  SELECT `hostgroups`.* FROM `hostgroups` WHERE `hostgroups`.`id` IN (30, 20, 19, 16, 17, 12, 13, 10, 9, 6, 5, 27, 25, 24) ORDER BY hostgroups.title
  Operatingsystem Load (0.3ms)  SELECT `operatingsystems`.* FROM `operatingsystems` WHERE `operatingsystems`.`id` IN (5, 6, 1, 4) ORDER BY operatingsystems.name
@

The error states an ambiguous field 'id'. I modified the query by adding the tablename, but altough I got an empty result ... don't know whether there's another root cause of this problem.

Let me know if more information is needed.

Regards
Reto

Comment 1 Stephen Benjamin 2014-09-01 07:44:47 UTC
Created from redmine issue http://projects.theforeman.org/issues/7035

Comment 3 jmagen@redhat.com 2014-09-01 11:17:41 UTC
Merged f06b276b93f9ff47ca66174c606fee6fc2c64321 in upstream develop branch for
http://projects.theforeman.org/issues/7035

It should work when patch is cherry-picked downstream

Comment 4 Bryan Kearney 2014-09-01 12:05:23 UTC
Moving to POST since upstream bug http://projects.theforeman.org/issues/7035 has been closed
-------------
Dominic Cleal
Applied in changeset commit:f06b276b93f9ff47ca66174c606fee6fc2c64321.

Comment 7 Tazim Kolhar 2015-04-21 10:04:53 UTC
Hi,

please provide verification steps

thanks

Comment 8 Stephen Benjamin 2015-04-21 11:02:05 UTC
Steps to verify:
1. Create a couple of hosts
2. Assign a puppet class to one of them
3. Search for "class = <classname>"
4. Ensure there's only one result

Comment 9 Tazim Kolhar 2015-04-22 07:27:31 UTC
VERIFIED :
# rpm -qa | grep foreman
foreman-libvirt-1.7.2.15-1.el6_6sat.noarch
ruby193-rubygem-foreman-tasks-0.6.12.3-1.el6_6sat.noarch
foreman-postgresql-1.7.2.15-1.el6_6sat.noarch
ruby193-rubygem-foreman_docker-1.2.0.7-1.el6_6sat.noarch
ruby193-rubygem-foreman_gutterball-0.0.1.9-1.el6_6sat.noarch
rubygem-hammer_cli_foreman_discovery-0.0.1.4-1.el6_6sat.noarch
foreman-debug-1.7.2.15-1.el6_6sat.noarch
foreman-compute-1.7.2.15-1.el6_6sat.noarch
foreman-gce-1.7.2.15-1.el6_6sat.noarch
ruby193-rubygem-foreman_bootdisk-4.0.2.10-1.el6_6sat.noarch
rubygem-hammer_cli_foreman_tasks-0.0.3.3-1.el6_6sat.noarch
foreman-proxy-1.7.2.4-1.el6_6sat.noarch
dhcp207-193.lab.eng.pnq.redhat.com-foreman-client-1.0-1.noarch
dhcp207-193.lab.eng.pnq.redhat.com-foreman-proxy-1.0-2.noarch
foreman-1.7.2.15-1.el6_6sat.noarch
foreman-vmware-1.7.2.15-1.el6_6sat.noarch
ruby193-rubygem-foreman-redhat_access-0.1.0-1.el6_6sat.noarch
rubygem-hammer_cli_foreman-0.1.4.7-1.el6_6sat.noarch
dhcp207-193.lab.eng.pnq.redhat.com-foreman-proxy-client-1.0-1.noarch
foreman-selinux-1.7.2.13-1.el6_6sat.noarch
ruby193-rubygem-foreman_hooks-0.3.7-2.el6_6sat.noarch
rubygem-hammer_cli_foreman_bootdisk-0.1.2.5-1.el6_6sat.noarch
ruby193-rubygem-foreman_openscap-0.3.2.5-1.el6_6sat.noarch
foreman-ovirt-1.7.2.15-1.el6_6sat.noarch
ruby193-rubygem-foreman_discovery-2.0.0.9-1.el6_6sat.noarch
puppet-foreman_scap_client-0.3.3-6.el6_6sat.noarch

Create hosts
assign puppet class to it
Search for "class = <classname>"
it shows the host with assigned class

screenshot attached

Comment 10 Tazim Kolhar 2015-04-22 07:29:01 UTC
Created attachment 1017295 [details]
class names

Comment 11 Bryan Kearney 2015-08-11 13:31:22 UTC
This bug is slated to be released with Satellite 6.1.

Comment 12 errata-xmlrpc 2015-08-12 05:15:42 UTC
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/RHSA-2015:1592


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