Skip to content

Conversation

carlosdelest
Copy link
Member

@carlosdelest carlosdelest commented Oct 21, 2024

This reverts #114793

match() and qstr() will be back behind snapshot builds on 8.x branches until using them after LIMIT has been addressed, either in the functions themselves or in Kibana side.

ivancea and others added 30 commits October 11, 2024 19:08
Fixes elastic#114613

Those tests were added with `::<type>` casts, which don't work in older versions.

As they aren't testing anything around those casts, I'm replacing them with `TO_<TYPE>()` functions to let them work everywhere.
…leet search api. (elastic#114526)

Without this change request fails with `ElasticsearchTimeoutException` if waiting for seqno times out. This results in a 500 status code.

With this change the `SearchTimeoutException` is used which results in a 504 status code. This is a more appropriate response code for time-outs.

Closes elastic#114395
Retry the async test when you get a 403 - that could be because security
has not yet booted. We should have permission to fetch everything.
Since Kibana only needs CCS metadata in ESQL responses from certain well-defined locations,
we are making CCS metadata opt-in. This feature is patterned after ESQL profiling, where
you specify "profile": true in the ESQL body and if you asked for it will be present in the response
always (it will be written to the .async-search index and you can’t turn it off in later async-search
requests against this particular query ID) and if you didn’t ask for it at the beginning it will never
be present (it will NOT be written to the .async-search index when it is persisted).

The new option is "include_ccs_metadata": true/false.
This speeds up grouping by bytes valued fields (keyword, text, ip, and
wildcard) when the input is an ordinal block:
```
    bytes_refs 22.213 ± 0.322 -> 19.848 ± 0.205 ns/op (*maybe* real, maybe noise. still good)
       ordinal didn't exist   ->  2.988 ± 0.011 ns/op
```
I see this as 20ns -> 3ns, an 85% speed up. We never hard the ordinals
branch before so I'm expecting the same performance there - about 20ns
per op.

This also speeds up grouping by a pair of byte valued fields:
```
two_bytes_refs 83.112 ± 42.348  -> 46.521 ± 0.386 ns/op
  two_ordinals 83.531 ± 23.473  ->  8.617 ± 0.105 ns/op
```
The speed up is much better when the fields are ordinals because hashing
bytes is comparatively slow.

I believe the ordinals case is quite common. I've run into it in quite a
few profiles.
Tests for partially filtered aggs. It uses the existing aggs tests and
adds junk rows that are filtered away. That way we don't have to add new
testing assertions to each class - we just can reuse the existing
assertions.
* Replace cloud-ess docker image with wolfi-ess
   We just replaced the existing implementation of cloud-ess with what was wolfi-ess which is a wolfi based ess image. 
   The cloud image itself will be removed in a future commit it was not used anywhere

* Switch to test cloud docker image instead of default docker in packaging pr tests. 
  This adds way more coverage than the default docker image which is also barely touched
* Initial InstrumenterTests

* Assert on instrumentation method arguments
…de` (elastic#114433)

* featur : introduce index.mapping.source.mode setting

Introduce a new `index.mapper.source.mode` setting which will be used
to override the mapping level `_source.mode`. For now the mapping
level setting will stay and be deprecated later with another PR.

The setting takes precedence always precedence. When not defined
the index mode is used and can be overridden by the _source.mode
mapping level definition.
…c#114564)

The callback is added to allow inserting additional behaviour such as
delay when handling closed connection.
We no longer need to manually reroute after registering node shutdown in test
since elastic#103251
Two PRs conflicted without github or CI noticing. The first added these
tests, and the second modified their behaviour. Both went green in CI
and both were merged within an hour of each other.

* PR that added the tests:
  * elastic#112938
  * merged 14:13CET
* PR that changed the behaviour of these tests:
  * elastic#114411
  * merged 14:48CET
szabosteve and others added 18 commits October 21, 2024 12:51
The most relevant ES changes that upgrading to Lucene 10 requires are:

- use the appropriate IOContext
- Scorer / ScorerSupplier breaking changes
- Regex automaton are no longer determinized by default
- minimize moved to test classes
- introduce Elasticsearch900Codec
- adjust slicing code according to the added support for intra-segment concurrency
- disable intra-segment concurrency in tests
- adjust accessor methods for many Lucene classes that became a record
- adapt to breaking changes in the analysis area

Co-authored-by: Christoph Büscher <[email protected]>
Co-authored-by: Mayya Sharipova <[email protected]>
Co-authored-by: ChrisHegarty <[email protected]>
Co-authored-by: Brian Seeders <[email protected]>
Co-authored-by: Armin Braun <[email protected]>
Co-authored-by: Panagiotis Bailis <[email protected]>
Co-authored-by: Benjamin Trent <[email protected]>
…g.elasticsearch.backwards.MixedClusterClientYamlTestSuiteIT elastic#115213
…everseTests testEvaluateInManyThreads {TestCase=<long unicode TEXT>} elastic#115227
…everseTests testEvaluateInManyThreads {TestCase=<long unicode KEYWORD>} elastic#115228
* Add initial support for semantic_text field type

* Update docs/changelog/113920.yaml

* More tests and fixes

* Use mock inference service

* Fix tests

* Spotless

* Fix mixed-cluster and multi-clusters tests

* sort

* Attempt another fix for bwc tests

* Spotless

* Fix merge

* Attempt another fix

* Don't load the inference-service-test plugin for mixed versions/clusters

* Add more tests, address review comments

* trivial

* revert

* post-merge fix block loader

* post-merge fix compile

* add mixed version testing

* whitespace

* fix MultiClusterSpecIT

* add more fields to mapping

* Revert  mixed version testing

* whitespace

---------

Co-authored-by: ChrisHegarty <[email protected]>
Co-authored-by: Elastic Machine <[email protected]>
…sage (elastic#115023)

The Inference usage API calls GET _inference/_all and because the default 
configs are persisted on read it causes the creation of the .inference index.
This action is undesirable and causes test failures by leaking the system index
out of the test clean up code.
)

* Change backwards test configuration to use trial license

* unmute
@carlosdelest carlosdelest added auto-backport Automatically create backport pull requests when merged v8.16.0 v8.17.0 Team:Search Relevance Meta label for the Search Relevance team in Elasticsearch :Search Relevance/Search Catch all for Search Relevance Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) and removed v9.0.0 labels Oct 21, 2024
@carlosdelest carlosdelest changed the base branch from main to 8.16 October 21, 2024 15:36
@carlosdelest
Copy link
Member Author

Closing as this PR used main as base

@carlosdelest
Copy link
Member Author

Closed in favour of #115253

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

auto-backport Automatically create backport pull requests when merged :Search Relevance/Search Catch all for Search Relevance Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) Team:Search Relevance Meta label for the Search Relevance team in Elasticsearch v8.16.0 v8.17.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.