Skip to content

Fast refresh indices to use search shards#116658

Merged
kingherc merged 8 commits intoelastic:mainfrom
kingherc:non-issue/ES-9573-adapt-fast-refresh
Nov 19, 2024
Merged

Fast refresh indices to use search shards#116658
kingherc merged 8 commits intoelastic:mainfrom
kingherc:non-issue/ES-9573-adapt-fast-refresh

Conversation

@kingherc
Copy link
Contributor

@kingherc kingherc commented Nov 12, 2024

The changes of PR #113478 were reverted because it induced ES-8275. Now that the ticket is done, this PR re-introduces the reverted changes.

Fast refresh indices should now behave like non fast refresh indices in how they execute (m)gets and searches. I.e., they should use the search shards.

For BWC, we define a new transport version. We expect search shards to be upgraded first, before promotable shards. Until the cluster is fully upgraded, the promotable shards (whether upgraded or not) will still receive and execute gets/searches locally.

Relates ES-9573

The changes of PR elastic#115019 were reverted because it induced ES-8275. Now
that the ticket is done, this PR re-introduces the reverted changes.

Fast refresh indices should now behave like non fast refresh indices in
how they execute (m)gets and searches. I.e., they should use the search
shards.

For BWC, we define a new transport version. We expect search shards to
be upgraded first, before promotable shards. Until the cluster is fully
upgraded, the promotable shards (whether upgraded or not) will still
receive and execute gets/searches locally.

Relates ES-9573
@kingherc kingherc added >non-issue :Distributed/Engine Anything around managing Lucene and the Translog in an open shard. v9.0.0 Team:Distributed Indexing (obsolete) Meta label for Distributed Indexing team. Obsolete. Please do not use. labels Nov 12, 2024
@kingherc kingherc self-assigned this Nov 12, 2024
@elasticsearchmachine elasticsearchmachine added the serverless-linked Added by automation, don't add manually label Nov 12, 2024
@kingherc kingherc marked this pull request as ready for review November 12, 2024 13:14
@elasticsearchmachine
Copy link
Collaborator

Pinging @elastic/es-distributed-indexing (Team:Distributed Indexing)

Copy link
Contributor

@henningandersen henningandersen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Besides the new transport version is this then a clean reintroduction of the original change or did you have to adapt it?

Copy link
Contributor Author

@kingherc kingherc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Besides the new transport version is this then a clean reintroduction of the original change or did you have to adapt it?

@henningandersen clean re-introduction. Only the part around BitsetFilterCache.java is different than the original PR, because we did not revert the changes in that one (meaning, we left it fixed rather than reverting it to the wrong older code). So now it's a more straightforward change to adapt fast refresh there.

Copy link
Contributor

@henningandersen henningandersen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

@kingherc kingherc merged commit 673b24f into elastic:main Nov 19, 2024
kingherc added a commit to kingherc/elasticsearch that referenced this pull request Nov 20, 2024
Backport of PR elastic#116658.

Changes of this PR are ineffective for stateful, and backport is not
used in serverless. This is mostly to adopt the new transport version
in stateful to keep them consecutive.

Relates ES-9573
elasticsearchmachine pushed a commit that referenced this pull request Nov 20, 2024
Backport of PR #116658.

Changes of this PR are ineffective for stateful, and backport is not
used in serverless. This is mostly to adopt the new transport version
in stateful to keep them consecutive.

Relates ES-9573
rjernst pushed a commit to rjernst/elasticsearch that referenced this pull request Nov 20, 2024
The changes of PR elastic#115019 were reverted because it induced ES-8275. Now
that the ticket is done, this PR re-introduces the reverted changes.

Fast refresh indices should now behave like non fast refresh indices in
how they execute (m)gets and searches. I.e., they should use the search
shards.

For BWC, we define a new transport version. We expect search shards to
be upgraded first, before promotable shards. Until the cluster is fully
upgraded, the promotable shards (whether upgraded or not) will still
receive and execute gets/searches locally.

Relates ES-9573
alexey-ivanov-es pushed a commit to alexey-ivanov-es/elasticsearch that referenced this pull request Nov 28, 2024
The changes of PR elastic#115019 were reverted because it induced ES-8275. Now
that the ticket is done, this PR re-introduces the reverted changes.

Fast refresh indices should now behave like non fast refresh indices in
how they execute (m)gets and searches. I.e., they should use the search
shards.

For BWC, we define a new transport version. We expect search shards to
be upgraded first, before promotable shards. Until the cluster is fully
upgraded, the promotable shards (whether upgraded or not) will still
receive and execute gets/searches locally.

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

Labels

:Distributed/Engine Anything around managing Lucene and the Translog in an open shard. >non-issue serverless-linked Added by automation, don't add manually Team:Distributed Indexing (obsolete) Meta label for Distributed Indexing team. Obsolete. Please do not use. v9.0.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants