Cycles in task graph should report which tasks loop

Bug #1562949 reported by Matthew Mosesohn
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Fix Committed
High
Vladimir Kuklin
Mitaka
Fix Released
High
Vladimir Kuklin

Bug Description

Detailed bug description:
 If a plugin developer writes an invalid task that creates a loop in the task graph, it is hard to identify the soruce.

Steps to reproduce:
 Quite difficult to explain, but create two tasks that require each other.
Expected results:
 Error message should say which tasks are in a loop.
Actual result:
 Unhelpful message in Fuel UI: "Tasks can not be processed because it contains cycles in it."
Reproducibility:
 Always
Workaround:
 Write correct tasks, which isn't always simple.
Impact:
 Benefit for developers of tasks to identify errors, rather than getting blocked.
Description of the environment:
 Default options, detached-keystone plugin, for example
Additional information:
 N/A

Changed in fuel:
milestone: none → 9.0
assignee: nobody → Matthew Mosesohn (raytrac3r)
importance: Undecided → High
status: New → Confirmed
tags: added: area-python low-hanging-fruit module-tasks team-bugfix
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-web (master)

Fix proposed to branch: master
Review: https://review.openstack.org/298325

Changed in fuel:
status: Confirmed → In Progress
Dmitry Pyzhov (dpyzhov)
tags: added: team-enhancements
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on fuel-web (master)

Change abandoned by Matthew Mosesohn (<email address hidden>) on branch: master
Review: https://review.openstack.org/298325
Reason: abandoning in favor of https://review.openstack.org/#/c/297335/10

Changed in fuel:
assignee: Matthew Mosesohn (raytrac3r) → Vladimir Kuklin (vkuklin)
Changed in fuel:
milestone: 9.0 → 10.0
Revision history for this message
Vladimir Kuklin (vkuklin) wrote :
Changed in fuel:
status: In Progress → Fix Committed
tags: added: on-verification
Revision history for this message
ElenaRossokhina (esolomina) wrote :

Verified on 9.0 so#327:
cat /etc/fuel_build_id:
 327
cat /etc/fuel_build_number:
 327
cat /etc/fuel_release:
 9.0
cat /etc/fuel_openstack_version:
 mitaka-9.0
rpm -qa | egrep 'fuel|astute|network-checker|nailgun|packetary|shotgun':
 fuel-release-9.0.0-1.mos6344.noarch
 fuel-provisioning-scripts-9.0.0-1.mos8691.noarch
 network-checker-9.0.0-1.mos72.x86_64
 fuel-mirror-9.0.0-1.mos135.noarch
 fuel-openstack-metadata-9.0.0-1.mos8691.noarch
 fuel-notify-9.0.0-1.mos8362.noarch
 fuel-ostf-9.0.0-1.mos934.noarch
 python-fuelclient-9.0.0-1.mos315.noarch
 fuelmenu-9.0.0-1.mos270.noarch
 fuel-9.0.0-1.mos6344.noarch
 fuel-utils-9.0.0-1.mos8362.noarch
 fuel-nailgun-9.0.0-1.mos8691.noarch
 rubygem-astute-9.0.0-1.mos743.noarch
 fuel-library9.0-9.0.0-1.mos8362.noarch
 shotgun-9.0.0-1.mos88.noarch
 fuel-agent-9.0.0-1.mos277.noarch
 fuel-ui-9.0.0-1.mos2684.noarch
 fuel-setup-9.0.0-1.mos6344.noarch
 nailgun-mcagents-9.0.0-1.mos743.noarch
 fuel-misc-9.0.0-1.mos8362.noarch
 python-packetary-9.0.0-1.mos135.noarch
 fuel-bootstrap-cli-9.0.0-1.mos277.noarch
 fuel-migrate-9.0.0-1.mos8362.noarch

I've created two fake tasks required each other and error message looks alike:
Error
Deployment has failed. Method task_deploy. Cluster[]: Loop detected! Path: Task[first_fake_task_for_yaql/1], Task[second_fake_task_for_yaql/1], Task[first_fake_task_for_yaql/1].

tags: removed: on-verification
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.