diff --git a/src/main/java/org/elasticsearch/cluster/metadata/MetaDataCreateIndexService.java b/src/main/java/org/elasticsearch/cluster/metadata/MetaDataCreateIndexService.java index f0927844c674b..68a230d461fe0 100644 --- a/src/main/java/org/elasticsearch/cluster/metadata/MetaDataCreateIndexService.java +++ b/src/main/java/org/elasticsearch/cluster/metadata/MetaDataCreateIndexService.java @@ -148,6 +148,21 @@ public ClusterState execute(ClusterState currentState) { // add the request mapping Map> mappings = Maps.newHashMap(); + + // if its a _percolator index, don't index the query object + if (request.index.equals(PercolatorService.INDEX_NAME)) { + mappings.put(MapperService.DEFAULT_MAPPING, parseMapping("{\n" + + " \"_default_\":{\n" + + " \"properties\" : {\n" + + " \"query\" : {\n" + + " \"type\" : \"object\",\n" + + " \"enabled\" : false\n" + + " }\n" + + " }\n" + + " }\n" + + "}")); + } + for (Map.Entry entry : request.mappings.entrySet()) { mappings.put(entry.getKey(), parseMapping(entry.getValue())); }