cloud_upgrade extension causes 500 internal server error

Bug #1539039 reported by Roman Sokolkov
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Fix Committed
Medium
Oleg S. Gelbukh

Bug Description

Env: MOS 7.0

In "extensions/cluster_upgrade/upgrade.py" inside "copy_network_config" function there is a buggy for loop.

Do not change dictionary while iterating over it.

Following patch fixes the issue.

@@ -154,7 +157,7 @@ class UpgradeHelper(object):

         new_net_manager.update(nets)
         vips = orig_net_manager.get_assigned_vips()
- for ng_name in vips:
+ for ng_name in list(vips):
             if ng_name not in (consts.NETWORKS.public,
                                consts.NETWORKS.management):
                 vips.pop(ng_name)

Revision history for this message
Ivan Ponomarev (ivanzipfer) wrote :

Please provide more verbose. Description is not clear where it should be fixed and for what is the fuel version

Changed in fuel:
status: New → Incomplete
description: updated
Changed in fuel:
assignee: nobody → MOS Maintenance (mos-maintenance)
milestone: none → 7.0-updates
importance: Undecided → Medium
tags: added: area-python
Revision history for this message
Denis Meltsaykin (dmeltsaykin) wrote :

Reassigning this to Oleg, because upgrades are his area, not maintenance team's one.

Changed in fuel:
assignee: MOS Maintenance (mos-maintenance) → Oleg S. Gelbukh (gelbuhos)
status: Incomplete → New
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/290766

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

Reviewed: https://review.openstack.org/290766
Committed: https://git.openstack.org/cgit/openstack/fuel-web/commit/?id=245328dd89ad937707526cee519c3811bccccf18
Submitter: Jenkins
Branch: master

commit 245328dd89ad937707526cee519c3811bccccf18
Author: Oleg Gelbukh <email address hidden>
Date: Wed Mar 9 18:42:21 2016 +0000

    Properly iterate through VIPs

    In the original form, the iterator was changed inside
    the loop. Iterating through separate list object
    fixes this issue.

    Change-Id: I8c2a47b54f1339669f9f20f1a420a028044cb9d8
    Closes-bug: 1539039

Changed in fuel:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-nailgun-extension-cluster-upgrade (stable/mitaka)

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

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-nailgun-extension-cluster-upgrade (stable/mitaka)
Download full text (21.0 KiB)

Reviewed: https://review.openstack.org/360086
Committed: https://git.openstack.org/cgit/openstack/fuel-nailgun-extension-cluster-upgrade/commit/?id=40dd411fe461441e943de806f5de632eeb64dc4a
Submitter: Jenkins
Branch: stable/mitaka

commit 17ab5a3aaa7d2c4ae4652d1a4dc0410b31e7c47d
Author: Sergey Abramov <email address hidden>
Date: Wed Aug 24 18:32:39 2016 +0300

    Add create upgrade release handler

    Required for create new release just for upgrade, that have overwrited
    params. This params are valid for orig cluster release.

    Change-Id: Ib2387b9c2b74902c7289ee8f69a5f5d323ec82ca

commit 8de47e0dbf5955b3cbe59a3956e1ca1f4d8679ef
Author: Nikita Zubkov <email address hidden>
Date: Wed Aug 24 15:42:32 2016 +0300

    Add VIPs transformer

    Move upgrade vips code to the transformer

    Change-Id: Ia6935521b8b90b73fb74ba92859e7febf74c4ced

commit b54f9d4c29808c4561b20af508b85b9e40fa72b6
Author: Nikita Zubkov <email address hidden>
Date: Wed Aug 24 17:51:39 2016 +0300

    Move partition info transformation to extension

    octane have some dirty hacks to change volumes attributes using nailgun
    as a library, such modifications should be done in a extension

    Change-Id: I422bb368916f3a319e286edcc6103a2834097a87

commit b3ce0d348cc20ed988b5adf66474836f631eb12d
Author: Anastasiya <email address hidden>
Date: Mon Aug 1 15:47:13 2016 +0300

    Add tests for assign_node_to_cluster

    Change-Id: Iafa1baa6a1ca4d701ec89e49dd9d6f969804c82e

commit a764ba306dcd0cfb65a82c89f07ec0f3d129c66b
Author: Nikita Zubkov <email address hidden>
Date: Tue Aug 23 14:05:16 2016 +0300

    Update README

    Add instalation section

    Change-Id: Ib16132ab9c18d757e96e98304fdd8339ddf5497a

commit 95ff3a3598397bb6e3c68793051298aaa006d163
Author: Yuriy Taraday <email address hidden>
Date: Tue Aug 23 23:01:16 2016 +0300

    Add cluster transformations

    Implement transformations that are applied to cluster attributes during
    environment cloning.

    Conversion from text to text_list type has been limited to dns_list and
    ntp_list keys only to keep predictable behavior.

    Change-Id: I1ff596f850bd42243697cad1c1c35f0cf1386376

commit 163ce243fbade3dac05eb535ad2987687a57f87d
Author: Yuriy Taraday <email address hidden>
Date: Tue Aug 23 22:51:19 2016 +0300

    Add pluggable transformations for data migration

    This change introduces new transformation mechanism:
    - all available transformations are listed in setuptools entry points
      under namespace like this (for cluster transformations):

        nailgun.cluster_upgrade.transformations.cluster.9.0 =
            dns_list = ...
            ntp_list = ...
        nailgun.cluster_upgrade.transformations.cluster.8.0 =
            ...
        <etc>

    - config file will include section that specifies enabled
      transformations like this:

        CLUSTER_UPGRADE_TRANSFORMATIONS:
          cluster:
            9.0: dns_list ntp_list ...
            8.0: ...
            7.0: ...

      (only default values are implemented here, actual config support will
      follow)

    - when transformations...

tags: added: in-stable-mitaka
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.