While developing the patch for CONTROLLER-1889 the following failure was detected:
java.lang.IllegalArgumentException: LeafSetEntryNode is not valid for parent org.opendaylight.yangtools.yang.data.impl.schema.NormalizedNodeResultBuilder@7bac686b at com.google.common.base.Preconditions.checkArgument(Preconditions.java:217) at org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNormalizedNodeStreamWriter.startLeafSetEntryNode(ImmutableNormalizedNodeStreamWriter.java:152) at org.opendaylight.controller.cluster.datastore.node.utils.transformer.AbstractNormalizedNodePruner.enter(AbstractNormalizedNodePruner.java:269) at org.opendaylight.controller.cluster.datastore.node.utils.transformer.AbstractNormalizedNodePruner.startLeafSetEntryNode(AbstractNormalizedNodePruner.java:119) at org.opendaylight.controller.cluster.datastore.node.utils.transformer.NormalizedNodePruner.startLeafSetEntryNode(NormalizedNodePruner.java:1) at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.wasProcessAsSimpleNode(NormalizedNodeWriter.java:134) at org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter.write(NormalizedNodeWriter.java:101) at org.opendaylight.controller.cluster.datastore.node.utils.transformer.NormalizedNodePrunerTest.testLeafSetEntryNodeNotPrunedWhenHasNoParent(NormalizedNodePrunerTest.java:202) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) at org.junit.runners.ParentRunner.run(ParentRunner.java:309) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:89) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:41) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:541) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:763) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:463) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:209)
The problem here is that the builder does not recognize ResultBuilder as a valid host for a LeafSetEntryNode.
- blocks
-
CONTROLLER-1889 Rework NormalizedNodePruner in terms of a forwarder
- Resolved