[NETVIRT-800] external network flows remain after external network deleted Created: 21/Jul/17  Updated: 08/Aug/17  Resolved: 08/Aug/17

Status: Resolved
Project: netvirt
Component/s: General
Affects Version/s: Carbon
Fix Version/s: None

Type: Bug
Reporter: Vinh Nguyen Assignee: Vinh Nguyen
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File karaf.log    
External issue ID: 8876

 Description   

ODL version: 6.2
distribution-karaf-0.6.2-20170721.171913-136.tar.gz

Flow entries in table 52 and 55 for external network remain after the network is deleted.

Reproduction steps:

1) Create external network

neutron net-create ext-net --router:external --provider:physical_network public --provider:network_type flat

2) The following flows for the external ELAN installed:

cookie=0x8701389, duration=12.429s, table=52, n_packets=0, n_bytes=0, priority=5,metadata=0x1389000001/0xffff000001 actions=write_actions(group:210001)
cookie=0x8701389, duration=12.427s, table=52, n_packets=0, n_bytes=0, priority=5,metadata=0x1389000000/0xffff000001 actions=write_actions(group:210002)
cookie=0x8800001, duration=12.429s, table=55, n_packets=0, n_bytes=0, priority=10,tun_id=0x1,metadata=0x10000000000/0xfffff0000000000 actions=drop
cookie=0x8800001, duration=12.429s, table=55, n_packets=0, n_bytes=0, priority=9,tun_id=0x1 actions=load:0x100->NXM_NX_REG6[],resubmit(,220)

3) Delete the external network

neutron net-delete ext-net

4) The flow entries in 2) remain. They should have been deleted when the associated external network deleted



 Comments   
Comment by Vinh Nguyen [ 26/Jul/17 ]

Exception occurs in karaf.log, full log attached:

2017-07-25 17:06:46,697 | INFO | nPool-1-worker-3 | VpnInstanceListener | 360 - org.opendaylight.netvirt.vpnmanager-impl - 0.4.2.SNAPSHOT | VPNInstance removal count of interface at 1 for for rd 1045995c-4559-4696-9555-4b39ce55c31d, vpnname 1045995c-4559-4696-9555-4b39ce55c31d
2017-07-25 17:06:46,697 | INFO | nPool-1-worker-3 | VpnInstanceListener | 360 - org.opendaylight.netvirt.vpnmanager-impl - 0.4.2.SNAPSHOT | VPNInstance removal thread waiting for 10 seconds for rd 1045995c-4559-4696-9555-4b39ce55c31d, vpnname 1045995c-4559-4696-9555-4b39ce55c31d
2017-07-25 17:06:56,697 | INFO | nPool-1-worker-3 | VpnInstanceListener | 360 - org.opendaylight.netvirt.vpnmanager-impl - 0.4.2.SNAPSHOT | Retrying clearing vpn with vpnname 1045995c-4559-4696-9555-4b39ce55c31d rd 1045995c-4559-4696-9555-4b39ce55c31d since current interface count 1
2017-07-25 17:06:56,697 | INFO | nPool-1-worker-3 | VpnInstanceListener | 360 - org.opendaylight.netvirt.vpnmanager-impl - 0.4.2.SNAPSHOT | VPNInstance removal count of interface at 1 for for rd 1045995c-4559-4696-9555-4b39ce55c31d, vpnname 1045995c-4559-4696-9555-4b39ce55c31d
2017-07-25 17:06:56,697 | INFO | nPool-1-worker-3 | VpnInstanceListener | 360 - org.opendaylight.netvirt.vpnmanager-impl - 0.4.2.SNAPSHOT | VPNInstance removal thread waiting for 10 seconds for rd 1045995c-4559-4696-9555-4b39ce55c31d, vpnname 1045995c-4559-4696-9555-4b39ce55c31d
2017-07-25 17:07:06,707 | INFO | nPool-1-worker-3 | VpnInstanceListener | 360 - org.opendaylight.netvirt.vpnmanager-impl - 0.4.2.SNAPSHOT | VPNInstance bailing out of wait loop as current interface count is 1 and max retries exceeded for for vpnName 1045995c-4559-4696-9555-4b39ce55c31d, rd 1045995c-4559-4696-9555-4b39ce55c31d
2017-07-25 17:07:06,707 | INFO | nPool-1-worker-3 | VpnInstanceListener | 360 - org.opendaylight.netvirt.vpnmanager-impl - 0.4.2.SNAPSHOT | Returned out of waiting for Op Data removal for rd 1045995c-4559-4696-9555-4b39ce55c31d, vpnname 1045995c-4559-4696-9555-4b39ce55c31d
2017-07-25 17:07:06,708 | WARN | rd-dispatcher-38 | ShardDataTree | 211 - org.opendaylight.controller.sal-distributed-datastore - 1.5.2.SNAPSHOT | member-1-shard-default-config: Store Tx member-1-datastore-config-fe-0-txn-1180-0: Data validation failed for path /(urn:opendaylight:netvirt:fibmanager?revision=2015-03-30)fibEntries/vrfTables.
org.opendaylight.yangtools.yang.data.api.schema.tree.ModifiedNodeDoesNotExistException: Node /(urn:opendaylight:netvirt:fibmanager?revision=2015-03-30)fibEntries/vrfTables does not exist. Cannot apply modification to its children.
at org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:281)[108:org.opendaylight.yangtools.yang-data-impl:1.1.2.SNAPSHOT]
at org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)[108:org.opendaylight.yangtools.yang-data-impl:1.1.2.SNAPSHOT]
at org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkChildPreconditions(AbstractNodeContainerModificationStrategy.java:305)[108:org.opendaylight.yangtools.yang-data-impl:1.1.2.SNAPSHOT]
at org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:288)[108:org.opendaylight.yangtools.yang-data-impl:1.1.2.SNAPSHOT]
at org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)[108:org.opendaylight.yangtools.yang-data-impl:1.1.2.SNAPSHOT]
at org.opendaylight.yangtools.yang.data.impl.schema.tree.StructuralContainerModificationStrategy.checkApplicable(StructuralContainerModificationStrategy.java:97)[108:org.opendaylight.yangtools.yang-data-impl:1.1.2.SNAPSHOT]
at org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkChildPreconditions(AbstractNodeContainerModificationStrategy.java:305)[108:org.opendaylight.yangtools.yang-data-impl:1.1.2.SNAPSHOT]
at org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.checkTouchApplicable(AbstractNodeContainerModificationStrategy.java:288)[108:org.opendaylight.yangtools.yang-data-impl:1.1.2.SNAPSHOT]
at org.opendaylight.yangtools.yang.data.impl.schema.tree.SchemaAwareApplyOperation.checkApplicable(SchemaAwareApplyOperation.java:125)[108:org.opendaylight.yangtools.yang-data-impl:1.1.2.SNAPSHOT]
at org.opendaylight.yangtools.yang.data.impl.schema.tree.RootModificationApplyOperation.checkApplicable(RootModificationApplyOperation.java:72)[108:org.opendaylight.yangtools.yang-data-impl:1.1.2.SNAPSHOT]

Comment by Vinh Nguyen [ 26/Jul/17 ]

Attachment karaf.log has been added with description: karaf.log

Comment by Manu B [ 02/Aug/17 ]

Could you please attach the complete configuration.
1) creation steps of all the entities
2) what all entities was deleted before "neutron net-delete ext-net"

Comment by Sam Hague [ 04/Aug/17 ]

https://git.opendaylight.org/gerrit/61135
https://git.opendaylight.org/gerrit/61131

Comment by Vinh Nguyen [ 04/Aug/17 ]

(In reply to Manu B from comment #3)
> Could you please attach the complete configuration.
> 1) creation steps of all the entities
> 2) what all entities was deleted before "neutron net-delete ext-net"

The issue can be seen by simply issuing two neuron commands on a freshly stacked openstack & ODL. No other commands were issued.

Steps:

1) Stack openstack & ODL
2) Create external network

neutron net-create ext-net --router:external --provider:physical_network public --provider:network_type flat

3) Delete the external network

neutron net-delete ext-net

4) Notice that the ELAN flows in table 52 and 55 remain:

cookie=0x8701389, duration=12.429s, table=52, n_packets=0, n_bytes=0, priority=5,metadata=0x1389000001/0xffff000001 actions=write_actions(group:210001)
cookie=0x8701389, duration=12.427s, table=52, n_packets=0, n_bytes=0, priority=5,metadata=0x1389000000/0xffff000001 actions=write_actions(group:210002)
cookie=0x8800001, duration=12.429s, table=55, n_packets=0, n_bytes=0, priority=10,tun_id=0x1,metadata=0x10000000000/0xfffff0000000000 actions=drop
cookie=0x8800001, duration=12.429s, table=55, n_packets=0, n_bytes=0, priority=9,tun_id=0x1 actions=load:0x100->NXM_NX_REG6[],resubmit(,220)

Generated at Wed Feb 07 20:22:30 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.