[YANGTOOLS-773] IllegalArgumentException: MapModification strategy can only handle MapNode or MapEntryNode's Created: 24/Apr/17 Updated: 10/Apr/22 Resolved: 02/May/17 |
|
| Status: | Resolved |
| Project: | yangtools |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | ||
| Reporter: | Claudio David Gasparini | Assignee: | Claudio David Gasparini |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: |
Operating System: All |
||
| External issue ID: | 8291 |
| Description |
|
/usr/lib/jvm/java-8-oracle/bin/java -ea -Didea.test.cyclic.buffer.size=1048576 -javaagent:/home/cdg/idea-IC-171.4249.4/lib/idea_rt.jar=32894:/home/cdg/idea-IC-171.4249.4/bin -Dfile.encoding=UTF-8 -classpath /home/cdg/idea-IC-171.4249.4/lib/idea_rt.jar:/home/cdg/idea-IC-171.4249.4/plugins/junit/lib/junit-rt.jar:/usr/lib/jvm/java-8-oracle/jre/lib/charsets.jar:/usr/lib/jvm/java-8-oracle/jre/lib/deploy.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/cldrdata.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/dnsns.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/jaccess.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/jfxrt.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/localedata.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/nashorn.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/sunec.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/sunjce_provider.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/sunpkcs11.jar:/usr/lib/jvm/java-8-oracle/jre/lib/ext/zipfs.jar:/usr/lib/jvm/java-8-oracle/jre/lib/javaws.jar:/usr/lib/jvm/java-8-oracle/jre/lib/jce.jar:/usr/lib/jvm/java-8-oracle/jre/lib/jfr.jar:/usr/lib/jvm/java-8-oracle/jre/lib/jfxswt.jar:/usr/lib/jvm/java-8-oracle/jre/lib/jsse.jar:/usr/lib/jvm/java-8-oracle/jre/lib/management-agent.jar:/usr/lib/jvm/java-8-oracle/jre/lib/plugin.jar:/usr/lib/jvm/java-8-oracle/jre/lib/resources.jar:/usr/lib/jvm/java-8-oracle/jre/lib/rt.jar:/home/cdg/odl/casandra-ds/impl/target/test-classes:/home/cdg/odl/casandra-ds/impl/target/classes:/home/cdg/odl/casandra-ds/api/target/classes:/home/cdg/.m2/repository/org/opendaylight/mdsal/yang-binding/0.10.0-SNAPSHOT/yang-binding-0.10.0-20170423.233108-233.jar:/home/cdg/odl/casandra-ds/spi/target/classes:/home/cdg/.m2/repository/org/slf4j/slf4j-api/1.7.21/slf4j-api-1.7.21.jar:/home/cdg/.m2/repository/org/opendaylight/yangtools/yang-data-impl/1.1.0-SNAPSHOT/yang-data-impl-1.1.0-SNAPSHOT.jar:/home/cdg/.m2/repository/org/opendaylight/yangtools/util/1.1.0-SNAPSHOT/util-1.1.0-20170423.170955-356.jar:/home/cdg/.m2/repository/com/github/romix/java-concurrent-hash-trie-map/0.2.23-ODL/java-concurrent-hash-trie-map-0.2.23-ODL.jar:/home/cdg/.m2/repository/org/opendaylight/yangtools/yang-common/1.1.0-SNAPSHOT/yang-common-1.1.0-20170423.171000-356.jar:/home/cdg/.m2/repository/org/opendaylight/yangtools/object-cache-api/1.1.0-SNAPSHOT/object-cache-api-1.1.0-20170423.170940-357.jar:/home/cdg/.m2/repository/org/opendaylight/yangtools/yang-data-api/1.1.0-SNAPSHOT/yang-data-api-1.1.0-20170423.171004-356.jar:/home/cdg/.m2/repository/org/opendaylight/yangtools/yang-data-util/1.1.0-SNAPSHOT/yang-data-util-1.1.0-20170423.171022-355.jar:/home/cdg/.m2/repository/org/opendaylight/yangtools/yang-model-api/1.1.0-SNAPSHOT/yang-model-api-1.1.0-20170423.171027-355.jar:/home/cdg/.m2/repository/org/opendaylight/yangtools/yang-model-util/1.1.0-SNAPSHOT/yang-model-util-1.1.0-20170423.171039-355.jar:/home/cdg/.m2/repository/com/google/guava/guava/18.0/guava-18.0.jar:/home/cdg/.m2/repository/org/antlr/antlr4-runtime/4.5.3/antlr4-runtime-4.5.3.jar:/home/cdg/.m2/repository/org/opendaylight/controller/sal-binding-api/1.5.0-SNAPSHOT/sal-binding-api-1.5.0-20170423.065824-412.jar:/home/cdg/.m2/repository/org/opendaylight/controller/sal-common-api/1.5.0-SNAPSHOT/sal-common-api-1.5.0-20170423.065838-411.jar:/home/cdg/.m2/repository/org/opendaylight/controller/config-api/0.6.0-SNAPSHOT/config-api-0.6.0-20170423.065630-420.jar:/home/cdg/.m2/repository/org/osgi/org.osgi.core/5.0.0/org.osgi.core-5.0.0.jar:/home/cdg/.m2/repository/org/opendaylight/yangtools/concepts/1.1.0-SNAPSHOT/concepts-1.1.0-20170423.170934-358.jar:/home/cdg/.m2/repository/org/opendaylight/mdsal/mdsal-dom-api/2.2.0-SNAPSHOT/mdsal-dom-api-2.2.0-20170423.233035-235.jar:/home/cdg/.m2/repository/org/opendaylight/mdsal/mdsal-common-api/2.2.0-SNAPSHOT/mdsal-common-api-2.2.0-20170423.233033-236.jar:/home/cdg/.m2/repository/org/opendaylight/mdsal/mdsal-dom-spi/2.2.0-SNAPSHOT/mdsal-dom-spi-2.2.0-20170423.233040-235.jar:/home/cdg/.m2/repository/org/opendaylight/mdsal/mdsal-binding-generator-impl/0.10.0-SNAPSHOT/mdsal-binding-generator-impl-0.10.0-20170423.233016-240.jar:/home/cdg/.m2/repository/org/javassist/javassist/3.20.0-GA/javassist-3.20.0-GA.jar:/home/cdg/.m2/repository/org/opendaylight/mdsal/mdsal-binding-generator-api/0.10.0-SNAPSHOT/mdsal-binding-generator-api-0.10.0-20170423.233015-240.jar:/home/cdg/.m2/repository/org/opendaylight/mdsal/mdsal-binding-generator-util/0.10.0-SNAPSHOT/mdsal-binding-generator-util-0.10.0-20170423.233017-238.jar:/home/cdg/.m2/repository/org/apache/commons/commons-lang3/3.5/commons-lang3-3.5.jar:/home/cdg/.m2/repository/org/opendaylight/yangtools/yang-data-codec-gson/1.1.0-SNAPSHOT/yang-data-codec-gson-1.1.0-20170423.171007-356.jar:/home/cdg/.m2/repository/com/google/code/gson/gson/2.7/gson-2.7.jar:/home/cdg/.m2/repository/org/opendaylight/mdsal/mdsal-binding-dom-codec/0.10.0-SNAPSHOT/mdsal-binding-dom-codec-0.10.0-20170423.233014-240.jar:/home/cdg/.m2/repository/com/datastax/cassandra/cassandra-driver-core/2.1.9/cassandra-driver-core-2.1.9.jar:/home/cdg/.m2/repository/io/netty/netty-handler/4.1.8.Final/netty-handler-4.1.8.Final.jar:/home/cdg/.m2/repository/io/netty/netty-buffer/4.1.8.Final/netty-buffer-4.1.8.Final.jar:/home/cdg/.m2/repository/io/netty/netty-common/4.1.8.Final/netty-common-4.1.8.Final.jar:/home/cdg/.m2/repository/io/netty/netty-transport/4.1.8.Final/netty-transport-4.1.8.Final.jar:/home/cdg/.m2/repository/io/netty/netty-resolver/4.1.8.Final/netty-resolver-4.1.8.Final.jar:/home/cdg/.m2/repository/io/netty/netty-codec/4.1.8.Final/netty-codec-4.1.8.Final.jar:/home/cdg/.m2/repository/com/codahale/metrics/metrics-core/3.0.1/metrics-core-3.0.1.jar:/home/cdg/.m2/repository/junit/junit/4.11/junit-4.11.jar:/home/cdg/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/home/cdg/.m2/repository/org/mockito/mockito-core/1.10.19/mockito-core-1.10.19.jar:/home/cdg/.m2/repository/org/objenesis/objenesis/2.1/objenesis-2.1.jar:/home/cdg/.m2/repository/org/opendaylight/yangtools/yang-parser-api/1.1.0-SNAPSHOT/yang-parser-api-1.1.0-20170423.171042-355.jar:/home/cdg/.m2/repository/org/opendaylight/yangtools/yang-parser-impl/1.1.0-SNAPSHOT/yang-parser-impl-1.1.0-20170423.171046-355.jar:/home/cdg/.m2/repository/org/opendaylight/yangtools/yang-test-util/1.1.0-SNAPSHOT/yang-test-util-1.1.0-20170423.171051-189.jar:/home/cdg/.m2/repository/org/slf4j/slf4j-simple/1.7.21/slf4j-simple-1.7.21.jar:/home/cdg/.m2/repository/com/google/code/findbugs/annotations/3.0.0/annotations-3.0.0.jar:/home/cdg/.m2/repository/com/google/code/findbugs/jsr305/3.0.0/jsr305-3.0.0.jar:/home/cdg/.m2/repository/org/eclipse/jdt/org.eclipse.jdt.annotation/2.0.0/org.eclipse.jdt.annotation-2.0.0.jar com.intellij.rt.execution.junit.JUnitStarter -ideVersion5 tech.pantheon.odl.ds.cassandra.shard.impl.CassandraProviderShardDataModificationCursorTest,testCursor java.lang.IllegalArgumentException: MapModification strategy can only handle MapNode or MapEntryNode's, offending node: ImmutableContainerNode{nodeIdentifier=(urn:opendaylight:params:xml:ns:yang:cassandra:dom:store:store-test?revision=2017-04-13)outer-list, value=[], attributes={}} at org.opendaylight.yangtools.yang.data.impl.schema.tree.UnorderedMapModificationStrategy.createBuilder(UnorderedMapModificationStrategy.java:40) |
| Comments |
| Comment by Claudio David Gasparini [ 24/Apr/17 ] |
| Comment by Robert Varga [ 25/Apr/17 ] |
|
The problem lies in InMemoryDataTreeFactory.createRoot(), which does not have a SchemaContext, hence it is making a best guess based on YangInstanceIdentifier as to what the actual root not should be. master: https://git.opendaylight.org/gerrit/#/c/56025/ The patch needs some unit tests to make sure it is doing the right thing. |
| Comment by Claudio David Gasparini [ 02/May/17 ] |