Skip to content
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

Reduce memory usage in SimpleClusterStateIT#testLargeClusterStatePublishing #73773

Merged
merged 3 commits into from
Jul 1, 2021

Conversation

fcofdez
Copy link
Contributor

@fcofdez fcofdez commented Jun 4, 2021

In order to produce a large cluster state this test creates 1000s
of text fields mappings. The in memory representation for
these mappings can consume all the heap causing OOMs. This commit
changes the mapping type for a boolean that's more lightweight.

Closes #73050

…ishing

In order to produce a large cluster state this test was creating 1000s
of text fields for index mappings. The in memory representation for
these mappings can consume all the heap causing OOMs. This commit
changes the mapping type for a boolean that's more lightweight.

Closes elastic#73050
@fcofdez fcofdez added >test Issues or PRs that are addressing/adding tests :Distributed Coordination/Cluster Coordination Cluster formation and cluster state publication, including cluster membership and fault detection. v8.0.0 Team:Distributed (Obsolete) Meta label for distributed team (obsolete). Replaced by Distributed Indexing/Coordination. v7.14.0 labels Jun 4, 2021
@elasticmachine
Copy link
Collaborator

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

@fcofdez
Copy link
Contributor Author

fcofdez commented Jun 4, 2021

I captured a couple of heapdumps to measure the difference running the test with a cluster state size of ~256kb

Text fields

Screenshot 2021-06-04 at 16 27 26

Boolean fields

Screenshot 2021-06-04 at 16 29 52

@fcofdez fcofdez requested a review from DaveCTurner June 4, 2021 14:48
@fcofdez
Copy link
Contributor Author

fcofdez commented Jun 4, 2021

@elasticmachine update branch

Copy link
Member

@original-brownbear original-brownbear left a comment

Choose a reason for hiding this comment

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

LGTM

@fcofdez
Copy link
Contributor Author

fcofdez commented Jul 1, 2021

@elasticmachine update branch

@fcofdez
Copy link
Contributor Author

fcofdez commented Jul 1, 2021

Thanks Armin!

@fcofdez fcofdez merged commit d70b090 into elastic:master Jul 1, 2021
fcofdez added a commit to fcofdez/elasticsearch that referenced this pull request Jul 1, 2021
…ishing

In order to produce a large cluster state this test was creating 1000s
of text fields for index mappings. The in memory representation for
these mappings can consume all the heap causing OOMs. This commit
changes the mapping type for a boolean that's more lightweight.

Closes elastic#73050
Backport of elastic#73773
fcofdez added a commit that referenced this pull request Jul 1, 2021
…ishing (#74851)

In order to produce a large cluster state this test was creating 1000s
of text fields for index mappings. The in memory representation for
these mappings can consume all the heap causing OOMs. This commit
changes the mapping type for a boolean that's more lightweight.

Closes #73050
Backport of #73773
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Distributed Coordination/Cluster Coordination Cluster formation and cluster state publication, including cluster membership and fault detection. Team:Distributed (Obsolete) Meta label for distributed team (obsolete). Replaced by Distributed Indexing/Coordination. >test Issues or PRs that are addressing/adding tests v7.15.0 v8.0.0-alpha1
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[CI] SimpleClusterStateIT has long GCs in 7.13 and below
5 participants