You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by bt...@apache.org on 2019/11/01 10:51:24 UTC
[james-project] 03/06: JAMES-2917 Require ElasticSearch routing
upon index
This is an automated email from the ASF dual-hosted git repository.
btellier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 6129d92de7b091b82db85a873be383f1e834853a
Author: Benoit Tellier <bt...@linagora.com>
AuthorDate: Thu Oct 10 12:57:17 2019 +0700
JAMES-2917 Require ElasticSearch routing upon index
---
.../main/java/org/apache/james/backends/es/NodeMappingFactory.java | 2 ++
.../apache/james/mailbox/elasticsearch/MailboxMappingFactory.java | 6 ++++++
.../james/quota/search/elasticsearch/QuotaRatioMappingFactory.java | 6 ++++++
3 files changed, 14 insertions(+)
diff --git a/backends-common/elasticsearch/src/main/java/org/apache/james/backends/es/NodeMappingFactory.java b/backends-common/elasticsearch/src/main/java/org/apache/james/backends/es/NodeMappingFactory.java
index 2dfa375..05e15d4 100644
--- a/backends-common/elasticsearch/src/main/java/org/apache/james/backends/es/NodeMappingFactory.java
+++ b/backends-common/elasticsearch/src/main/java/org/apache/james/backends/es/NodeMappingFactory.java
@@ -41,6 +41,8 @@ public class NodeMappingFactory {
public static final String TEXT = "text";
public static final String KEYWORD = "keyword";
public static final String PROPERTIES = "properties";
+ public static final String ROUTING = "_routing";
+ public static final String REQUIRED = "required";
public static final String DATE = "date";
public static final String FORMAT = "format";
public static final String NESTED = "nested";
diff --git a/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/MailboxMappingFactory.java b/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/MailboxMappingFactory.java
index 9494894..22d915f 100644
--- a/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/MailboxMappingFactory.java
+++ b/mailbox/elasticsearch/src/main/java/org/apache/james/mailbox/elasticsearch/MailboxMappingFactory.java
@@ -32,6 +32,8 @@ import static org.apache.james.backends.es.NodeMappingFactory.NESTED;
import static org.apache.james.backends.es.NodeMappingFactory.NORMALIZER;
import static org.apache.james.backends.es.NodeMappingFactory.PROPERTIES;
import static org.apache.james.backends.es.NodeMappingFactory.RAW;
+import static org.apache.james.backends.es.NodeMappingFactory.REQUIRED;
+import static org.apache.james.backends.es.NodeMappingFactory.ROUTING;
import static org.apache.james.backends.es.NodeMappingFactory.SEARCH_ANALYZER;
import static org.apache.james.backends.es.NodeMappingFactory.SNOWBALL;
import static org.apache.james.backends.es.NodeMappingFactory.SPLIT_EMAIL;
@@ -87,6 +89,10 @@ public class MailboxMappingFactory {
.field("dynamic", "strict")
+ .startObject(ROUTING)
+ .field(REQUIRED, true)
+ .endObject()
+
.startObject(PROPERTIES)
.startObject(MESSAGE_ID)
diff --git a/mailbox/plugin/quota-search-elasticsearch/src/main/java/org/apache/james/quota/search/elasticsearch/QuotaRatioMappingFactory.java b/mailbox/plugin/quota-search-elasticsearch/src/main/java/org/apache/james/quota/search/elasticsearch/QuotaRatioMappingFactory.java
index 41883f7..fc6ad52 100644
--- a/mailbox/plugin/quota-search-elasticsearch/src/main/java/org/apache/james/quota/search/elasticsearch/QuotaRatioMappingFactory.java
+++ b/mailbox/plugin/quota-search-elasticsearch/src/main/java/org/apache/james/quota/search/elasticsearch/QuotaRatioMappingFactory.java
@@ -22,6 +22,8 @@ package org.apache.james.quota.search.elasticsearch;
import static org.apache.james.backends.es.NodeMappingFactory.DOUBLE;
import static org.apache.james.backends.es.NodeMappingFactory.KEYWORD;
import static org.apache.james.backends.es.NodeMappingFactory.PROPERTIES;
+import static org.apache.james.backends.es.NodeMappingFactory.REQUIRED;
+import static org.apache.james.backends.es.NodeMappingFactory.ROUTING;
import static org.apache.james.backends.es.NodeMappingFactory.TYPE;
import static org.apache.james.quota.search.elasticsearch.json.JsonMessageConstants.DOMAIN;
import static org.apache.james.quota.search.elasticsearch.json.JsonMessageConstants.QUOTA_RATIO;
@@ -38,6 +40,10 @@ class QuotaRatioMappingFactory {
try {
return jsonBuilder()
.startObject()
+ .startObject(ROUTING)
+ .field(REQUIRED, true)
+ .endObject()
+
.startObject(PROPERTIES)
.startObject(USER)
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org