set_primary_roles is called later than roleresolver is within transaction manager

Bug #1622942 reported by Vladimir Kuklin
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Fix Committed
Critical
Vladimir Kuklin
Mitaka
Fix Released
Critical
Vladimir Kuklin
Newton
Fix Committed
Critical
Vladimir Kuklin

Bug Description

Nailgun version:

fuel-nailgun-9.0.0-1.mos8816.noarch

Steps to reproduce:

1. Delete node with some 'primary' role, or simply unassign primary role from it
2. Run the deployment

Expected result:

1. deployment works

Actual result:

1. deployment fails as tasks for primary roles are resolved to empty nodes set.

This will affect different cases when we delete/add nodes or apply some manipulations
to the cluster when primary roles can get unassigned, e.g for upgrade scenarios with octane.

nailgun=# update nodes set primary_roles = '{}';
fuel2 graph execute -d -e 1 -t default --force

nailgun/app.log
2016-09-12 16:47:24.549 DEBUG [7f15aacee880] (role_resolver) Role '[u'primary-controller']' and policy 'all' was resolved to: set([])

Tags: area-python
Changed in fuel:
status: Confirmed → In Progress
Revision history for this message
Vladimir Kuklin (vkuklin) wrote :
summary: - [regression] set_primary_roles is called later than roleresolver is
+ set_primary_roles is called later than roleresolver is within
+ transaction manager
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-web (stable/mitaka)

Fix proposed to branch: stable/mitaka
Review: https://review.openstack.org/369400

Changed in fuel:
assignee: Bulat Gaifullin (bgaifullin) → Vladimir Kuklin (vkuklin)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-web (master)

Reviewed: https://review.openstack.org/369308
Committed: https://git.openstack.org/cgit/openstack/fuel-web/commit/?id=8dd9ee16d18f025033ca26eb2f334636c1bde8c7
Submitter: Jenkins
Branch: master

commit 8dd9ee16d18f025033ca26eb2f334636c1bde8c7
Author: Vladimir Kuklin <email address hidden>
Date: Tue Sep 13 15:06:50 2016 +0300

    Fixed resolving primary roles in first deployment

    Initializing of primary roles should be called
    before creation of role_resolver.

    Change-Id: I18146845f951f743dfb6a32554c3d35c2d1bd55b
    Closes-Bug: 1622942

Changed in fuel:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-web (stable/mitaka)

Reviewed: https://review.openstack.org/369400
Committed: https://git.openstack.org/cgit/openstack/fuel-web/commit/?id=4000c83d5c60bafea42f423437e5d2cc789b9f3f
Submitter: Jenkins
Branch: stable/mitaka

commit 4000c83d5c60bafea42f423437e5d2cc789b9f3f
Author: Vladimir Kuklin <email address hidden>
Date: Tue Sep 13 15:06:50 2016 +0300

    Fixed resolving primary roles in first deployment

    Initializing of primary roles should be called
    before creation of role_resolver.

    Change-Id: I18146845f951f743dfb6a32554c3d35c2d1bd55b
    Closes-Bug: 1622942

tags: added: dev-to-verify
tags: removed: dev-to-verify
tags: added: on-verification
Revision history for this message
Artem Hrechanychenko (agrechanichenko) wrote :

verified on next scenario:
1) deploy 9.0 cluster
2) upgrade cluster and fuel-master to 9.1
3) add 2 controller to cluster
4) deploy changes, net-verify, ostf
5) remove primary controller
6) deploy changes, net-verify, ostf

[root@nailgun ~]# fuel fuel-version
api: '1'
auth_required: true
feature_groups: []
openstack_version: mitaka-9.0
release: '9.0'

[root@nailgun ~]# shotgun2 short-report
cat /etc/fuel_build_id:
 495
cat /etc/fuel_build_number:
 495
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-utils-9.0.0-1.mos8594.noarch
 fuelmenu-9.0.0-1.mos275.noarch
 fuel-nailgun-9.0.0-1.mos8853.noarch
 fuel-library9.0-9.0.0-1.mos8594.noarch
 fuel-9.0.0-1.mos6355.noarch
 shotgun-9.0.0-1.mos90.noarch
 fuel-release-9.0.0-1.mos6355.noarch
 rubygem-astute-9.0.0-1.mos770.noarch
 fuel-setup-9.0.0-1.mos6355.noarch
 fuel-openstack-metadata-9.0.0-1.mos8853.noarch
 network-checker-9.0.0-1.mos74.x86_64
 python-fuelclient-9.0.0-1.mos354.noarch
 fuel-provisioning-scripts-9.0.0-1.mos8853.noarch
 python-packetary-9.0.0-1.mos149.noarch
 fuel-ostf-9.0.0-1.mos944.noarch
 nailgun-mcagents-9.0.0-1.mos770.noarch
 fuel-migrate-9.0.0-1.mos8594.noarch
 fuel-misc-9.0.0-1.mos8594.noarch
 fuel-mirror-9.0.0-1.mos149.noarch
 fuel-notify-9.0.0-1.mos8594.noarch
 fuel-agent-9.0.0-1.mos291.noarch
 fuel-bootstrap-cli-9.0.0-1.mos291.noarch
 fuel-ui-9.0.0-1.mos2814.noarch

tags: removed: on-verification
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/fuel-web 10.0.0rc1

This issue was fixed in the openstack/fuel-web 10.0.0rc1 release candidate.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/fuel-web 10.0.0

This issue was fixed in the openstack/fuel-web 10.0.0 release.

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.