This MR uses newly added --timeout option to prevent
gitlab-elasticsearch-indexer processes from running longer than the lock
timeout in Gitlab::Elastic::Indexer.
Changelog: fixed
EE: true
This also passes the setting through to the
`gitlab-elasticsearch-indexer` under the Gitaly config since this
setting is used in the Gitaly RPC call to avoid fetching too large
files.
The corresponding change for the gitlab-elasticsearch-indexer is
https://gitlab.com/gitlab-org/gitlab-elasticsearch-indexer/-/merge_requests/84
These variables strongly affect the amount of load that indexing
operations place on the Elasticsearch server. They are useful values
to be able to twiddle in both performance and availability contexts.
At present, these only affect `gitlab-elasticsearch-indexer` behaviour,
but we can roll it out to the sidekiq context over time.
This verifies the changed indexer behaviour from
https://gitlab.com/gitlab-org/gitlab-elasticsearch-indexer/merge_requests/44
We're also renaming the blob-related code to use `path` rather than
`filename`, to be consistent with the `Path` field in the ES index,
and the intention of this code (which deals with full paths, rather
than just filenames).
This also removes the `Elasticsearch::Git::LiteBlob` class, which isn't
used anymore and a leftover from the Ruby indexer which was removed in
https://gitlab.com/gitlab-org/gitlab/merge_requests/15641
The golang indexer is supplanting the Ruby one in GitLab 12.1, so it's
important that we gain confidence in it by using it in the tests now.
This should also help to expose problems and catch regressions earlier.