mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
PLT-7862: Support batched live indexing. (#7640)
This commit is contained in:
@@ -316,7 +316,8 @@
|
|||||||
"PostIndexShards": 1,
|
"PostIndexShards": 1,
|
||||||
"AggregatePostsAfterDays": 365,
|
"AggregatePostsAfterDays": 365,
|
||||||
"PostsAggregatorJobStartTime": "03:00",
|
"PostsAggregatorJobStartTime": "03:00",
|
||||||
"IndexPrefix": ""
|
"IndexPrefix": "",
|
||||||
|
"LiveIndexingBatchSize": 1
|
||||||
},
|
},
|
||||||
"DataRetentionSettings": {
|
"DataRetentionSettings": {
|
||||||
"EnableMessageDeletion": false,
|
"EnableMessageDeletion": false,
|
||||||
|
|||||||
12
i18n/en.json
12
i18n/en.json
@@ -3691,6 +3691,14 @@
|
|||||||
"id": "ent.data_retention.generic.license.error",
|
"id": "ent.data_retention.generic.license.error",
|
||||||
"translation": "License does not support Data Retention."
|
"translation": "License does not support Data Retention."
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"id": "ent.elasticsearch.start.create_bulk_processor_failed.app_error",
|
||||||
|
"translation": "Failed to create Elasticsearch bulk processor"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "ent.elasticsearch.start.start_bulk_processor_failed.app_error",
|
||||||
|
"translation": "Failed to start Elasticsearch bulk processor"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"id": "ent.elasticsearch.aggregator_worker.create_index_job.error",
|
"id": "ent.elasticsearch.aggregator_worker.create_index_job.error",
|
||||||
"translation": "Elasticsearch aggregator worker failed to create the indexing job"
|
"translation": "Elasticsearch aggregator worker failed to create the indexing job"
|
||||||
@@ -4407,6 +4415,10 @@
|
|||||||
"id": "model.config.is_valid.elastic_search.username.app_error",
|
"id": "model.config.is_valid.elastic_search.username.app_error",
|
||||||
"translation": "Elastic Search Username setting must be provided when Elastic Search indexing is enabled."
|
"translation": "Elastic Search Username setting must be provided when Elastic Search indexing is enabled."
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"id": "model.config.is_valid.elastic_search.live_indexing_batch_size.app_error",
|
||||||
|
"translation": "Elasticsearch Live Indexing Batch Size must be at least 1"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"id": "model.config.is_valid.email_batching_buffer_size.app_error",
|
"id": "model.config.is_valid.email_batching_buffer_size.app_error",
|
||||||
"translation": "Invalid email batching buffer size for email settings. Must be zero or a positive number."
|
"translation": "Invalid email batching buffer size for email settings. Must be zero or a positive number."
|
||||||
|
|||||||
@@ -140,6 +140,7 @@ const (
|
|||||||
ELASTICSEARCH_SETTINGS_DEFAULT_AGGREGATE_POSTS_AFTER_DAYS = 365
|
ELASTICSEARCH_SETTINGS_DEFAULT_AGGREGATE_POSTS_AFTER_DAYS = 365
|
||||||
ELASTICSEARCH_SETTINGS_DEFAULT_POSTS_AGGREGATOR_JOB_START_TIME = "03:00"
|
ELASTICSEARCH_SETTINGS_DEFAULT_POSTS_AGGREGATOR_JOB_START_TIME = "03:00"
|
||||||
ELASTICSEARCH_SETTINGS_DEFAULT_INDEX_PREFIX = ""
|
ELASTICSEARCH_SETTINGS_DEFAULT_INDEX_PREFIX = ""
|
||||||
|
ELASTICSEARCH_SETTINGS_DEFAULT_LIVE_INDEXING_BATCH_SIZE = 1
|
||||||
|
|
||||||
DATA_RETENTION_SETTINGS_DEFAULT_MESSAGE_RETENTION_DAYS = 365
|
DATA_RETENTION_SETTINGS_DEFAULT_MESSAGE_RETENTION_DAYS = 365
|
||||||
DATA_RETENTION_SETTINGS_DEFAULT_FILE_RETENTION_DAYS = 365
|
DATA_RETENTION_SETTINGS_DEFAULT_FILE_RETENTION_DAYS = 365
|
||||||
@@ -487,6 +488,7 @@ type ElasticsearchSettings struct {
|
|||||||
AggregatePostsAfterDays *int
|
AggregatePostsAfterDays *int
|
||||||
PostsAggregatorJobStartTime *string
|
PostsAggregatorJobStartTime *string
|
||||||
IndexPrefix *string
|
IndexPrefix *string
|
||||||
|
LiveIndexingBatchSize *int
|
||||||
}
|
}
|
||||||
|
|
||||||
type DataRetentionSettings struct {
|
type DataRetentionSettings struct {
|
||||||
@@ -1584,6 +1586,11 @@ func (o *Config) SetDefaults() {
|
|||||||
*o.ElasticsearchSettings.IndexPrefix = ELASTICSEARCH_SETTINGS_DEFAULT_INDEX_PREFIX
|
*o.ElasticsearchSettings.IndexPrefix = ELASTICSEARCH_SETTINGS_DEFAULT_INDEX_PREFIX
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if o.ElasticsearchSettings.LiveIndexingBatchSize == nil {
|
||||||
|
o.ElasticsearchSettings.LiveIndexingBatchSize = new(int)
|
||||||
|
*o.ElasticsearchSettings.LiveIndexingBatchSize = ELASTICSEARCH_SETTINGS_DEFAULT_LIVE_INDEXING_BATCH_SIZE
|
||||||
|
}
|
||||||
|
|
||||||
if o.DataRetentionSettings.EnableMessageDeletion == nil {
|
if o.DataRetentionSettings.EnableMessageDeletion == nil {
|
||||||
o.DataRetentionSettings.EnableMessageDeletion = new(bool)
|
o.DataRetentionSettings.EnableMessageDeletion = new(bool)
|
||||||
*o.DataRetentionSettings.EnableMessageDeletion = false
|
*o.DataRetentionSettings.EnableMessageDeletion = false
|
||||||
@@ -1969,6 +1976,10 @@ func (ess *ElasticsearchSettings) isValid() *AppError {
|
|||||||
return NewAppError("Config.IsValid", "model.config.is_valid.elastic_search.posts_aggregator_job_start_time.app_error", nil, err.Error(), http.StatusBadRequest)
|
return NewAppError("Config.IsValid", "model.config.is_valid.elastic_search.posts_aggregator_job_start_time.app_error", nil, err.Error(), http.StatusBadRequest)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if *ess.LiveIndexingBatchSize < 1 {
|
||||||
|
return NewAppError("Config.IsValid", "model.config.is_valid.elastic_search.live_indexing_batch_size.app_error", nil, "", http.StatusBadRequest)
|
||||||
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user