Oleg Anastasyev created CASSANDRA-6077:
------------------------------------------

             Summary: SSTableMetadata.min(max)ColumnNames keep whole 
SlabAllocatior region referenced; wasting memory
                 Key: CASSANDRA-6077
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6077
             Project: Cassandra
          Issue Type: Bug
            Reporter: Oleg Anastasyev


.. which could be a problem when there is a lot of sstables, when using LCS for 
example.

SSTableWriter calls SSTableMetadata.Collector.updateMin(Max)ColumnNames passing 
List of ByteByffers which reference a small byte array in slab region.
ColumnNameHelper.mergeMin(Max) just returns a reference of column name back to 
SSTableMetadata. So the latter keeps whole slab region referenced, preventing 
it from being GCed. 

Fixed it by making copies of column name bytebuffer, if its size more than 
column name itself.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to