From 18ecb07132281d3152a49baf50e8c020403588f9 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Fri, 15 Jul 2016 12:43:58 +0200 Subject: [PATCH] BUG-4167: fall back to unknown module for empty YangInstanceIdentifier When we encounter an empyt YangInstanceIdentifier (for example during listener registration), we cannot extract a module name -- fallback to unknown, which will cause us to talk to the default shard. Change-Id: I2162884c5ce0d2c2f714bb66afd82f699c52d789 Signed-off-by: Robert Varga --- .../cluster/datastore/shardstrategy/ShardStrategyFactory.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/shardstrategy/ShardStrategyFactory.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/shardstrategy/ShardStrategyFactory.java index 1a5a4ac313..8ca6150038 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/shardstrategy/ShardStrategyFactory.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/shardstrategy/ShardStrategyFactory.java @@ -44,6 +44,10 @@ public class ShardStrategyFactory { } private String getModuleName(final YangInstanceIdentifier path) { + if (path.isEmpty()) { + return UNKNOWN_MODULE_NAME; + } + String namespace = path.getPathArguments().iterator().next().getNodeType().getNamespace().toASCIIString(); String moduleName = configuration.getModuleNameFromNameSpace(namespace); return moduleName != null ? moduleName : UNKNOWN_MODULE_NAME; -- 2.36.6