Details
-
Bug
-
Status: Resolved
-
Resolution: Done
-
None
-
None
-
None
-
Operating System: All
Platform: All
-
8084
Description
FilterContentValidator always creates string key values:
final Optional<String> keyValue = childElements.get().getOnlyTextContentOptionally();
if (keyValue.isPresent())
...
as a consequence such YII cannot be translated to II using mdsal's BindingToNormalizedNodeCodec (issue similar to https://bugs.opendaylight.org/show_bug.cgi?id=7759):
2017-03-27 11:44:47.558 CEST [netconf-netty-1] ERROR o.o.n.i.o.NetconfOperationRouterImpl - Unexpected exception during netconf operation execution
java.lang.ClassCastException: java.lang.String cannot be cast to org.opendaylight.yangtools.yang.common.QName
at org.opendaylight.yangtools.binding.data.codec.impl.IdentityCodec.deserialize(IdentityCodec.java:17) ~[mdsal-binding-dom-codec-0.9.3-SNAPSHOT.jar:na]
at org.opendaylight.yangtools.binding.data.codec.impl.ValueContext.deserialize(ValueContext.java:50) ~[mdsal-binding-dom-codec-0.9.3-SNAPSHOT.jar:na]
at org.opendaylight.yangtools.binding.data.codec.impl.IdentifiableItemCodec.deserialize(IdentifiableItemCodec.java:101) ~[mdsal-binding-dom-codec-0.9.3-SNAPSHOT.jar:na]
at org.opendaylight.yangtools.binding.data.codec.impl.IdentifiableItemCodec.deserialize(IdentifiableItemCodec.java:30) ~[mdsal-binding-dom-codec-0.9.3-SNAPSHOT.jar:na]
at org.opendaylight.yangtools.binding.data.codec.impl.KeyedListNodeCodecContext.getBindingPathArgument(KeyedListNodeCodecContext.java:73) ~[mdsal-binding-dom-codec-0.9.3-SNAPSHOT.jar:na]
at org.opendaylight.yangtools.binding.data.codec.impl.BindingCodecContext.getCodecContextNode(BindingCodecContext.java:169) ~[mdsal-binding-dom-codec-0.9.3-SNAPSHOT.jar:na]
at org.opendaylight.yangtools.binding.data.codec.impl.InstanceIdentifierCodec.deserialize(InstanceIdentifierCodec.java:36) ~[mdsal-binding-dom-codec-0.9.3-SNAPSHOT.jar:na]
at org.opendaylight.yangtools.binding.data.codec.impl.InstanceIdentifierCodec.deserialize(InstanceIdentifierCodec.java:19) ~[mdsal-binding-dom-codec-0.9.3-SNAPSHOT.jar:na]
at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry.fromYangInstanceIdentifier(BindingNormalizedNodeCodecRegistry.java:92) ~[mdsal-binding-dom-codec-0.9.3-SNAPSHOT.jar:na]
at org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodec.fromYangInstanceIdentifier(BindingToNormalizedNodeCodec.java:171) ~[sal-binding-broker-impl-1.4.3-SNAPSHOT.jar:na]
Issue is present in Carbon (logs are for boron-SR3 with https://git.opendaylight.org/gerrit/#/c/53678/)
It applies only to netconf get/get-config.
Edit-config is fine (uses DomToNormalizedNodeParserFactory)
Restconf get/put are also fine (RestCodec is used).
Attachments
| # | Subject | Branch | Project | Status | CR | V |
|---|---|---|---|---|---|---|
| 67742,1 | NETCONF-506: fix YII deserialization in FilterContentValidator | stable/nitrogen | netconf | Status: MERGED | 0 | +1 |
| 67743,4 | NETCONF-506: fix YII deserialization in FilterContentValidator | master | netconf | Status: MERGED | 0 | +1 |
| 67745,2 | NETCONF-506: fix YII deserialization in FilterContentValidator | stable/carbon | netconf | Status: MERGED | 0 | +1 |