[
https://issues.apache.org/jira/browse/CASSANDRA-17655?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Brad Schoening updated CASSANDRA-17655:
---------------------------------------
Description:
Several articles on Cassandra note that certain workloads, especially large
partitions, can cause humongous allocations in Java, which can be reduced, but
not always eliminated by increasing RegionSize. RegionSize max is 32MB.
Humongous allocations are an undesirable performance issue because new objects
get directly allocated in old space.
Below is a sample message seen in the gc.log
2022-05-23T18:46:58.743+0800: 3758624.170: [GC pause (G1 Humongous Allocation)
(young) (initial-mark) 3758624.171: [G1Ergonomics (CSet Construction) start
choosing CSet, _pending_cards: 56725, predicted base time: 39.83 ms, remaining
time: 160.17 ms, target pause time: 200.00 ms]
Instead of users tweaking RegionSize, a better solution would be for Cassandra
to limit the size of allocations, or consider moving humongous allocations off
heap.
References
[https://docs.oracle.com/en/java/javase/11/gctuning/garbage-first-g1-garbage-collector1.html#GUID-D74F3CC7-CC9F-45B5-B03D-510AEEAC2DAC]
[https://stevenlacerda.medium.com/identifying-and-fixing-humongous-allocations-in-cassandra-bf46444cec41]
was:
Several articles on Cassandra note that certain workloads, especially large
partitions, can cause humongous allocations in Java, which can be reduced, but
not always eliminated by increasing RegionSize. RegionSize max is 32MB.
Humongous allocations are an undesirable performance issue because new objects
get directly allocated in old space instead of
Below is a sample message seen in the gc.log
2022-05-23T18:46:58.743+0800: 3758624.170: [GC pause (G1 Humongous Allocation)
(young) (initial-mark) 3758624.171: [G1Ergonomics (CSet Construction) start
choosing CSet, _pending_cards: 56725, predicted base time: 39.83 ms, remaining
time: 160.17 ms, target pause time: 200.00 ms]
Instead of users tweaking RegionSize, a better solution would be for Cassandra
to limit the size of allocations, or consider moving humongous allocations off
heap.
References
https://docs.oracle.com/en/java/javase/11/gctuning/garbage-first-g1-garbage-collector1.html#GUID-D74F3CC7-CC9F-45B5-B03D-510AEEAC2DAC
https://stevenlacerda.medium.com/identifying-and-fixing-humongous-allocations-in-cassandra-bf46444cec41
> Prevent JVM Humongous allocations
> ---------------------------------
>
> Key: CASSANDRA-17655
> URL: https://issues.apache.org/jira/browse/CASSANDRA-17655
> Project: Cassandra
> Issue Type: Bug
> Reporter: Brad Schoening
> Priority: Normal
>
> Several articles on Cassandra note that certain workloads, especially large
> partitions, can cause humongous allocations in Java, which can be reduced,
> but not always eliminated by increasing RegionSize. RegionSize max is 32MB.
> Humongous allocations are an undesirable performance issue because new
> objects get directly allocated in old space.
> Below is a sample message seen in the gc.log
> 2022-05-23T18:46:58.743+0800: 3758624.170: [GC pause (G1 Humongous
> Allocation) (young) (initial-mark) 3758624.171: [G1Ergonomics (CSet
> Construction) start choosing CSet, _pending_cards: 56725, predicted base
> time: 39.83 ms, remaining time: 160.17 ms, target pause time: 200.00 ms]
> Instead of users tweaking RegionSize, a better solution would be for
> Cassandra to limit the size of allocations, or consider moving humongous
> allocations off heap.
>
> References
> [https://docs.oracle.com/en/java/javase/11/gctuning/garbage-first-g1-garbage-collector1.html#GUID-D74F3CC7-CC9F-45B5-B03D-510AEEAC2DAC]
> [https://stevenlacerda.medium.com/identifying-and-fixing-humongous-allocations-in-cassandra-bf46444cec41]
--
This message was sent by Atlassian Jira
(v8.20.7#820007)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]