[l3][port_forwarding] update floating IP (has binding port_forwarding) with empty {} input will lose router_id

Bug #1799135 reported by LIU Yulong
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
neutron
Fix Released
Medium
LIU Yulong

Bug Description

ENV: devstack master

Step to reproduce:
1. create floating IP
2. create port forwarding for that floating IP
3. update floating IP with empty dict:
curl -g -i -X PUT http://controller:9696/v2.0/floatingips/2bb4cc5d-7fae-4c1b-9482-ead60d67abea \
-H "User-Agent: python-neutronclient" -H "Accept: application/json" \
-H "X-Auth-Token: <token>" \
-d '{"floatingip": {}}'

Then this floating IP will turn to a bad status, it can not be managed anymore. Every action on this floating IP will get a neutron-server ERROR log.

Furturemore only updating floating IP qos_policy_id can also result such behavior.
curl -g -i -X PUT http://controller:9696/v2.0/floatingips/2bb4cc5d-7fae-4c1b-9482-ead60d67abea \
-H "User-Agent: python-neutronclient" -H "Accept: application/json" \
-H "X-Auth-Token: <token>" \
-d '{"floatingip": {"qos_policy_id": "d9d3639e-b616-4007-a8fe-52d6154f1eec"}}'

Changed in neutron:
importance: Undecided → Medium
Akihiro Motoki (amotoki)
tags: added: l3-ipam-dhcp
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (master)

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

Changed in neutron:
assignee: nobody → LIU Yulong (dragon889)
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.openstack.org/613543
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=f5842b304c3f24c9cdc8555664155fb4127b0809
Submitter: Zuul
Branch: master

commit f5842b304c3f24c9cdc8555664155fb4127b0809
Author: LIU Yulong <email address hidden>
Date: Fri Oct 26 16:46:57 2018 +0800

    Set router_id if floating IP has port_forwardings

    Set floating IP's router_id when it has port_forwardings
    during the update API.

    Co-Authored-By: chenguobin <email address hidden>

    Closes-Bug: #1799135
    Change-Id: Idb1a52b6f32bdb18d920bce2b891b4d73c557dfb

Changed in neutron:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/neutron 14.0.0.0b1

This issue was fixed in the openstack/neutron 14.0.0.0b1 development milestone.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (stable/rocky)

Fix proposed to branch: stable/rocky
Review: https://review.openstack.org/649540

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (stable/rocky)

Reviewed: https://review.openstack.org/649540
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=ef8ecef922edf7d88c851f41ea6acb4651e219a7
Submitter: Zuul
Branch: stable/rocky

commit ef8ecef922edf7d88c851f41ea6acb4651e219a7
Author: LIU Yulong <email address hidden>
Date: Fri Oct 26 16:46:57 2018 +0800

    Set router_id if floating IP has port_forwardings

    Set floating IP's router_id when it has port_forwardings
    during the update API.

    Co-Authored-By: chenguobin <email address hidden>

    Closes-Bug: #1799135
    Change-Id: Idb1a52b6f32bdb18d920bce2b891b4d73c557dfb
    (cherry picked from commit f5842b304c3f24c9cdc8555664155fb4127b0809)

tags: added: in-stable-rocky
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/neutron 13.0.4

This issue was fixed in the openstack/neutron 13.0.4 release.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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