diff options
author | Dylan William Hardison <dylan@hardison.net> | 2017-07-20 22:36:56 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-07-20 22:36:56 +0200 |
commit | da9c617eb5d8345409386b85b5d8c167fc0c55d7 (patch) | |
tree | 0938a7253553df05d30df952d6fc2b6e1393743b /Bugzilla/Elastic/Role/Object.pm | |
parent | 608ec172071f5adfe8eba9c83d42668520a2baea (diff) | |
download | bugzilla-da9c617eb5d8345409386b85b5d8c167fc0c55d7.tar.gz bugzilla-da9c617eb5d8345409386b85b5d8c167fc0c55d7.tar.xz |
Bug 1381869 - Use separate elasticsearch index for Bugzilla::User
This patch removes the concept of a single, bugzilla-wide index in favor of a
per-class index. bugs and comments continue to use
Bugzilla->params->{elasticsearch_index} but users use
Bugzilla->params->{elasticsearch_index} . "_user".
It is assured via the ChildObject trait (role) that comments will share the
index with bugs, and we have kept the index for bugs/comments the same to avoid
the multi-hour reindexing of production. Re-indexing users takes only five
minutes.
Subsequent work on this will allow use to version the index names and use
aliases, but I wanted to keep this patch small.
This patch also corrects some mistakes
1. $indexer->put_mapping() should not have been a public method.
2. Time::HiRes should be imported at the top of the file, not in a sub.
Diffstat (limited to 'Bugzilla/Elastic/Role/Object.pm')
-rw-r--r-- | Bugzilla/Elastic/Role/Object.pm | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/Bugzilla/Elastic/Role/Object.pm b/Bugzilla/Elastic/Role/Object.pm index ad5ab002b..c51948ee9 100644 --- a/Bugzilla/Elastic/Role/Object.pm +++ b/Bugzilla/Elastic/Role/Object.pm @@ -9,7 +9,7 @@ package Bugzilla::Elastic::Role::Object; use 5.10.1; use Role::Tiny; -requires qw(ES_TYPE ES_PROPERTIES es_document); +requires qw(ES_TYPE ES_INDEX ES_SETTINGS ES_PROPERTIES es_document); requires qw(ID_FIELD DB_TABLE); sub ES_OBJECTS_AT_ONCE { 100 } @@ -45,4 +45,6 @@ around 'es_document' => sub { return $doc; }; + + 1; |