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

Recycle pages used by outgoing publications #77406

Conversation

DaveCTurner
Copy link
Contributor

@DaveCTurner DaveCTurner commented Sep 8, 2021

Today PublicationTransportHandler.PublicationContext allocates a bunch
of memory for serialized cluster states and diffs, but it uses a plain
BytesStreamOutput which means that the backing pages are allocated by
the BigArrays#NON_RECYCLING_INSTANCE. With this commit we pass in a
proper BigArrays so that the pages being used can be recycled.

Backport of #77407

Today `PublicationTransportHandler.PublicationContext` allocates a bunch
of memory for serialized cluster states and diffs, but it uses a plain
`BytesStreamOutput` which means that the backing pages are allocated by
the `BigArrays#NON_RECYCLING_INSTANCE`. With this commit we pass in a
proper `BigArrays` so that the pages being used can be recycled.
@DaveCTurner DaveCTurner added >enhancement :Distributed Coordination/Cluster Coordination Cluster formation and cluster state publication, including cluster membership and fault detection. backport v7.16.0 labels Sep 8, 2021
@elasticmachine elasticmachine added the Team:Distributed (Obsolete) Meta label for distributed team (obsolete). Replaced by Distributed Indexing/Coordination. label Sep 8, 2021
@elasticmachine
Copy link
Collaborator

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

@DaveCTurner DaveCTurner changed the title Recycle pages used by outgoing publications (#77317) Recycle pages used by outgoing publications Sep 8, 2021
@DaveCTurner DaveCTurner added the auto-merge-without-approval Automatically merge pull request when CI checks pass (NB doesn't wait for reviews!) label Sep 13, 2021
@elasticsearchmachine elasticsearchmachine merged commit 6ad6a0d into elastic:7.x Sep 13, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
auto-merge-without-approval Automatically merge pull request when CI checks pass (NB doesn't wait for reviews!) backport :Distributed Coordination/Cluster Coordination Cluster formation and cluster state publication, including cluster membership and fault detection. >enhancement Team:Distributed (Obsolete) Meta label for distributed team (obsolete). Replaced by Distributed Indexing/Coordination. v7.16.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants