[ https://issues.apache.org/jira/browse/CASSANDRA-8559?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aleksey Yeschenko updated CASSANDRA-8559: ----------------------------------------- Fix Version/s: 2.1.4 > OOM caused by large tombstone warning. > -------------------------------------- > > Key: CASSANDRA-8559 > URL: https://issues.apache.org/jira/browse/CASSANDRA-8559 > Project: Cassandra > Issue Type: Bug > Components: Core > Environment: 2.0.11 / 2.1 > Reporter: Dominic Letz > Assignee: Aleksey Yeschenko > Labels: tombstone > Fix For: 2.1.4, 2.0.14 > > Attachments: 8559.txt, Selection_048.png, cassandra-2.0.11-8559.txt, > stacktrace.log > > > When running with high amount of tombstones the error message generation from > CASSANDRA-6117 can lead to out of memory situation with the default setting. > Attached a heapdump viewed in visualvm showing how this construct created two > 777mb strings to print the error message for a read query and then crashed > OOM. > {code} > if (respectTombstoneThresholds() && columnCounter.ignored() > > DatabaseDescriptor.getTombstoneWarnThreshold()) > { > StringBuilder sb = new StringBuilder(); > CellNameType type = container.metadata().comparator; > for (ColumnSlice sl : slices) > { > assert sl != null; > sb.append('['); > sb.append(type.getString(sl.start)); > sb.append('-'); > sb.append(type.getString(sl.finish)); > sb.append(']'); > } > logger.warn("Read {} live and {} tombstoned cells in {}.{} (see > tombstone_warn_threshold). {} columns was requested, slices={}, delInfo={}", > columnCounter.live(), columnCounter.ignored(), > container.metadata().ksName, container.metadata().cfName, count, sb, > container.deletionInfo()); > } > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)