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 1934086 - pulp3: Redefine dynflow step statuses "waiting for Pulp to .."
Summary: pulp3: Redefine dynflow step statuses "waiting for Pulp to .."
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Satellite
Classification: Red Hat
Component: Repositories
Version: 6.9.0
Hardware: x86_64
OS: Linux
low
medium
Target Milestone: 6.10.0
Assignee: Ryan Verdile
QA Contact: sganar
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-03-02 13:39 UTC by Pavel Moravec
Modified: 2021-11-16 14:10 UTC (History)
4 users (show)

Fixed In Version: tfm-rubygem-katello-4.1.1.17-1
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-11-16 14:10:12 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Foreman Issue Tracker 33315 0 None None None 2021-09-07 13:58:34 UTC
Red Hat Product Errata RHSA-2021:4702 0 None None None 2021-11-16 14:10:21 UTC

Description Pavel Moravec 2021-03-02 13:39:11 UTC
Description of problem:
Playing with pulp-3 on Sat6.9-beta, I noticed a CV publish was pending on Actions::Pulp3::Repository::MultiCopyContent for a long time. So far so good, but the dynflow step status was changing from "waiting for Pulp to start the task" and "initiating Pulp task" and "waiting for Pulp to finish the task" quite randomly / quite confusingly to an end user.

While I understand the dynflow step consists of multiple pulp tasks that are sequentially executed with some delays in between, it is bizzare to watch the dynflow step status evolving in time like:

- "initiating Pulp task"
- "waiting for Pulp to start the task"
- "waiting for Pulp to finish the task"
- "waiting for Pulp to start the task"  - again? again starting _the_ task..? how many times yet..?

Could we add there some better text, i.e. 

"waiting for Pulp to [start|finish] the task add_and_remove (79a2dd3d)"

(but that sounds too long string..?)

Simply have there less confusing string that evolves over time, to show some progress being made.


Version-Release number of selected component (if applicable):
Sat6.9 beta
- tfm-rubygem-katello-3.18.1.3-1.el7sat.noarch


How reproducible:
100%


Steps to Reproduce:
1. Have a CV with several repos, some filters and "Solve Dependencies" enabled
2. Publish the CV
3. Regularly check the publish task details in dynflow


Actual results:
Actions::Pulp3::Repository::MultiCopyContent will take a longer time (that is ok), but the information "waiting on pulp to start/finish the task" is confusingly "evolving".


Expected results:
Some better-shaped text showing some progress (and no "regression") is made.


Additional info:
I guess the change should be here:

/opt/theforeman/tfm/root/usr/share/gems/gems/katello-3.18.1.3/app/lib/actions/pulp3/abstract_async_task.rb :

      def humanized_state
        case state
        when :running
          if self.combined_tasks.empty?
            _("initiating Pulp task")
          else
            _("checking Pulp task status")
          end
        when :suspended
          if combined_tasks.any?(&:started?)          ### <-- fine-tune this
            _("waiting for Pulp to finish the task")
          else
            _("waiting for Pulp to start the task")
          end
        else
          super
        end
      end

Comment 1 Adam Ruzicka 2021-03-02 13:46:06 UTC
Moving to repositories. The infrastructure for implementing this is present in tasks, but how it is used from katello needs to be changed there

Comment 4 sganar 2021-10-13 09:22:57 UTC
Verified.

Tested on Satellite 6.10.0 Snap 22.0

Steps followed: 
1. Have a CV with several repos, some filters and "Solve Dependencies" enabled
2. Publish the CV
3. Regularly check the publish task details in dynflow


Observation: 

Showing better info for example: "waiting for Pulp to start the task general_update (ID: e3055bd8d0d7)" as expected.

Comment 7 errata-xmlrpc 2021-11-16 14:10:12 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 (Moderate: Satellite 6.10 Release), 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-2021:4702


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