[OVSDB-15] Neutron plugin does not handle missing segmentationId Created: 07/May/14  Updated: 03/May/18  Resolved: 21/Oct/14

Status: Resolved
Project: ovsdb
Component/s: API
Affects Version/s: unspecified
Fix Version/s: None

Type: Bug
Reporter: Zoltan Lajos Kis Assignee: Unassigned
Resolution: Cannot Reproduce Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


External issue ID: 968

 Description   

When ./stack.sh is finished, and ODL tries to install the local rules I get the below exception multiple times (one for each rule). As a result only the default LLDP rule gets installed to br-int.

It seems that the NeutronNetwork object returned by ThenantNetworkManager returns null for getProviderSegmentationID, which results in the exception.

I'm using stable/icehouse DevStack, and I see this both with the 0.1.1 and the latest integration build of ODL integration.

I haven't seen this bug recently. And I've downgraded to Java 7 recently... any chance these are correlated?

Also see:
https://lists.opendaylight.org/pipermail/ovsdb-users/2014-April/000006.html
https://lists.opendaylight.org/pipermail/ovsdb-dev/2014-May/000422.html

---------------------

2014-04-28 08:54:45.248 CEST [md-sal-binding-notification-37] DEBUG o.o.o.n.provider.OF13ProviderManager - Identified the Openflow node via toString MD_SAL|openflow:19802847393608
2014-04-28 08:54:45.252 CEST [md-sal-binding-notification-37] DEBUG o.o.o.n.provider.OF13ProviderManager - createInPortMatch() Node Connector ID is - Type=openflow: DPID=19802847393608 inPort=3
2014-04-28 08:54:45.258 CEST [md-sal-binding-notification-37] ERROR o.o.o.n.provider.OF13ProviderManager - Exception in programming Local Rules for Interface [name=tap953487e5-4e, options={}, type=internal, ofport=[3], mac=[], statistics=

{tx_packets=12, tx_errors=0, collisions=0, tx_dropped=0, rx_dropped=0, rx_crc_err=0, rx_bytes=1066, rx_frame_err=0, rx_over_err=0, tx_bytes=996, rx_errors=0, rx_packets=13}

, status=

{driver_name=openvswitch}, other_config={}, external_ids={attached-mac=fa:16:3e:9d:22:be, iface-status=active, iface-id=953487e5-4eae-4f84-a315-940b00f04f97}] on OVS|10.10.0.2:58813
java.lang.NullPointerException: null
at java.math.BigInteger.<init>(BigInteger.java:398) ~[na:1.8.0_05]
at java.math.BigInteger.<init>(BigInteger.java:589) ~[na:1.8.0_05]
at org.opendaylight.ovsdb.neutron.provider.OF13ProviderManager.writeLocalInPort(OF13ProviderManager.java:718) [bundlefile:na]
at org.opendaylight.ovsdb.neutron.provider.OF13ProviderManager.programLocalBridgeRules(OF13ProviderManager.java:250) [bundlefile:na]
at org.opendaylight.ovsdb.neutron.provider.OF13ProviderManager.programLocalRules(OF13ProviderManager.java:390) [bundlefile:na]
at org.opendaylight.ovsdb.neutron.provider.OF13ProviderManager.handleInterfaceUpdate(OF13ProviderManager.java:490) [bundlefile:na]
at org.opendaylight.ovsdb.neutron.provider.OF13ProviderManager.triggerInterfaceUpdates(OF13ProviderManager.java:518) [bundlefile:na]
at org.opendaylight.ovsdb.neutron.provider.OF13ProviderManager.initializeOFFlowRules(OF13ProviderManager.java:2025) [bundlefile:na]
at org.opendaylight.ovsdb.neutron.SouthboundHandler.notifyNode(SouthboundHandler.java:289) [bundlefile:na]
at org.opendaylight.controller.switchmanager.internal.SwitchManager.notifyNode(SwitchManager.java:1811) [bundlefile:na]
at org.opendaylight.controller.switchmanager.internal.SwitchManager.addNode(SwitchManager.java:1033) [bundlefile:na]
at org.opendaylight.controller.switchmanager.internal.SwitchManager.updateNode(SwitchManager.java:1134) [bundlefile:na]
at org.opendaylight.controller.sal.implementation.internal.Inventory.updateNode(Inventory.java:115) [bundlefile:na]
at org.opendaylight.controller.sal.compatibility.InventoryAndReadAdapter.publishNodeUpdate(InventoryAndReadAdapter.java:1035) [bundlefile:na]
at org.opendaylight.controller.sal.compatibility.InventoryAndReadAdapter.onNodeUpdated(InventoryAndReadAdapter.java:635) [bundlefile:na]
at org.opendaylight.controller.sal.compatibility.InventoryAndReadAdapter$$Broker$ListenerInvoker.onNotification(InventoryAndReadAdapter$$Broker$ListenerInvoker.java) [bundlefile:na]
at org.opendaylight.controller.sal.binding.impl.NotifyTask.call(NotifyTask.java:59) [bundlefile:na]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_05]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_05]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_05]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_05]
2014-04-28 08:54:45.315 CEST [md-sal-binding-notification-37] DEBUG o.o.o.neutron.TenantNetworkManager - Interface [name=tap97e315f0-38, options={}, type=internal, ofport=[2], mac=[], statistics={tx_packets=9, tx_errors=0, collisions=0, tx_dropped=0, rx_dropped=0, rx_crc_err=0, rx_bytes=1066, rx_frame_err=0, rx_over_err=0, tx_bytes=726, rx_errors=0, rx_packets=13}, status={driver_name=openvswitch}

, other_config={}, external_ids=

{attached-mac=fa:16:3e:64:20:42, iface-status=active, iface-id=97e315f0-38ff-47d8-89eb-52efc3c10cbb}

] mappped to NeutronNetwork [networkUUID=a8badaed-f1a2-4f0b-b4ef-54ecbf28df70, networkName=public, adminStateUp=true, shared=false, tenantID=5209d86d95c3446b85e661c2a3a65d70, routerExternal=true, providerNetworkType=local, providerPhysicalNetwork=null, providerSegmentationID=null, status=ACTIVE, subnets=[5a528eb7-86c0-47ae-853b-1cb1dccc6f20], myPorts=[NeutronPort [portUUID=29c48b29-39e9-4eec-b5b7-71b1a38175e4, networkUUID=a8badaed-f1a2-4f0b-b4ef-54ecbf28df70, name=, adminStateUp=true, status=null, macAddress=FA:16:3E:C7:B2:AC, fixedIPs=[org.opendaylight.controller.networkconfig.neutron.Neutron_IPs at 159b8511], deviceID=bdd2b63f-5ead-4d76-81be-df73b6772772, deviceOwner=network:router_gateway, tenantID=, floatingIPMap={}], NeutronPort [portUUID=97e315f0-38ff-47d8-89eb-52efc3c10cbb, networkUUID=a8badaed-f1a2-4f0b-b4ef-54ecbf28df70, name=, adminStateUp=true, status=null, macAddress=FA:16:3E:64:20:42, fixedIPs=[org.opendaylight.controller.networkconfig.neutron.Neutron_IPs at f215a86], deviceID=devstack, deviceOwner=compute:probe, tenantID=5209d86d95c3446b85e661c2a3a65d70, floatingIPMap={}]]]
2014-04-28 08:54:45.330 CEST [md-sal-binding-notification-37] DEBUG o.o.o.n.provider.OF13ProviderManager - Trigger Interface update for Interface [name=tap97e315f0-38, options={}, type=internal, ofport=[2], mac=[], statistics=

{tx_packets=9, tx_errors=0, collisions=0, tx_dropped=0, rx_dropped=0, rx_crc_err=0, rx_bytes=1066, rx_frame_err=0, rx_over_err=0, tx_bytes=726, rx_errors=0, rx_packets=13}

, status=

{driver_name=openvswitch}

, other_config={}, external_ids=

{attached-mac=fa:16:3e:64:20:42, iface-status=active, iface-id=97e315f0-38ff-47d8-89eb-52efc3c10cbb}

]



 Comments   
Comment by Srini Seetharaman [ 21/Oct/14 ]

We believe this is fixed.

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