-
Bug
-
Resolution: Done
-
None
-
unspecified
-
None
-
Operating System: All
Platform: All
-
4776
When neutron is configures to have l3_ha, there will be networks created
which have an empty tenant id field. OVSDB (and NeutronNorthbound) need to
be able to handle it gracefully.
Add to local.conf:
enable_service q-l3
ODL_L3=False
[[post-config|$NEUTRON_CONF]]
[DEFAULT]
l3_ha = True
===
Steps to reproduce:
https://gist.github.com/bc67dd6152953001d68f
source openrc admin admin
keystone tenant-create --name=tenant1 --enabled=true 2> /dev/null
keystone user-create --name=user1 --pass=user1 \
--email=user1@example.com 2> /dev/null
keystone user-role-add --user=user1 --role=member \
--tenant=tenant1 2> /dev/null
TNT1_ID=$(keystone tenant-list 2> /dev/null | grep '\s'tenant1'' | awk '
{print $2}')
neutron net-create ext --provider:network_type flat --router:external --provider:physical_network physnetext
neutron subnet-create \
--allocation-pool start=192.168.111.21,end=192.168.111.40 --gateway=192.168.111.254 \
--disable-dhcp --name subext ext 192.168.111.0/24
unset SERVICE_TOKEN SERVICE_ENDPOINT
export OS_AUTH_URL=http://192.168.50.20:35357/v2.0/
export OS_REGION_NAME=RegionOne
export OS_USERNAME=user1
export OS_TENANT_NAME=tenant1
export OS_PASSWORD=user1
export PS1='[\u@\h \W(keystone_user1)]\$ '
rm -f id_rsa_demo* ; ssh-keygen -t rsa -b 2048 -N '' -f id_rsa_demo > /dev/null
nova keypair-add --pub-key id_rsa_demo.pub demo_key > /dev/null
neutron router-create rtr1
====
2015-12-14 23:00:41,727 | INFO | tp1482635200-568 | eutronSecurityGroupDummyProvider | 270 - org.opendaylight.neutron.dummyprovider - 0.6.0.SNAPSHOT | NeutronSecurityGroup{securityGroupUUID='df8bdda3-7064-488f-a5da-300fe41f6bb0', securityGroupName='default', securityGroupDescription='Default security group', securityGroupTenantID='', securityRules=[NeutronSecurityRule
{securityRuleUUID='ca18d679-8340-4770-b987-5e46b7d3ff21', securityRuleDirection='ingress', securityRuleProtocol='null', securityRulePortMin=null, securityRulePortMax=null, securityRuleEthertype='IPv4', securityRuleRemoteIpPrefix='null', securityRemoteGroupID=df8bdda3-7064-488f-a5da-300fe41f6bb0, securityRuleGroupID='df8bdda3-7064-488f-a5da-300fe41f6bb0', securityRuleTenantID=''}, NeutronSecurityRule
{securityRuleUUID='d37408fa-e7f2-4c5c-a8d8-85988d08a9af', securityRuleDirection='egress', securityRuleProtocol='null', securityRulePortMin=null, securityRulePortMax=null, securityRuleEthertype='IPv4', securityRuleRemoteIpPrefix='null', securityRemoteGroupID=null, securityRuleGroupID='df8bdda3-7064-488f-a5da-300fe41f6bb0', securityRuleTenantID=''}, NeutronSecurityRule
{securityRuleUUID='a891150e-7939-4966-bd68-8f086e9ab687', securityRuleDirection='ingress', securityRuleProtocol='null', securityRulePortMin=null, securityRulePortMax=null, securityRuleEthertype='IPv6', securityRuleRemoteIpPrefix='null', securityRemoteGroupID=df8bdda3-7064-488f-a5da-300fe41f6bb0, securityRuleGroupID='df8bdda3-7064-488f-a5da-300fe41f6bb0', securityRuleTenantID=''}, NeutronSecurityRule
{securityRuleUUID='0b3f961d-98fd-47c4-957b-ef34a8f71a35', securityRuleDirection='egress', securityRuleProtocol='null', securityRulePortMin=null, securityRulePortMax=null, securityRuleEthertype='IPv6', securityRuleRemoteIpPrefix='null', securityRemoteGroupID=null, securityRuleGroupID='df8bdda3-7064-488f-a5da-300fe41f6bb0', securityRuleTenantID=''}]]
2015-12-14 23:00:41,756 | INFO | tp1482635200-567 | NeutronNetworkDummyProvider | 270 - org.opendaylight.neutron.dummyprovider - 0.6.0.SNAPSHOT | NeutronNetwork [networkUUID=3d357c2c-9390-469a-ac15-e8a48fb5029d, networkName=HA network tenant d9dd6609c22a4c1c816e9cb10c5cb247, adminStateUp=true, shared=false, tenantID=, routerExternal=false, providerNetworkType=vxlan, providerPhysicalNetwork=null, providerSegmentationID=1054, status=ACTIVE, segments = null]
2015-12-14 23:00:41,757 | ERROR | lt-dispatcher-25 | DataChangeListener | 147 - org.opendaylight.controller.sal-distributed-datastore - 1.3.0.SNAPSHOT | Error notifying listener org.opendaylight.ovsdb.openstack.netvirt.translator.iaware.impl.NeutronNetworkChangeListener
java.lang.NullPointerException
at org.opendaylight.ovsdb.openstack.netvirt.translator.iaware.impl.NeutronNetworkChangeListener.fromMd(NeutronNetworkChangeListener.java:133)[268:org.opendaylight.ovsdb.openstack.net-virt:1.2.1.SNAPSHOT]
at org.opendaylight.ovsdb.openstack.netvirt.translator.iaware.impl.NeutronNetworkChangeListener.createNetwork(NeutronNetworkChangeListener.java:84)[268:org.opendaylight.ovsdb.openstack.net-virt:1.2.1.SNAPSHOT]
at org.opendaylight.ovsdb.openstack.netvirt.translator.iaware.impl.NeutronNetworkChangeListener.onDataChanged(NeutronNetworkChangeListener.java:74)[268:org.opendaylight.ovsdb.openstack.net-virt:1.2.1.SNAPSHOT]
at org.opendaylight.controller.md.sal.binding.impl.AbstractForwardedDataBroker$TranslatingDataChangeInvoker.onDataChanged(AbstractForwardedDataBroker.java:143)[122:org.opendaylight.controller.sal-binding-broker-impl:1.3.0.SNAPSHOT]
at org.opendaylight.controller.cluster.datastore.DataChangeListener.dataChanged(DataChangeListener.java:66)[147:org.opendaylight.controller.sal-distributed-datastore:1.3.0.SNAPSHOT]
at org.opendaylight.controller.cluster.datastore.DataChangeListener.handleReceive(DataChangeListener.java:39)[147:org.opendaylight.controller.sal-distributed-datastore:1.3.0.SNAPSHOT]
at org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor.onReceive(AbstractUntypedActor.java:34)[143:org.opendaylight.controller.sal-clustering-commons:1.3.0.SNAPSHOT]
at akka.actor.UntypedActor$$anonfun$receive$1.applyOrElse(UntypedActor.scala:167)[132:com.typesafe.akka.actor:2.3.14]
at akka.actor.Actor$class.aroundReceive(Actor.scala:467)[132:com.typesafe.akka.actor:2.3.14]
at akka.actor.UntypedActor.aroundReceive(UntypedActor.scala:97)[132:com.typesafe.akka.actor:2.3.14]
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:516)[132:com.typesafe.akka.actor:2.3.14]
at akka.actor.ActorCell.invoke(ActorCell.scala:487)[132:com.typesafe.akka.actor:2.3.14]
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:238)[132:com.typesafe.akka.actor:2.3.14]
at akka.dispatch.Mailbox.run(Mailbox.scala:220)[132:com.typesafe.akka.actor:2.3.14]
at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:397)[132:com.typesafe.akka.actor:2.3.14]
at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)[129:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b]
at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)[129:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b]
at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)[129:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b]
at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)[129:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b]
2015-12-14 23:00:41,807 | INFO | tp1482635200-530 | NeutronSubnetDummyProvider | 270 - org.opendaylight.neutron.dummyprovider - 0.6.0.SNAPSHOT | NeutronSubnet [subnetUUID=2f0d7992-9d80-4a12-960b-8b47705760f4, networkUUID=3d357c2c-9390-469a-ac15-e8a48fb5029d, name=HA subnet tenant d9dd6609c22a4c1c816e9cb10c5cb247, ipVersion=4, cidr=169.254.192.0/18, gatewayIP=null, dnsNameservers=[], allocationPools=[NeutronSubnetIPAllocationPool [start=169.254.192.1, end=169.254.255.254]], hostRoutes=[], enableDHCP=false, tenantID=, ipv6AddressMode=null, ipv6RaMode=null]
2015-12-14 23:00:41,807 | ERROR | lt-dispatcher-25 | DataChangeListener | 147 - org.opendaylight.controller.sal-distributed-datastore - 1.3.0.SNAPSHOT | Error notifying listener org.opendaylight.ovsdb.openstack.netvirt.translator.iaware.impl.NeutronSubnetChangeListener
java.lang.NullPointerException
at org.opendaylight.ovsdb.openstack.netvirt.translator.iaware.impl.NeutronSubnetChangeListener.fromMd(NeutronSubnetChangeListener.java:141)[268:org.opendaylight.ovsdb.openstack.net-virt:1.2.1.SNAPSHOT]
at org.opendaylight.ovsdb.openstack.netvirt.translator.iaware.impl.NeutronSubnetChangeListener.createSubnet(NeutronSubnetChangeListener.java:97)[268:org.opendaylight.ovsdb.openstack.net-virt:1.2.1.SNAPSHOT]
at org.opendaylight.ovsdb.openstack.netvirt.translator.iaware.impl.NeutronSubnetChangeListener.onDataChanged(NeutronSubnetChangeListener.java:87)[268:org.opendaylight.ovsdb.openstack.net-virt:1.2.1.SNAPSHOT]
at org.opendaylight.controller.md.sal.binding.impl.AbstractForwardedDataBroker$TranslatingDataChangeInvoker.onDataChanged(AbstractForwardedDataBroker.java:143)[122:org.opendaylight.controller.sal-binding-broker-impl:1.3.0.SNAPSHOT]
at org.opendaylight.controller.cluster.datastore.DataChangeListener.dataChanged(DataChangeListener.java:66)[147:org.opendaylight.controller.sal-distributed-datastore:1.3.0.SNAPSHOT]
at org.opendaylight.controller.cluster.datastore.DataChangeListener.handleReceive(DataChangeListener.java:39)[147:org.opendaylight.controller.sal-distributed-datastore:1.3.0.SNAPSHOT]
at org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor.onReceive(AbstractUntypedActor.java:34)[143:org.opendaylight.controller.sal-clustering-commons:1.3.0.SNAPSHOT]
at akka.actor.UntypedActor$$anonfun$receive$1.applyOrElse(UntypedActor.scala:167)[132:com.typesafe.akka.actor:2.3.14]
at akka.actor.Actor$class.aroundReceive(Actor.scala:467)[132:com.typesafe.akka.actor:2.3.14]
at akka.actor.UntypedActor.aroundReceive(UntypedActor.scala:97)[132:com.typesafe.akka.actor:2.3.14]
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:516)[132:com.typesafe.akka.actor:2.3.14]
at akka.actor.ActorCell.invoke(ActorCell.scala:487)[132:com.typesafe.akka.actor:2.3.14]
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:238)[132:com.typesafe.akka.actor:2.3.14]
at akka.dispatch.Mailbox.run(Mailbox.scala:220)[132:com.typesafe.akka.actor:2.3.14]
at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:397)[132:com.typesafe.akka.actor:2.3.14]
at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)[129:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b]
at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)[129:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b]
at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)[129:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b]
at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)[129:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b]