Skip to content

Document how to use the G1 garbage collector #41358

Closed
@inqueue

Description

@inqueue

The Elasticsearch 6.5.0 release blog mentions support for JDK 11 and G1GC. The product support matrix shows support for JDK 11 for Elasticsearch versions 6.5.x-7.0.x. This is all great news.

What is missing is official documentation on how to use the G1 collector and where to configure it. Specifically, G1 is only supported when using JDK 11 or higher (JDK 12 is supported as of 6.7.x) in versions of Elasticsearch that support those JDKs. There have been reports of users configuring G1 under JDK 8 which is not a supported configuration. E.g.:

[2019-04-16T21:07:52,944][INFO ][o.e.n.Node] [node.name] version[6.5.4], pid[6203], 
build[default/rpm/d2ef93d/2018-12-17T21:17:40.758843Z], OS[Linux/3.10.0-
957.1.3.el7.x86_64/amd64], JVM[Oracle Corporation/OpenJDK 64-Bit Server VM/1.8.0_191/25.191-b12]

[2019-04-16T21:07:52,944][INFO ][o.e.n.Node] [node.name] JVM arguments [-Xms30g, -
Xmx30g, -XX:+UseG1GC, -XX:+AlwaysPreTouch, -Djava.awt.headless=true, -
Dfile.encoding=UTF-8,

Documenting when to use G1 would be a big bonus. For example, "Try G1 when the use case is ... or when heap utilization performance charts look like ..."

@jpcarey

Metadata

Metadata

Assignees

No one assigned

    Labels

    :Core/Infra/CoreCore issues without another label>docsGeneral docs changesTeam:Core/InfraMeta label for core/infra teamTeam:DocsMeta label for docs team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions