TypeError in QoS gateway_ip code in l3-agent logs

Bug #1809134 reported by Brian Haley
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
neutron
Fix Released
High
Slawek Kaplonski

Bug Description

Seeing this traceback in the l3-agent logs in the failing neutron-tempest-plugin-dvr-multinode-scenario job.

For example,
http://logs.openstack.org/23/622623/3/check/neutron-tempest-plugin-dvr-multinode-scenario/604b3c0/controller/logs/screen-q-l3.txt.gz?level=WARNING

neutron-l3-agent[13439]: ERROR neutron.agent.l3.agent [-] Error while deleting router da35128f-c2e4-4bc5-a409-a07f60970be1: TypeError: string indices must be integers
neutron-l3-agent[13439]: ERROR neutron.agent.l3.agent Traceback (most recent call last):
neutron-l3-agent[13439]: ERROR neutron.agent.l3.agent File "/opt/stack/neutron/neutron/agent/l3/agent.py", line 398, in _safe_router_removed
neutron-l3-agent[13439]: ERROR neutron.agent.l3.agent self.l3_ext_manager.delete_router(self.context, router_id)
neutron-l3-agent[13439]: ERROR neutron.agent.l3.agent File "/opt/stack/neutron/neutron/agent/l3/l3_agent_extensions_manager.py", line 66, in delete_router
neutron-l3-agent[13439]: ERROR neutron.agent.l3.agent extension.obj.delete_router(context, data)
neutron-l3-agent[13439]: ERROR neutron.agent.l3.agent File "/opt/stack/neutron/neutron/agent/l3/extensions/qos/gateway_ip.py", line 99, in delete_router
neutron-l3-agent[13439]: ERROR neutron.agent.l3.agent self.gateway_ip_qos_map.clean_by_resource(data['id'])
neutron-l3-agent[13439]: ERROR neutron.agent.l3.agent TypeError: string indices must be integers

This could be one of the reasons the job is failing.

Revision history for this message
Brian Haley (brian-haley) wrote :

Looking at the log again, the error is being caught, so this isn't causing the job failure, but it is in the log a lot.

Revision history for this message
Brian Haley (brian-haley) wrote :

_safe_router_removed() is not honoring the l3_ext_manager API, it needs to pass a router dict in delete_router() and not just the id. I'll work on a fix.

Changed in neutron:
assignee: nobody → Brian Haley (brian-haley)
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/626401

Changed in neutron:
status: Confirmed → In Progress
Changed in neutron:
assignee: Brian Haley (brian-haley) → Slawek Kaplonski (slaweq)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

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

commit 4bb78e8c215d24cd2fc9168e7bfbb47ceb89de3e
Author: Brian Haley <email address hidden>
Date: Wed Dec 19 16:55:47 2018 -0500

    Fix l3-agent usage of L3AgentExtension class

    The L3AgentExtension class delete_router() method expects a
    dict as it's 'data' argument, but the l3-agent code that
    deletes a router was passing just the router ID. Change to
    correctly pass a router dictionary if one exists.

    Change-Id: I112d1f8dce9defddfbd8fbfa75bf538e308e1561
    Closes-bug: #1809134

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.0b2

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

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.