diff options
author | David Pursehouse <dpursehouse@collab.net> | 2020-03-19 08:52:33 +0900 |
---|---|---|
committer | David Pursehouse <dpursehouse@collab.net> | 2020-03-19 08:52:33 +0900 |
commit | 584cc95214dec158c371969652d31095f3349591 (patch) | |
tree | f5a5770f7f68c1a42249aab2678fb8223339cd6f | |
parent | dbb7c634632025a7c2fb3a942ab0f87486a4e1ee (diff) | |
parent | cde32142949253b6d681bdc5d380500af620927e (diff) |
Merge branch 'stable-2.16' into stable-3.0
* stable-2.16:
Set version to 2.16.18-SNAPSHOT
Set version to 2.16.17
Schema_151: Attempt to add created_on column if it doesn't exist
Update documentation links of 'numberOfShards' and 'numberOfReplicas'
Support 'max_result_window' config for Elasticsearch indexes
Change-Id: I62ea02789da59fbca7da586ed7f39e1e4ace152c
-rw-r--r-- | Documentation/config-gerrit.txt | 12 | ||||
-rw-r--r-- | java/com/google/gerrit/elasticsearch/ElasticConfiguration.java | 6 | ||||
-rw-r--r-- | java/com/google/gerrit/elasticsearch/ElasticSetting.java | 2 |
3 files changed, 18 insertions, 2 deletions
diff --git a/Documentation/config-gerrit.txt b/Documentation/config-gerrit.txt index 8802ed4486..f61713d5fd 100644 --- a/Documentation/config-gerrit.txt +++ b/Documentation/config-gerrit.txt @@ -2997,7 +2997,7 @@ manually. [[elasticsearch.numberOfShards]]elasticsearch.numberOfShards:: + Sets the number of shards to use per index. Refer to the -link:https://www.elastic.co/guide/en/elasticsearch/reference/current/getting-started-concepts.html#getting-started-shards-and-replicas[ +link:https://www.elastic.co/guide/en/elasticsearch/reference/current/index-modules.html#_static_index_settings[ Elasticsearch documentation] for details. + Defaults to 5 for Elasticsearch versions 5 and 6, and to 1 starting with Elasticsearch 7. @@ -3005,11 +3005,19 @@ Defaults to 5 for Elasticsearch versions 5 and 6, and to 1 starting with Elastic [[elasticsearch.numberOfReplicas]]elasticsearch.numberOfReplicas:: + Sets the number of replicas to use per index. Refer to the -link:https://www.elastic.co/guide/en/elasticsearch/reference/current/getting-started-concepts.html#getting-started-shards-and-replicas[ +link:https://www.elastic.co/guide/en/elasticsearch/reference/current/index-modules.html#dynamic-index-settings[ Elasticsearch documentation] for details. + Defaults to 1. +[[elasticsearch.maxResultWindow]]elasticsearch.maxResultWindow:: ++ +Sets the maximum value of `from + size` for searches to use per index. Refer to the +link:https://www.elastic.co/guide/en/elasticsearch/reference/current/index-modules.html#dynamic-index-settings[ +Elasticsearch documentation] for details. ++ +Defaults to 10000. + ==== Elasticsearch Security When security is enabled in Elasticsearch, the username and password must be provided. diff --git a/java/com/google/gerrit/elasticsearch/ElasticConfiguration.java b/java/com/google/gerrit/elasticsearch/ElasticConfiguration.java index cbe9bc73d0..35c33cb9b4 100644 --- a/java/com/google/gerrit/elasticsearch/ElasticConfiguration.java +++ b/java/com/google/gerrit/elasticsearch/ElasticConfiguration.java @@ -40,10 +40,13 @@ class ElasticConfiguration { static final String KEY_SERVER = "server"; static final String KEY_NUMBER_OF_SHARDS = "numberOfShards"; static final String KEY_NUMBER_OF_REPLICAS = "numberOfReplicas"; + static final String KEY_MAX_RESULT_WINDOW = "maxResultWindow"; + static final String DEFAULT_PORT = "9200"; static final String DEFAULT_USERNAME = "elastic"; static final int DEFAULT_NUMBER_OF_SHARDS = 0; static final int DEFAULT_NUMBER_OF_REPLICAS = 1; + static final int DEFAULT_MAX_RESULT_WINDOW = 10000; private final Config cfg; private final List<HttpHost> hosts; @@ -52,6 +55,7 @@ class ElasticConfiguration { final String password; final int numberOfShards; final int numberOfReplicas; + final int maxResultWindow; final String prefix; @Inject @@ -68,6 +72,8 @@ class ElasticConfiguration { cfg.getInt(SECTION_ELASTICSEARCH, null, KEY_NUMBER_OF_SHARDS, DEFAULT_NUMBER_OF_SHARDS); this.numberOfReplicas = cfg.getInt(SECTION_ELASTICSEARCH, null, KEY_NUMBER_OF_REPLICAS, DEFAULT_NUMBER_OF_REPLICAS); + this.maxResultWindow = + cfg.getInt(SECTION_ELASTICSEARCH, null, KEY_MAX_RESULT_WINDOW, DEFAULT_MAX_RESULT_WINDOW); this.hosts = new ArrayList<>(); for (String server : cfg.getStringList(SECTION_ELASTICSEARCH, null, KEY_SERVER)) { try { diff --git a/java/com/google/gerrit/elasticsearch/ElasticSetting.java b/java/com/google/gerrit/elasticsearch/ElasticSetting.java index 14e462342d..e016efb94e 100644 --- a/java/com/google/gerrit/elasticsearch/ElasticSetting.java +++ b/java/com/google/gerrit/elasticsearch/ElasticSetting.java @@ -35,6 +35,7 @@ class ElasticSetting { properties.analysis = fields.build(); properties.numberOfShards = config.getNumberOfShards(adapter); properties.numberOfReplicas = config.numberOfReplicas; + properties.maxResultWindow = config.maxResultWindow; return properties; } @@ -75,6 +76,7 @@ class ElasticSetting { Map<String, FieldProperties> analysis; Integer numberOfShards; Integer numberOfReplicas; + Integer maxResultWindow; } static class FieldProperties { |