What happens to >5GB segments?


I'm wondering what happens to segments that are larger than 5gb (index.merge.policy.max_merged_segment ) and the index has more than 33% deleted documents (index.merge.policy.deletes_pct_allowed) and it's no possible to reduce this value by merging smaller segments.

While MergePolicyConfig.java says:

index.merge.policy.max_merged_segment: Maximum sized segment to produce during normal merging (not explicit force merge). This setting is approximate: the estimate of the merged segment size is made by summing sizes of to-be-merged segments (compensating for percent deleted docs). Default is 5g.

To my understanding this means that they won't be merged until I force_merge them. On the other hand, the website says:

Force merge can cause very large (>5GB) segments to be produced, and if you continue to write to such an index then the automatic merge policy will never consider these segments for future merges until they mostly consist of deleted documents.

Which means that they will eventually be merged. What is mostly? >50%? What's consider? Merging? Copying and purging deleted documents?

Best regards,

PS: Quotes taken from version 7.10 documentation and source code.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.