[YANGTOOLS-987] ImmutableNormalizedNodeStreamWriter fails for free-standing LeafSetEntryNodes Created: 14/May/19  Updated: 14/May/19  Resolved: 14/May/19

Status: Resolved
Project: yangtools
Component/s: data-impl
Affects Version/s: 3.0.0, 2.0.18, 2.1.10
Fix Version/s: 3.0.1, 2.0.19, 2.1.11

Type: Bug Priority: High
Reporter: Robert Varga Assignee: Robert Varga
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Blocks
blocks CONTROLLER-1889 Rework NormalizedNodePruner in terms ... Resolved

 Description   

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.


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