fix NPE in odl-mdsal-trace
It (probably) broke back in
Commit
a6286576cf76bce93009c58b88ba1e949ef717af
Change-Id: Id82a79e8e430665f6fb5433ed7bab858044eacbe.
This NPE only occurs if mdsaltrace has non-empty write-watches
(as it does in the initial default mdsaltrace_config.xml).
The following commit adds a non-regression test for this.
Caused by: java.lang.NullPointerException
at org.opendaylight.mdsal.binding.dom.codec.impl.BindingCodecContext.getCodecContextNode(BindingCodecContext.java:152)
at org.opendaylight.mdsal.binding.dom.codec.impl.InstanceIdentifierCodec.deserialize(InstanceIdentifierCodec.java:36)
at org.opendaylight.mdsal.binding.dom.codec.impl.BindingNormalizedNodeCodecRegistry.fromYangInstanceIdentifier(BindingNormalizedNodeCodecRegistry.java:101)
at org.opendaylight.mdsal.binding.dom.adapter.BindingToNormalizedNodeCodec.fromYangInstanceIdentifier(BindingToNormalizedNodeCodec.java:215)
at Proxyabf4ea17_f2e5_4773_bd89_e4f8393036df.fromYangInstanceIdentifier(Unknown Source)
at Proxy1038cd39_b88e_4023_8cb1_af39f6d6feb2.fromYangInstanceIdentifier(Unknown Source)
at org.opendaylight.controller.md.sal.trace.dom.impl.TracingBroker.toPathString(TracingBroker.java:270)
at org.opendaylight.controller.md.sal.trace.dom.impl.TracingBroker.toPathString(TracingBroker.java:264)
at org.opendaylight.controller.md.sal.trace.dom.impl.TracingBroker$Watch.eventIsOfInterest(TracingBroker.java:167)
at org.opendaylight.controller.md.sal.trace.dom.impl.TracingBroker.isWriteWatched(TracingBroker.java:248)
at org.opendaylight.controller.md.sal.trace.dom.impl.AbstractTracingWriteTransaction.recordOp(AbstractTracingWriteTransaction.java:37)
at org.opendaylight.controller.md.sal.trace.dom.impl.AbstractTracingWriteTransaction.<init>(AbstractTracingWriteTransaction.java:32)
at org.opendaylight.controller.md.sal.trace.dom.impl.TracingWriteTransaction.<init>(TracingWriteTransaction.java:24)
JIRA: CONTROLLER-1877
Change-Id: Ia9fbf69bc1c3553e929a045146a3610bce72cd96
Signed-off-by: Michael Vorburger <vorburger@redhat.com>