This PR passes configuration context to Query, DeleteIndex and DeleteComposableTemplate runners to make them serverless-aware and change their behaviour if Rally targets serverless cluster.
Changes:
Query, DeleteIndex and DeleteComposableTemplate stop getting and setting cluster settings through set_destructive_requires_name() as cluster settings are not available to serverless users. In case of DeleteIndex this replaces the earlier crude workaround through contextlib.suppress introduced in https://github.com/elastic/rally/pull/1785.
The DeleteComposableTemplate runner starts to ignore delete_matching_indices template option. Wildcard deletes are not available to serverless users (!). DeleteIndexTemplate runner is not fixed as legacy templates are not available in serverless.
Request cache becomes turned on by default for serverless non-operator use in the Query runner (search, paginated-search, composite-agg and scroll-search operations). In non-serverless use we typically rely on "index.requests.cache.enable": false index setting for this purpose but it is not available to serverless users. As part of this change I've removed request params in /_search/scroll which is present in certain Query scenarios, as /_search/scroll does not accept request_cache parameter and it is the only parameter used.
This PR passes configuration context to
Query
,DeleteIndex
andDeleteComposableTemplate
runners to make them serverless-aware and change their behaviour if Rally targets serverless cluster.Changes:
Query
,DeleteIndex
andDeleteComposableTemplate
stop getting and setting cluster settings throughset_destructive_requires_name()
as cluster settings are not available to serverless users. In case ofDeleteIndex
this replaces the earlier crude workaround throughcontextlib.suppress
introduced in https://github.com/elastic/rally/pull/1785.DeleteComposableTemplate
runner starts to ignoredelete_matching_indices
template option. Wildcard deletes are not available to serverless users (!).DeleteIndexTemplate
runner is not fixed as legacy templates are not available in serverless.Query
runner (search
,paginated-search
,composite-agg
andscroll-search
operations). In non-serverless use we typically rely on"index.requests.cache.enable": false
index setting for this purpose but it is not available to serverless users. As part of this change I've removed request params in/_search/scroll
which is present in certainQuery
scenarios, as/_search/scroll
does not acceptrequest_cache
parameter and it is the only parameter used.