Bug 965230 - Repository sync fails without a clear indication
Summary: Repository sync fails without a clear indication
Keywords:
Status: CLOSED WORKSFORME
Alias: None
Product: Red Hat Satellite
Classification: Red Hat
Component: WebUI
Version: Nightly
Hardware: x86_64
OS: Linux
high
high
Target Milestone: Unspecified
Assignee: Eric Helms
QA Contact: Og Maciel
URL: http://projects.theforeman.org/issues...
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-05-20 18:29 UTC by Og Maciel
Modified: 2019-04-16 14:02 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-04-27 18:18:39 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
Tooltip properly shows information (56.45 KB, image/png)
2014-07-29 15:34 UTC, Og Maciel
no flags Details
Error indicating Forbidden (18.75 KB, image/png)
2015-03-03 13:42 UTC, Marcus Moeller
no flags Details
Importer indicated a failed response (89.28 KB, image/png)
2015-03-03 13:43 UTC, Marcus Moeller
no flags Details
Sync complete - but failed (5.78 KB, image/png)
2015-03-03 14:37 UTC, Bengt Giger
no flags Details

Description Og Maciel 2013-05-20 18:29:12 UTC
Description of problem:
There are times when syncing RHEL repositories via Katello fail without a clear explanation. After DEV performed some investigation, it looks like there is a valid reason for the failure but pulp only exposes a generic failure message tucked in a traceback attribute with the message:

  PulpExecutionException: Importer indicated a failed response

Eventually this pulp task gets moved to a 'history' queue where finally it gets the actual error failure added to its 'summary' attribute:

  {"error"=>"Cannot retrieve repository metadata (repomd.xml) for repository:                                 ACME_Corporation-FailProduct-FailRepo. Please verify its path and try again"}

Also, see https://bugzilla.redhat.com/show_bug.cgi?id=965218 for some needed pulp work.

Version-Release number of selected component (if applicable):

* python-pulp-client-lib-2.1.1-0.10.beta.el6.noarch
* python-pulp-bindings-2.1.1-0.10.beta.el6.noarch
* pulp-selinux-2.1.1-0.10.beta.el6.noarch
* pulp-server-2.1.1-0.10.beta.el6.noarch
* pulp-admin-client-2.1.1-0.10.beta.el6.noarch
* pulp-rpm-plugins-2.1.1-0.10.beta.el6.noarch
* pulp-builtins-admin-extensions-2.1.1-0.10.beta.el6.noarch
* python-pulp-rpm-common-2.1.1-0.10.beta.el6.noarch
* katello-glue-pulp-1.4.2-1.git.411.375f44b.el6.noarch
* python-pulp-common-2.1.1-0.10.beta.el6.noarch

How reproducible:


Steps to Reproduce:
1. I was able to trigger it by syncing Red Hat Enterprise Linux 6 Server x86_64 (RPMs) and Red Hat Enterprise Linux 6 Server x86_64 - Optional (RPMs)
2.
3.

Actual results:

Sync fails but there's no UI explanation as to why it failed.

Expected results:


Additional info:

Comment 1 Eric Helms 2013-09-13 14:46:36 UTC
The fix is being tracked here - https://github.com/Katello/katello/pull/2939

Comment 2 Eric Helms 2013-09-17 21:01:21 UTC
Fixed in 7c914a89453e8020bb941cb9f2b63c3e4a503150

If an error occurs while syncing, the user will get an immediate display of 'Erro Syncing' and a tooltip will appear next to that entry in the table. This tooltip will contain the list of errors encountered while syncing. This display of error status and reasoning will also persist through page refreshes until the repository syncs correctly at a later date.

Comment 4 Og Maciel 2013-10-19 21:25:22 UTC
Though there is a tooltip now displayed in the table, the tooltip is empty (see attached screenshot) until you reload the page. Also, the notification does not show up until you navigate away from the Sync page. Once you go back to the sync page, the tooltip will show a message (in my case, "Not found").

* Create a YUM repo and point it to http://www.yahoo.com
* Sync it

Environment:
* apr-util-ldap-1.3.9-3.el6_0.1.x86_64
* candlepin-0.8.25-1.el6sam.noarch
* candlepin-scl-1-5.el6_4.noarch
* candlepin-scl-quartz-2.1.5-5.el6_4.noarch
* candlepin-scl-rhino-1.7R3-1.el6_4.noarch
* candlepin-scl-runtime-1-5.el6_4.noarch
* candlepin-selinux-0.8.25-1.el6sam.noarch
* candlepin-tomcat6-0.8.25-1.el6sam.noarch
* elasticsearch-0.19.9-8.el6sat.noarch
* foreman-1.3.0-18.el6sat.noarch
* foreman-compute-1.3.0-18.el6sat.noarch
* foreman-libvirt-1.3.0-18.el6sat.noarch
* foreman-postgresql-1.3.0-18.el6sat.noarch
* foreman-proxy-1.3.0-3.el6sat.noarch
* katello-1.4.6-39.el6sat.noarch
* katello-all-1.4.6-39.el6sat.noarch
* katello-candlepin-cert-key-pair-1.0-1.noarch
* katello-certs-tools-1.4.4-1.el6sat.noarch
* katello-cli-1.4.3-24.el6sat.noarch
* katello-cli-common-1.4.3-24.el6sat.noarch
* katello-common-1.4.6-39.el6sat.noarch
* katello-configure-1.4.7-5.el6sat.noarch
* katello-configure-foreman-1.4.7-5.el6sat.noarch
* katello-configure-foreman-proxy-1.4.7-5.el6sat.noarch
* katello-foreman-all-1.4.6-39.el6sat.noarch
* katello-glue-candlepin-1.4.6-39.el6sat.noarch
* katello-glue-elasticsearch-1.4.6-39.el6sat.noarch
* katello-glue-pulp-1.4.6-39.el6sat.noarch
* katello-qpid-broker-key-pair-1.0-1.noarch
* katello-qpid-client-key-pair-1.0-1.noarch
* katello-selinux-1.4.4-4.el6sat.noarch
* openldap-2.4.23-31.el6.x86_64
* pulp-katello-plugins-0.2-1.el6sat.noarch
* pulp-nodes-common-2.3.0-0.22.beta.el6sat.noarch
* pulp-nodes-parent-2.3.0-0.22.beta.el6sat.noarch
* pulp-puppet-plugins-2.3.0-0.22.beta.el6sat.noarch
* pulp-rpm-plugins-2.3.0-0.22.beta.el6sat.noarch
* pulp-selinux-2.3.0-0.22.beta.el6sat.noarch
* pulp-server-2.3.0-0.22.beta.el6sat.noarch
* python-ldap-2.3.10-1.el6.x86_64
* ruby193-rubygem-ldap_fluff-0.2.2-2.el6sat.noarch
* ruby193-rubygem-net-ldap-0.3.1-3.el6sat.noarch
* ruby193-rubygem-runcible-1.0.7-1.el6sat.noarch
* signo-0.0.22-2.el6sat.noarch
* signo-katello-0.0.22-2.el6sat.noarch

Comment 7 Eric Helms 2014-05-29 15:39:51 UTC
Created redmine issue http://projects.theforeman.org/issues/5986 from this bug

Comment 11 Og Maciel 2014-07-29 15:34:22 UTC
Created attachment 922188 [details]
Tooltip properly shows information

Comment 12 Og Maciel 2014-07-29 15:34:49 UTC
Verified:

* apr-util-ldap-1.3.9-3.el6_0.1.x86_64
* candlepin-0.9.19-1.el6_5.noarch
* candlepin-scl-1-5.el6_4.noarch
* candlepin-scl-quartz-2.1.5-5.el6_4.noarch
* candlepin-scl-rhino-1.7R3-1.el6_4.noarch
* candlepin-scl-runtime-1-5.el6_4.noarch
* candlepin-selinux-0.9.19-1.el6_5.noarch
* candlepin-tomcat6-0.9.19-1.el6_5.noarch
* elasticsearch-0.90.10-4.el6sat.noarch
* foreman-1.6.0.32-1.el6sat.noarch
* foreman-compute-1.6.0.32-1.el6sat.noarch
* foreman-gce-1.6.0.32-1.el6sat.noarch
* foreman-libvirt-1.6.0.32-1.el6sat.noarch
* foreman-ovirt-1.6.0.32-1.el6sat.noarch
* foreman-postgresql-1.6.0.32-1.el6sat.noarch
* foreman-proxy-1.6.0.22-1.el6sat.noarch
* foreman-selinux-1.6.0.3-1.el6sat.noarch
* foreman-vmware-1.6.0.32-1.el6sat.noarch
* katello-1.5.0-27.el6sat.noarch
* katello-ca-1.0-1.noarch
* katello-certs-tools-1.5.6-1.el6sat.noarch
* katello-installer-0.0.56-1.el6sat.noarch
* openldap-2.4.23-32.el6_4.1.x86_64
* pulp-katello-0.3-3.el6sat.noarch
* pulp-nodes-common-2.4.0-0.23.beta.el6sat.noarch
* pulp-nodes-parent-2.4.0-0.23.beta.el6sat.noarch
* pulp-puppet-plugins-2.4.0-0.23.beta.el6sat.noarch
* pulp-puppet-tools-2.4.0-0.23.beta.el6sat.noarch
* pulp-rpm-plugins-2.4.0-0.23.beta.el6sat.noarch
* pulp-selinux-2.4.0-0.23.beta.el6sat.noarch
* pulp-server-2.4.0-0.23.beta.el6sat.noarch
* python-ldap-2.3.10-1.el6.x86_64
* ruby193-rubygem-net-ldap-0.3.1-3.el6sat.noarch
* ruby193-rubygem-runcible-1.1.0-2.el6sat.noarch
* rubygem-hammer_cli-0.1.1-10.el6sat.noarch
* rubygem-hammer_cli_foreman-0.1.1-13.el6sat.noarch
* rubygem-hammer_cli_foreman_tasks-0.0.3-3.el6sat.noarch
* rubygem-hammer_cli_katello-0.0.4-9.el6sat.noarch

Comment 14 Bryan Kearney 2014-09-11 12:26:47 UTC
This was delivered with Satellite 6.0 which was released on 10 September 2014.

Comment 15 Chris Roberts 2015-02-12 15:47:03 UTC
customer hit this with rhel 7 rh common repos. sycn shows 99 packages but gets a trace back in /var/log/messages and webui shows incomplete.

After a reindex showing the packages in the webui though so it looks like the sync completed.

Comment 18 Eric Helms 2015-02-19 13:12:56 UTC
Did the customer hit an issue with syncing or an issue with an error not being displayed to them after hitting an error syncing?

Comment 19 Chris Roberts 2015-02-20 16:40:32 UTC
The customer synced the repo and did not get an error after hitting the sync button. Since its in a incomplete state its not letting us add it to a content view or use the repo.

- Chris

Comment 20 Marcus Moeller 2015-03-03 13:42:02 UTC
We have similar issues, even with latest updates.

Comment 21 Marcus Moeller 2015-03-03 13:42:58 UTC
Created attachment 997541 [details]
Error indicating Forbidden

Comment 22 Marcus Moeller 2015-03-03 13:43:28 UTC
Created attachment 997542 [details]
Importer indicated a failed response

Comment 23 Bengt Giger 2015-03-03 14:37:01 UTC
Created attachment 997558 [details]
Sync complete - but failed

Sometimes the result displays "Sync complete" but not all packages have been downloaded: "New packages: 307 (173 MB). Failed to download 6 packages."

Raw task log lists failed packages (but "Error" tab says no error):

{"yum_importer"=>
         {"content"=>
           {"size_total"=>181200544,
            "items_left"=>0,
            "items_total"=>307,
            "state"=>"FINISHED",
            "size_left"=>0,
            "details"=>
             {"rpm_total"=>307,
              "rpm_done"=>307,
              "drpm_total"=>0,
              "drpm_done"=>0},
            "error_details"=>
             [{"url"=>
                "https://cdn.redhat.com/content/dist/rhel/server/7/7Server/x86_64/rhscl/1/os/Packages/nodejs010-nodejs-ansicolors-0.3.2-1.el7.noarch.rpm",
               "response_code"=>403,
               "response_msg"=>"Forbidden"},
              {"url"=>
                "https://cdn.redhat.com/content/dist/rhel/server/7/7Server/x86_64/rhscl/1/os/Packages/php55-php-odbc-5.5.6-13.el7.x86_64.rpm",
               "response_code"=>403,
               "response_msg"=>"Forbidden"},
....

Subsequent attempts download more and more packages, sometimes. It is not reproducable when access to the XML is forbidden, when access to some RPMs is forbidden, and when everything runs fine.

Comment 24 Eric Helms 2015-03-09 14:24:06 UTC
Reading through the comments, the UI appears to be displaying the proper status and information to the user which is what this bug was originally intended to address. If a few packages are unable to be downloaded the repository is not considered to be in an error state since this can occur to do Forbidden's, missing RPMs or network issues. The task details display the specifics per package. Does this address your issue? What else would you like to see specific to this bug?


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