Bug 974185

Summary: Filtered RHEL content promotion fails for content views.
Product: Red Hat Satellite Reporter: Hayk Hovsepyan <hhovsepy>
Component: APIAssignee: Bryan Kearney <bkearney>
Status: CLOSED CURRENTRELEASE QA Contact: Hayk Hovsepyan <hhovsepy>
Severity: medium Docs Contact:
Priority: medium    
Version: 6.0.1CC: bbuckingham, hhovsepy, jsherril, mmccune, omaciel
Target Milestone: UnspecifiedKeywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-07-18 21:23:04 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Hayk Hovsepyan 2013-06-13 15:20:19 UTC
Description of problem:
Promotion of content view which has RHEL repo and some filter, fails with error "Failed to promote changeset 'mychangeset1'. Check notices for more details
Request Timeout (RestClient::RequestTimeout)"

Version-Release number of selected component (if applicable):
Katello-Katello-Installation-RegisterRHNClassic-1.1-3.noarch
foreman-installer-puppet-tftp-0-5.ea6c5e5.el6sat.noarch
foreman-1.1.10009-1.noarch
katello-certs-tools-1.4.2-2.el6sat.noarch
pulp-server-2.1.1-1.el6sat.noarch
katello-configure-1.4.3-15.el6sat.noarch
openldap-2.4.23-31.el6.x86_64
candlepin-scl-quartz-2.1.5-5.el6_4.noarch
katello-glue-elasticsearch-1.4.2-12.el6sat.noarch
katello-1.4.2-12.el6sat.noarch
candlepin-tomcat6-0.8.9-1.el6_4.noarch
katello-qpid-broker-key-pair-1.0-1.noarch
candlepin-cert-consumer-cfseserver5.usersys.redhat.com-1.0-1.noarch
signo-0.0.16-1.el6sat.noarch
apr-util-ldap-1.3.9-3.el6_0.1.x86_64
Katello-Katello-Installation-Satellite6Latest-1.0-8.noarch
foreman-installer-puppet-concat-0-2.d776701.git.0.21ef926.el6sat.noarch
candlepin-scl-runtime-1-5.el6_4.noarch
katello-candlepin-cert-key-pair-1.0-1.noarch
katello-qpid-client-key-pair-1.0-1.noarch
pulp-rpm-handlers-2.1.1-1.el6sat.noarch
foreman-installer-puppet-puppet-0-3.ab46748.el6sat.noarch
katello-cli-1.4.2-7.el6sat.noarch
foreman-postgresql-1.1.10009-1.noarch
pulp-rpm-plugins-2.1.1-1.el6sat.noarch
pulp-selinux-2.1.1-1.el6sat.noarch
foreman-proxy-installer-1.0.1-8.f5ae2cd.el6sat.noarch
ruby193-rubygem-ldap_fluff-0.2.2-1.el6sat.noarch
foreman-proxy-1.1.10003-1.el6sat.noarch
candlepin-scl-1-5.el6_4.noarch
elasticsearch-0.19.9-8.el6sat.noarch
katello-common-1.4.2-12.el6sat.noarch
katello-selinux-1.4.3-3.el6sat.noarch
katello-glue-candlepin-1.4.2-12.el6sat.noarch
candlepin-selinux-0.8.9-1.el6_4.noarch
katello-all-1.4.2-12.el6sat.noarch
katello-agent-1.4.2-4.el6sat.noarch
foreman-installer-puppet-xinetd-0-50a267b8.git.0.44aca6a.el6sat.noarch
foreman-installer-puppet-dhcp-0-5.3a4a13c.el6sat.noarch
katello-cli-common-1.4.2-7.el6sat.noarch
candlepin-scl-rhino-1.7R3-1.el6_4.noarch
python-ldap-2.3.10-1.el6.x86_64
ruby193-rubygem-net-ldap-0.3.1-2.el6sat.noarch
foreman-installer-puppet-foreman-0-6.568c5c4.el6sat.noarch
signo-katello-0.0.16-1.el6sat.noarch
katello-glue-pulp-1.4.2-12.el6sat.noarch
katello-configure-foreman-1.4.3-15.el6sat.noarch
candlepin-0.8.9-1.el6_4.noarch
katello-foreman-all-1.4.2-12.el6sat.noarch
Katello-Katello-Configuration-KatelloClient-1.1-47.noarch
foreman-installer-puppet-foreman_proxy-0-8.bd1e35d.el6sat.noarch
foreman-installer-puppet-dns-0-7.fcae203.el6sat.noarch
Katello-Katello-Sanity-ImportKeys-1.2-1.noarch

How reproducible:
always

Steps to Reproduce:
1. Import valid manifest, enable RHEL repo and sync it.
2. Create some environments (dev, test, prod ...)
3. Create content definition, add RHEL repo into it, and create a filter there to exclude some Errata. Publish content definition.
4. Create changeset to promote content view to "prod" environment. Apply that changeset. You will see that it shows error: " 	
Failed to promote changeset 'mychangeset1'. Check notices for more details
Request Timeout (RestClient::RequestTimeout) "

Actual results:
changeset promotion fails

Expected results:
it should be successfull and errata which was excluded by filter should not be available to consume.

Additional info:
It works for content view without filter.
The machine parameters were:
MemTotal: 3923096 kB
model name: Intel Core i7 9xx (Nehalem Class Core i7)
cpu MHz	: 2133.408
cache size: 2048 KB

Comment 2 Og Maciel 2013-06-13 17:02:14 UTC
Hayk, for what is worth, I took an existing Content View Definition that has RHEL 6Server x86_64 RPMs (already published and promoted via a changeset) and added a filter to exclude an errata item:

kk content definition filter create --name removed_errata --definition RHELCVD64
kk content definition filter add_repo --definition RHELCVD64 --name removed_errata --product 'Red Hat Enterprise Linux Server' --repo 'Red Hat Enterprise Linux 6 Server RPMs x86_64 6Server'
kk content definition filter add_rule --definition RHELCVD64 --name removed_errata --content erratum --type excludes --rule '{"units": [{"id": "RHBA-2010:0836"}]}'

After refreshing it I tried to promote it (individually) via a new changeset but saw the following in the UI:

  Failed to promote changeset 'Changeset3'. Check notices for more details
can't convert Symbol into Integer (TypeError)

As I mentiond before, RHELCVD64 had already been published and was promoted as part of a composite CVD fwiw.

Comment 3 Brad Buckingham 2013-06-17 21:44:38 UTC
Og, the issue you are encountering in comment #2 looks like bug 973785, which should be solved in the current puddle (e.g. katello-1.4.2-14.el6sat.noarch)

Comment 4 Brad Buckingham 2013-06-17 22:13:05 UTC
Hayk, the issue you are seeing with the RequestTimeout is similar to the issue raised by bug 973834.  As part of the resolution for that bug, the timeout that was used by Runcible (i.e. pulp interface) was increased to be what is used by Katello (i.e. it went from 30 sec to 2 min).  There are still issues with timeout that were raised by that bug; therefore, it was moved forward to the next MDP.

Based on the memory that you have available on the VM (~4GB), it is possible that the swapping was occurring which combined with the 30 timeout configuration, could lead to the RequestTimeout.

If possible, can you update the configuration to use 6GB RAM and retest?
If that is not an option, can you retest with the latest build?  I'd like to see if the initial solution for bug 973834 addresses the initial timeout that you are experiencing.

BTW.  I just ran a test with the latest puddle where I successfully promoted with a single changeset 2 views (1 with rhel6.2 and 1 with rhel6Server).  Both views had a filter rule applied that indicated to 'exclude enhancement errata'.

Comment 5 Mike McCune 2013-06-18 21:25:15 UTC
Moving back to ON_QA, can this get retested with the latest puddle?

Comment 6 Hayk Hovsepyan 2013-06-19 14:08:38 UTC
Verified on revision:
Katello-Katello-Installation-RegisterRHNClassic-1.1-4.noarch
foreman-installer-puppet-tftp-0-5.ea6c5e5.el6sat.noarch
foreman-1.1.10011-1.noarch
openldap-2.4.23-31.el6.x86_64
candlepin-scl-quartz-2.1.5-5.el6_4.noarch
katello-glue-elasticsearch-1.4.2-14.el6sat.noarch
katello-1.4.2-14.el6sat.noarch
candlepin-tomcat6-0.8.9-1.el6_4.noarch
katello-qpid-broker-key-pair-1.0-1.noarch
candlepin-cert-consumer-cfseserver3.usersys.redhat.com-1.0-1.noarch
signo-0.0.18-1.el6sat.noarch
apr-util-ldap-1.3.9-3.el6_0.1.x86_64
Katello-Katello-Installation-Satellite6Latest-1.0-8.noarch
foreman-installer-puppet-concat-0-2.d776701.git.0.21ef926.el6sat.noarch
candlepin-scl-runtime-1-5.el6_4.noarch
katello-candlepin-cert-key-pair-1.0-1.noarch
katello-qpid-client-key-pair-1.0-1.noarch
pulp-rpm-handlers-2.1.2-0.3.beta.el6sat.noarch
foreman-installer-puppet-foreman-0-6.568c5c4.el6sat.noarch
foreman-installer-puppet-puppet-0-3.ab46748.el6sat.noarch
katello-cli-1.4.2-7.el6sat.noarch
python-ldap-2.3.10-1.el6.x86_64
katello-certs-tools-1.4.2-2.el6sat.noarch
pulp-server-2.1.2-0.3.beta.el6sat.noarch
katello-configure-1.4.3-16.el6sat.noarch
pulp-selinux-2.1.2-0.3.beta.el6sat.noarch
ruby193-rubygem-ldap_fluff-0.2.2-1.el6sat.noarch
foreman-proxy-1.1.10003-1.el6sat.noarch
candlepin-scl-1-5.el6_4.noarch
elasticsearch-0.19.9-8.el6sat.noarch
katello-common-1.4.2-14.el6sat.noarch
katello-glue-candlepin-1.4.2-14.el6sat.noarch
katello-selinux-1.4.3-3.el6sat.noarch
candlepin-selinux-0.8.9-1.el6_4.noarch
katello-all-1.4.2-14.el6sat.noarch
katello-agent-1.4.2-4.el6sat.noarch
foreman-installer-puppet-xinetd-0-50a267b8.git.0.44aca6a.el6sat.noarch
foreman-installer-puppet-dhcp-0-5.3a4a13c.el6sat.noarch
katello-cli-common-1.4.2-7.el6sat.noarch
foreman-postgresql-1.1.10011-1.noarch
candlepin-scl-rhino-1.7R3-1.el6_4.noarch
ruby193-rubygem-net-ldap-0.3.1-2.el6sat.noarch
pulp-rpm-plugins-2.1.2-0.3.beta.el6sat.noarch
foreman-proxy-installer-1.0.1-10.f5ae2cd.el6sat.noarch
signo-katello-0.0.18-1.el6sat.noarch
katello-glue-pulp-1.4.2-14.el6sat.noarch
katello-configure-foreman-1.4.3-16.el6sat.noarch
candlepin-0.8.9-1.el6_4.noarch
katello-foreman-all-1.4.2-14.el6sat.noarch
Katello-Katello-Configuration-KatelloClient-1.1-49.noarch
foreman-installer-puppet-foreman_proxy-0-8.bd1e35d.el6sat.noarch
foreman-installer-puppet-dns-0-7.fcae203.el6sat.noarch
Katello-Katello-Sanity-ImportKeys-1.2-1.noarch

It works on machine with 16GB RAM.
And errata is removed from environment.

Comment 7 Mike McCune 2013-07-18 21:23:04 UTC
mass move to CLOSED:CURRENTRELEASE since MDP1 has been released.