X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=yang%2Fyang-data-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fdata%2Fimpl%2Fschema%2Ftree%2FInMemoryDataTree.java;h=6e389699294b1decde70ce35484ae0d3efcd2a05;hb=9c8e1b0cd23fed1e3f883e85e54a42c603c48c2c;hp=13070428ec896c1722f01454bdd2841a4b25fcab;hpb=a058586ca2b1143012a5af8a3bf0ac4340a5a0af;p=yangtools.git diff --git a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTree.java b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTree.java index 13070428ec..6e38969929 100644 --- a/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTree.java +++ b/yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTree.java @@ -113,13 +113,21 @@ final class InMemoryDataTree extends AbstractDataTreeTip implements TipProducing LOG.debug("Updating datastore from {} to {}", currentRoot, newRoot); final TreeNode oldRoot = c.getBeforeRoot(); - Preconditions.checkState(oldRoot == currentRoot, "Store tree %s and candidate base %s differ.", currentRoot, oldRoot); + if (oldRoot != currentRoot) { + final String oldStr = simpleToString(oldRoot); + final String currentStr = simpleToString(currentRoot); + throw new IllegalStateException("Store tree " + currentStr + " and candidate base " + oldStr + " differ."); + } newState = currentState.withRoot(newRoot); LOG.trace("Updated state from {} to {}", currentState, newState); } while (!STATE_UPDATER.compareAndSet(this, currentState, newState)); } + private static String simpleToString(final Object o) { + return o.getClass().getName() + "@" + Integer.toHexString(o.hashCode()); + } + @Override public YangInstanceIdentifier getRootPath() { return rootPath;