Skip to content

Honour max segment size when setting only_expunge_deletes on force merge #77478

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Sep 14, 2021

Conversation

jimczi
Copy link
Contributor

@jimczi jimczi commented Sep 9, 2021

This commit changes the es merge policy to apply the maximum segment size
on force merges that only expunge deletes (forceMergeDeletes).
This option is useful for read-write use cases that wants to reclaim deleted docs
more aggressively than the index.merge.policy.deletes_pct_allowed.

For the backport in 7.x my plan is to apply this new behavior only if max_num_segments is not set in the request ( #44761 to see why it's not an issue in ES 8x).

Closes #61764
Relates #77270

This commit changes the es merge policy to apply the maximum segment size
on force merges that only expunge deletes (forceMergeDeletes).
This option is useful for read-write use cases that wants to reclaim deleted docs
more aggressively than the `index.merge.policy.deletes_pct_allowed`.

Relates elastic#77270
@jimczi jimczi added >enhancement :Distributed Indexing/Engine Anything around managing Lucene and the Translog in an open shard. v8.0.0 v7.16.0 labels Sep 9, 2021
@elasticmachine elasticmachine added the Team:Distributed (Obsolete) Meta label for distributed team (obsolete). Replaced by Distributed Indexing/Coordination. label Sep 9, 2021
@elasticmachine
Copy link
Collaborator

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

@jimczi jimczi merged commit aacd761 into elastic:master Sep 14, 2021
@jimczi jimczi deleted the merge_policy_expunge_delete branch September 14, 2021 12:31
jimczi added a commit that referenced this pull request Sep 14, 2021
…rge (#77478) (#77692)

This commit changes the es merge policy to apply the maximum segment size
on force merges that only expunge deletes (forceMergeDeletes).
This option is useful for read-write use cases that wants to reclaim deleted docs
more aggressively than the `index.merge.policy.deletes_pct_allowed`.

Closes #61764
Relates #77270
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Distributed Indexing/Engine Anything around managing Lucene and the Translog in an open shard. >enhancement Team:Distributed (Obsolete) Meta label for distributed team (obsolete). Replaced by Distributed Indexing/Coordination. v7.16.0 v8.0.0-beta1
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Force merge should optionally honour index.merge.policy.max_merged_segment
4 participants