[ https://issues.apache.org/jira/browse/CASSANDRA-5521?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13647664#comment-13647664 ]
Jonathan Ellis edited comment on CASSANDRA-5521 at 5/2/13 4:28 PM: ------------------------------------------------------------------- bq. Changing the Partitioner is a bigger change It does get ugly since you'd need to reimplement Murmur3.hash3_x64_128 on Memory objects. (Not for the first time, I'm pissed that ByteBuffer isn't an interface...) Let's go ahead and move forward with v2 and optimize later if we need to. Nits: # rename hasSummaries to offHeapSummaries # InputStream.read has an overload that takes a length parameter, you don't need to realloc the buffer # The comment doesn't match the code here. Also, getIndex should be private. {code} . // multiply by 4 and add the block start return bytes.getInt(index << 2); {code} # We can easily inline DK.compareTo instead of actually creating a DK object (i.e., call partitioner.getToken instead, then compare the tokens and keys without the DK wrapper) The rest LGTM. was (Author: jbellis): bq. Changing the Partitioner is a bigger change It does get ugly since you'd need to reimplement Murmur3.hash3_x64_128 on Memory objects. (Not for the first time, I'm pissed that ByteBuffer isn't an interface...) Let's go ahead and move forward with v2 and optimize later if we need to. Nits: # rename hasSummaries to offHeapSummaries # InputStream.read has an overload that takes a length parameter, you don't need to realloc the buffer # The comment doesn't match the code here. Also, getIndex should be private. {code} . // multiply by 4 and add the block start return bytes.getInt(index << 2); {code} The rest LGTM. > move IndexSummary off heap > -------------------------- > > Key: CASSANDRA-5521 > URL: https://issues.apache.org/jira/browse/CASSANDRA-5521 > Project: Cassandra > Issue Type: Bug > Components: Core > Reporter: Jonathan Ellis > Assignee: Vijay > Fix For: 2.0 > > > IndexSummary can still use a lot of heap for narrow-row sstables. (It can > also contribute to memory fragmentation because of the large arrays it > creates.) -- 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