[NETVIRT-903] IllegalArgumentException: All keys must be specified for class org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.neutronvpn.rev150602.subnetmaps.SubnetmapKey. Missing key is getId. Created: 11/Sep/17  Updated: 10/Mar/18  Resolved: 13/Sep/17

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

Type: Bug
Reporter: Michael Vorburger Assignee: Unassigned
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issue Links:
Duplicate
duplicates NETVIRT-829 IllegalArgumentException: vrfEntry is... Resolved
Relates
relates to NETVIRT-1146 IllegalArgumentException: All keys mu... Resolved
External issue ID: 9142

 Description   

https://bugzilla.redhat.com/show_bug.cgi?id=1487790 raises this:

IllegalArgumentException: All keys must be specified for class org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.neutronvpn.rev150602.subnetmaps.SubnetmapKey. Missing key is getId.

java.lang.IllegalArgumentException: All keys must be specified for class org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.neutronvpn.rev150602.subnetmaps.SubnetmapKey. Missing key is getId. Supplied key is SubnetmapKey []
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:145)
(...)
at org.opendaylight.genius.datastoreutils.SingleTransactionDataBroker.syncReadOptional(SingleTransactionDataBroker.java:70)
at org.opendaylight.genius.mdsalutil.MDSALUtil.read(MDSALUtil.java:564)
at org.opendaylight.netvirt.fibmanager.FibUtil.getSubnetMap(FibUtil.java:622)
at org.opendaylight.netvirt.fibmanager.FibUtil.isVxlanNetworkAndInternalRouterVpn(FibUtil.java:704)
at org.opendaylight.netvirt.fibmanager.FibUtil.enforceVxlanDatapathSemanticsforInternalRouterVpn(FibUtil.java:723)
at org.opendaylight.netvirt.fibmanager.VrfEntryListener.lambda$checkDeleteLocalFibEntry$8(VrfEntryListener.java:985)
at org.opendaylight.genius.datastoreutils.DataStoreJobCoordinator$MainTask.run(DataStoreJobCoordinator.java:285)[319:org.opendaylight.genius.mdsalutil-api:0.2.2.Carbon]
(...)



 Comments   
Comment by Michael Vorburger [ 11/Sep/17 ]

So it looks like, in stable/carbon, netvirt fibmanager's FibUtil is failing during a read of a SubnetmapKey because it has no id?

The actual root cause of this bug which we would have to fix here is probably elsewhere in the code, wherever that SubnetmapKey was originally written? (The failure above is just an effect while it's being read..)

AFAIK in code later than carbon things in mdsal changed and exceptions are already raised on creation of incomplete data store entries, therefore presumably this is something which got fixed after the carbon cut and is fixed in stable/nitrogen and master - but can anyone remember, or find out, by what change?

Comment by Michael Vorburger [ 11/Sep/17 ]

According to https://lists.opendaylight.org/pipermail/netvirt-dev/2017-September/005434.html, this is PROBABLY already fixed, e.g. in https://git.opendaylight.org/gerrit/#/c/62627/ for stable/carbon 6 days ago (as well as in nitrogen and oxygen).

Comment by Michael Vorburger [ 13/Sep/17 ]

According to https://lists.opendaylight.org/pipermail/netvirt-dev/2017-September/005450.html, not just above (c/62627) but also https://git.opendaylight.org/gerrit/#/c/62470/ is needed (but also already merged).

Comment by Michael Vorburger [ 13/Sep/17 ]

But NETVIRT-829 has more outstanding not-yet merged changes (c/63041) - watch there.

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