JEP 291: Deprecate the Concurrent Mark Sweep (CMS) Garbage Collector (original) (raw)

Owner Jon Masamitsu
Type Feature
Scope JDK
Status Closed / Delivered
Release 9
Component hotspot / gc
Discussion hotspot dash gc dash dev at openjdk dot java dot net
Relates to JEP 363: Remove the Concurrent Mark Sweep (CMS) Garbage Collector
Reviewed by Mikael Vidstedt
Created 2015/11/11 23:08
Updated 2020/04/06 21:19
Issue 8142518

Summary

Deprecate the Concurrent Mark Sweep (CMS) garbage collector, with the intent to stop supporting it in a future major release.

Goals

Accelerate the development of other garbage collectors in HotSpot.

Motivation

Dropping support for CMS and then removing the CMS code, or at least more thoroughly segregating it, will reduce the maintenance burden of the GC code base and accelerate new development. The G1 garbage collector is intended, in the long term, to be a replacement for most uses of CMS.

Description

Deprecate CMS so that a warning message is issued when it is requested on the command line, via the -XX:+UseConcMarkSweepGC option.

This JEP does not specify the major release in which support for CMS will be dropped. The decision of when to do that will be informed by the extent to which the G1 collector proves to be a suitable replacement for CMS. In the meantime, CMS users are encouraged to migrate to the G1 collector (-XX:+UseG1GC).

Testing

Verify that the intended deprecation message is emitted when the CMS collector is requested.

Risk and Assumptions