aboutsummaryrefslogtreecommitdiffstats
path: root/container-search/src/main/java/com/yahoo/prelude/IndexModel.java
diff options
context:
space:
mode:
Diffstat (limited to 'container-search/src/main/java/com/yahoo/prelude/IndexModel.java')
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/IndexModel.java14
1 files changed, 12 insertions, 2 deletions
diff --git a/container-search/src/main/java/com/yahoo/prelude/IndexModel.java b/container-search/src/main/java/com/yahoo/prelude/IndexModel.java
index 45214d4d3df..d2950078868 100644
--- a/container-search/src/main/java/com/yahoo/prelude/IndexModel.java
+++ b/container-search/src/main/java/com/yahoo/prelude/IndexModel.java
@@ -7,6 +7,7 @@ import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
+import java.util.logging.Logger;
import java.util.stream.Collectors;
import com.yahoo.search.config.IndexInfoConfig;
@@ -20,6 +21,8 @@ import com.yahoo.container.QrSearchersConfig;
*/
public final class IndexModel {
+ private static final Logger log = Logger.getLogger(IndexModel.class.getName());
+
// Copied from MasterClustersInfoUpdater. It's a temporary workaround for IndexFacts
private Map<String, List<String>> masterClusters;
private Map<String, SearchDefinition> searchDefinitions;
@@ -112,8 +115,15 @@ public final class IndexModel {
union.getOrCreateIndex(index.getName());
for (String command : index.allCommands())
union.addCommand(index.getName(), command);
- for (String alias : index.aliases())
- union.addAlias(alias, index.getName());
+ for (String alias : index.aliases()) {
+ try {
+ union.addAlias(alias, index.getName());
+ }
+ catch (IllegalArgumentException e) {
+ log.fine("Conflicting alias '" + alias + " of " + index + " in " + sd +
+ " will not take effect for queries which does not specify that search definition");
+ }
+ }
}
}