[ 
https://issues.apache.org/jira/browse/CASSANDRA-8559?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14264538#comment-14264538
 ] 

Dominic Letz commented on CASSANDRA-8559:
-----------------------------------------

Both is true, there are huge gaps filled with many tombstones that do that to 
the query and we like the error message that warns us about that and helps us 
fixing that issue. But in this case the error message was the issue. 

> 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
>         Attachments: Selection_048.png
>
>
> 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)

Reply via email to